/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    :root,
    :host {
      --shimmer-angle: 20deg;
    }
    *,
    :before,
    :after,
    ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-duration: initial;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
  }
}
@layer theme {
  :root,
  :host {
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-lg: 32rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --radius-xs: 0.125rem;
    --default-transition-duration: 0.15s;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: Arial, Helvetica, sans-serif;
    --default-mono-font-family:
      ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
  }
}
@layer base {
  *,
  :after,
  :before,
  ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  html,
  :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(
      --default-font-family,
      ui-sans-serif,
      system-ui,
      sans-serif,
      "Apple Color Emoji",
      "Segoe UI Emoji",
      "Segoe UI Symbol",
      "Noto Color Emoji"
    );
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b,
  strong {
    font-weight: bolder;
  }
  code,
  kbd,
  samp,
  pre {
    font-family: var(
      --default-mono-font-family,
      ui-monospace,
      SFMono-Regular,
      Menlo,
      Monaco,
      Consolas,
      "Liberation Mono",
      "Courier New",
      monospace
    );
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(
      --default-mono-font-variation-settings,
      normal
    );
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub,
  sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol,
  ul,
  menu {
    list-style: none;
  }
  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    vertical-align: middle;
    display: block;
  }
  img,
  video {
    max-width: 100%;
    height: auto;
  }
  button,
  input,
  select,
  optgroup,
  textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not ((-webkit-appearance: -apple-pay-button))) or
    (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }
    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button,
  input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }
  ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button {
    height: auto;
  }
  ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer components;
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-\[50\%\] {
    top: 50%;
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .left-\[50\%\] {
    left: 50%;
  }
  .isolate {
    isolation: isolate;
  }
  .z-50 {
    z-index: 50;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .container {
    width: 100%;
  }
  @media (width>=40rem) {
    .container {
      max-width: 40rem;
    }
  }
  @media (width>=48rem) {
    .container {
      max-width: 48rem;
    }
  }
  @media (width>=64rem) {
    .container {
      max-width: 64rem;
    }
  }
  @media (width>=80rem) {
    .container {
      max-width: 80rem;
    }
  }
  @media (width>=96rem) {
    .container {
      max-width: 96rem;
    }
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .-ml-1 {
    margin-left: calc(var(--spacing) * -1);
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-\[calc\(--spacing\(5\.5\)\)\] {
    height: calc(calc(var(--spacing) * 5.5));
  }
  .h-auto {
    height: auto;
  }
  .h-px {
    height: 1px;
  }
  .max-h-96 {
    max-height: calc(var(--spacing) * 96);
  }
  .max-h-\[min\(calc\(--spacing\(96\)---spacing\(9\)\)\,calc\(var\(--available-height\)---spacing\(9\)\)\)\] {
    max-height: min(
      calc(calc(var(--spacing) * 96) - calc(var(--spacing) * 9)),
      calc(var(--available-height) - calc(var(--spacing) * 9))
    );
  }
  .min-h-9 {
    min-height: calc(var(--spacing) * 9);
  }
  .min-h-16 {
    min-height: calc(var(--spacing) * 16);
  }
  .w-\(--anchor-width\) {
    width: var(--anchor-width);
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-\(--available-width\) {
    max-width: var(--available-width);
  }
  .max-w-\[calc\(100\%-2rem\)\] {
    max-width: calc(100% - 2rem);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-16 {
    min-width: calc(var(--spacing) * 16);
  }
  .min-w-\[calc\(var\(--anchor-width\)\+--spacing\(7\)\)\] {
    min-width: calc(var(--anchor-width) + calc(var(--spacing) * 7));
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .origin-\(--transform-origin\) {
    transform-origin: var(--transform-origin);
  }
  .translate-x-\[-50\%\] {
    --tw-translate-x: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[-50\%\] {
    --tw-translate-y: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-text {
    cursor: text;
  }
  .resize-none {
    resize: none;
  }
  .scroll-py-1 {
    scroll-padding-block: calc(var(--spacing) * 1);
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-\[calc\(var\(--radius\)-5px\)\] {
    border-radius: calc(var(--radius) - 5px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) - 2px);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: calc(var(--radius) - 4px);
  }
  .rounded-xs {
    border-radius: var(--radius-xs);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0;
  }
  .border-input {
    border-color: var(--input);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-black\/50 {
    background-color: #00000080;
  }
  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/50 {
      background-color: color-mix(
        in oklab,
        var(--color-black) 50%,
        transparent
      );
    }
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-destructive {
    background-color: var(--destructive);
  }
  .bg-muted {
    background-color: var(--muted);
  }
  .bg-popover {
    background-color: var(--popover);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-transparent {
    background-color: #0000;
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-8 {
    padding-right: calc(var(--spacing) * 8);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }
  .text-center {
    text-align: center;
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-popover-foreground {
    color: var(--popover-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .italic {
    font-style: italic;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .opacity-50 {
    opacity: 0.5;
  }
  .opacity-70 {
    opacity: 0.7;
  }
  .shadow-lg {
    --tw-shadow:
      0 10px 15px -3px var(--tw-shadow-color, #0000001a),
      0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow:
      0 4px 6px -1px var(--tw-shadow-color, #0000001a),
      0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-foreground\/10 {
    --tw-ring-color: var(--foreground);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .ring-foreground\/10 {
      --tw-ring-color: color-mix(in oklab, var(--foreground) 10%, transparent);
    }
  }
  .ring-offset-background {
    --tw-ring-offset-color: var(--background);
  }
  .outline-hidden {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .outline-hidden {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .transition {
    transition-property:
      color,
      background-color,
      border-color,
      outline-color,
      text-decoration-color,
      fill,
      stroke,
      --tw-gradient-from,
      --tw-gradient-via,
      --tw-gradient-to,
      opacity,
      box-shadow,
      transform,
      translate,
      scale,
      rotate,
      filter,
      -webkit-backdrop-filter,
      backdrop-filter,
      display,
      content-visibility,
      overlay,
      pointer-events;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[color\,box-shadow\] {
    transition-property: color, box-shadow;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-100 {
    --tw-duration: 0.1s;
    transition-duration: 0.1s;
  }
  .duration-200 {
    --tw-duration: 0.2s;
    transition-duration: 0.2s;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .group-has-data-\[slot\=combobox-clear\]\/input-group\:hidden:is(
    :where(.group\/input-group):has([data-slot="combobox-clear"]) *
  ) {
    display: none;
  }
  .group-has-\[\>input\]\/input-group\:pt-2\.5:is(
      :where(.group\/input-group):has(> input) *
    ) {
    padding-top: calc(var(--spacing) * 2.5);
  }
  .group-has-\[\>input\]\/input-group\:pb-2\.5:is(
      :where(.group\/input-group):has(> input) *
    ) {
    padding-bottom: calc(var(--spacing) * 2.5);
  }
  .group-data-empty\/combobox-content\:flex:is(
    :where(.group\/combobox-content)[data-empty] *
  ) {
    display: flex;
  }
  .group-data-\[disabled\=true\]\/input-group\:opacity-50:is(
    :where(.group\/input-group)[data-disabled="true"] *
  ) {
    opacity: 0.5;
  }
  .selection\:bg-primary ::selection {
    background-color: var(--primary);
  }
  .selection\:bg-primary::selection {
    background-color: var(--primary);
  }
  .selection\:text-primary-foreground ::selection {
    color: var(--primary-foreground);
  }
  .selection\:text-primary-foreground::selection {
    color: var(--primary-foreground);
  }
  .file\:inline-flex::file-selector-button {
    display: inline-flex;
  }
  .file\:h-7::file-selector-button {
    height: calc(var(--spacing) * 7);
  }
  .file\:border-0::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0;
  }
  .file\:bg-transparent::file-selector-button {
    background-color: #0000;
  }
  .file\:text-sm::file-selector-button {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .file\:font-medium::file-selector-button {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .file\:text-foreground::file-selector-button {
    color: var(--foreground);
  }
  .placeholder\:text-muted-foreground::placeholder {
    color: var(--muted-foreground);
  }
  .focus-within\:border-ring:focus-within {
    border-color: var(--ring);
  }
  .focus-within\:ring-\[3px\]:focus-within {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-within\:ring-ring\/50:focus-within {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .focus-within\:ring-ring\/50:focus-within {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  @media (hover: hover) {
    .hover\:bg-accent:hover {
      background-color: var(--accent);
    }
    .hover\:bg-destructive\/90:hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/90:hover {
        background-color: color-mix(
          in oklab,
          var(--destructive) 90%,
          transparent
        );
      }
    }
    .hover\:bg-primary\/90:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/90:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
    .hover\:bg-secondary\/80:hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-secondary\/80:hover {
        background-color: color-mix(
          in oklab,
          var(--secondary) 80%,
          transparent
        );
      }
    }
    .hover\:text-accent-foreground:hover {
      color: var(--accent-foreground);
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:opacity-100:hover {
      opacity: 1;
    }
  }
  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus\:ring-ring:focus {
    --tw-ring-color: var(--ring);
  }
  .focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
      var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .focus\:outline-hidden:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .focus\:outline-hidden:focus {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .focus-visible\:border-ring:focus-visible {
    border-color: var(--ring);
  }
  .focus-visible\:ring-0:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-\[3px\]:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-destructive\/20:focus-visible {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .focus-visible\:ring-destructive\/20:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .focus-visible\:ring-ring\/50:focus-visible {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .focus-visible\:ring-ring\/50:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:opacity-50:disabled {
    opacity: 0.5;
  }
  .has-disabled\:pointer-events-none:has(:disabled) {
    pointer-events: none;
  }
  .has-disabled\:cursor-not-allowed:has(:disabled) {
    cursor: not-allowed;
  }
  .has-disabled\:opacity-50:has(:disabled) {
    opacity: 0.5;
  }
  .has-aria-invalid\:border-destructive:has([aria-invalid="true"]) {
    border-color: var(--destructive);
  }
  .has-aria-invalid\:ring-\[3px\]:has([aria-invalid="true"]) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .has-aria-invalid\:ring-destructive\/20:has([aria-invalid="true"]) {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-aria-invalid\:ring-destructive\/20:has([aria-invalid="true"]) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .has-data-\[slot\=combobox-chip\]\:px-1\.5:has([data-slot="combobox-chip"]) {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .has-data-\[slot\=combobox-chip-remove\]\:pr-0:has(
    [data-slot="combobox-chip-remove"]
  ) {
    padding-right: calc(var(--spacing) * 0);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has(
    [data-slot="input-group-control"]:focus-visible
  ) {
    border-color: var(--ring);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has(
    [data-slot="input-group-control"]:focus-visible
  ) {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has(
    [data-slot="input-group-control"]:focus-visible
  ) {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has(
      [data-slot="input-group-control"]:focus-visible
    ) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has(
    [data-slot][aria-invalid="true"]
  ) {
    border-color: var(--destructive);
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(
    [data-slot][aria-invalid="true"]
  ) {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(
      [data-slot][aria-invalid="true"]
    ) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .has-\[\>\[data-align\=block-end\]\]\:h-auto:has(> [data-align="block-end"]) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-end\]\]\:flex-col:has(
    > [data-align="block-end"]
  ) {
    flex-direction: column;
  }
  .has-\[\>\[data-align\=block-start\]\]\:h-auto:has(
    > [data-align="block-start"]
  ) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-start\]\]\:flex-col:has(
    > [data-align="block-start"]
  ) {
    flex-direction: column;
  }
  .has-\[\>button\]\:mr-\[-0\.45rem\]:has(> button) {
    margin-right: -0.45rem;
  }
  .has-\[\>button\]\:ml-\[-0\.45rem\]:has(> button) {
    margin-left: -0.45rem;
  }
  .has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(> kbd) {
    margin-right: -0.35rem;
  }
  .has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(> kbd) {
    margin-left: -0.35rem;
  }
  .has-\[\>svg\]\:p-0:has(> svg) {
    padding: calc(var(--spacing) * 0);
  }
  .has-\[\>svg\]\:px-1\.5:has(> svg) {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .has-\[\>svg\]\:px-2:has(> svg) {
    padding-inline: calc(var(--spacing) * 2);
  }
  .has-\[\>svg\]\:px-2\.5:has(> svg) {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .has-\[\>svg\]\:px-3:has(> svg) {
    padding-inline: calc(var(--spacing) * 3);
  }
  .has-\[\>svg\]\:px-4:has(> svg) {
    padding-inline: calc(var(--spacing) * 4);
  }
  .has-\[\>textarea\]\:h-auto:has(> textarea) {
    height: auto;
  }
  .aria-invalid\:border-destructive[aria-invalid="true"] {
    border-color: var(--destructive);
  }
  .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .data-empty\:p-0[data-empty] {
    padding: calc(var(--spacing) * 0);
  }
  .data-highlighted\:bg-accent[data-highlighted] {
    background-color: var(--accent);
  }
  .data-highlighted\:text-accent-foreground[data-highlighted] {
    color: var(--accent-foreground);
  }
  .data-pressed\:bg-transparent[data-pressed] {
    background-color: #0000;
  }
  .data-\[chips\=true\]\:min-w-\(--anchor-width\)[data-chips="true"] {
    min-width: var(--anchor-width);
  }
  .data-\[disabled\]\:pointer-events-none[data-disabled] {
    pointer-events: none;
  }
  .data-\[disabled\]\:opacity-50[data-disabled] {
    opacity: 0.5;
  }
  .data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
    --tw-enter-translate-y: calc(2 * var(--spacing) * -1);
  }
  .data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
    --tw-enter-translate-x: calc(2 * var(--spacing));
  }
  .data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
    --tw-enter-translate-x: calc(2 * var(--spacing) * -1);
  }
  .data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
    --tw-enter-translate-y: calc(2 * var(--spacing));
  }
  :is(.\*\:data-\[slot\=input-group\]\:m-1 > *)[data-slot="input-group"] {
    margin: calc(var(--spacing) * 1);
  }
  :is(.\*\:data-\[slot\=input-group\]\:mb-0 > *)[data-slot="input-group"] {
    margin-bottom: calc(var(--spacing) * 0);
  }
  :is(.\*\:data-\[slot\=input-group\]\:h-8 > *)[data-slot="input-group"] {
    height: calc(var(--spacing) * 8);
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
  )[data-slot="input-group"] {
    border-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
    )[data-slot="input-group"] {
      border-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
  )[data-slot="input-group"] {
    background-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
    )[data-slot="input-group"] {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:shadow-none > *
  )[data-slot="input-group"] {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .data-\[state\=closed\]\:animate-out[data-state="closed"] {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
    --tw-exit-opacity: 0;
  }
  .data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
    --tw-exit-scale: 0.95;
  }
  .data-\[state\=open\]\:animate-in[data-state="open"] {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=open\]\:bg-accent[data-state="open"] {
    background-color: var(--accent);
  }
  .data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
    color: var(--muted-foreground);
  }
  .data-\[state\=open\]\:fade-in-0[data-state="open"] {
    --tw-enter-opacity: 0;
  }
  .data-\[state\=open\]\:zoom-in-95[data-state="open"] {
    --tw-enter-scale: 0.95;
  }
  @media (width>=40rem) {
    .sm\:max-w-lg {
      max-width: var(--container-lg);
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
    .sm\:text-left {
      text-align: left;
    }
  }
  @media (width>=48rem) {
    .md\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  @media (prefers-color-scheme: dark) {
    .dark\:border-input {
      border-color: var(--input);
    }
    .dark\:bg-destructive\/60 {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:bg-destructive\/60 {
        background-color: color-mix(
          in oklab,
          var(--destructive) 60%,
          transparent
        );
      }
    }
    .dark\:bg-input\/30 {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:bg-input\/30 {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
    .dark\:bg-transparent {
      background-color: #0000;
    }
    @media (hover: hover) {
      .dark\:hover\:bg-accent\/50:hover {
        background-color: var(--accent);
      }
      @supports (color: color-mix(in lab, red, red)) {
        .dark\:hover\:bg-accent\/50:hover {
          background-color: color-mix(in oklab, var(--accent) 50%, transparent);
        }
      }
      .dark\:hover\:bg-input\/50:hover {
        background-color: var(--input);
      }
      @supports (color: color-mix(in lab, red, red)) {
        .dark\:hover\:bg-input\/50:hover {
          background-color: color-mix(in oklab, var(--input) 50%, transparent);
        }
      }
    }
    .dark\:focus-visible\:ring-destructive\/40:focus-visible {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:focus-visible\:ring-destructive\/40:focus-visible {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:has-aria-invalid\:border-destructive\/50:has([aria-invalid="true"]) {
      border-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-aria-invalid\:border-destructive\/50:has(
        [aria-invalid="true"]
      ) {
        border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
      }
    }
    .dark\:has-aria-invalid\:ring-destructive\/40:has([aria-invalid="true"]) {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-aria-invalid\:ring-destructive\/40:has([aria-invalid="true"]) {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has(
      [data-slot][aria-invalid="true"]
    ) {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has(
        [data-slot][aria-invalid="true"]
      ) {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:aria-invalid\:ring-destructive\/40[aria-invalid="true"] {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:aria-invalid\:ring-destructive\/40[aria-invalid="true"] {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
  }
  @media (pointer: coarse) {
    .pointer-coarse\:size-5 {
      width: calc(var(--spacing) * 5);
      height: calc(var(--spacing) * 5);
    }
    .pointer-coarse\:px-3 {
      padding-inline: calc(var(--spacing) * 3);
    }
    .pointer-coarse\:py-2 {
      padding-block: calc(var(--spacing) * 2);
    }
    .pointer-coarse\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .data-open\:animate-in:where([data-state="open"]),
  .data-open\:animate-in:where([data-open]:not([data-open="false"])) {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-open\:fade-in-0:where([data-state="open"]),
  .data-open\:fade-in-0:where([data-open]:not([data-open="false"])) {
    --tw-enter-opacity: 0;
  }
  .data-open\:zoom-in-95:where([data-state="open"]),
  .data-open\:zoom-in-95:where([data-open]:not([data-open="false"])) {
    --tw-enter-scale: 0.95;
  }
  .data-closed\:animate-out:where([data-state="closed"]),
  .data-closed\:animate-out:where([data-closed]:not([data-closed="false"])) {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-closed\:fade-out-0:where([data-state="closed"]),
  .data-closed\:fade-out-0:where([data-closed]:not([data-closed="false"])) {
    --tw-exit-opacity: 0;
  }
  .data-closed\:zoom-out-95:where([data-state="closed"]),
  .data-closed\:zoom-out-95:where([data-closed]:not([data-closed="false"])) {
    --tw-exit-scale: 0.95;
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\.border-b\]\:pb-3.border-b {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .\[\.border-t\]\:pt-3.border-t {
    padding-top: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(
      > [data-align="block-end"]
    )
    > input {
    padding-top: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(
      > [data-align="block-start"]
    )
    > input {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(
      > [data-align="inline-end"]
    )
    > input {
    padding-right: calc(var(--spacing) * 2);
  }
  .has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(
      > [data-align="inline-start"]
    )
    > input {
    padding-left: calc(var(--spacing) * 2);
  }
  .\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\] > kbd {
    border-radius: calc(var(--radius) - 5px);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5
    > svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4
    > svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
}
@property --tw-animation-delay {
  syntax: "*";
  inherits: false;
  initial-value: 0s;
}
@property --tw-animation-direction {
  syntax: "*";
  inherits: false;
  initial-value: normal;
}
@property --tw-animation-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-animation-fill-mode {
  syntax: "*";
  inherits: false;
  initial-value: none;
}
@property --tw-animation-iteration-count {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-t {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-b {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-s {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-e {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-mask {
  syntax: "*";
  inherits: false;
}
@property --shimmer-angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: 20deg;
}
@property --shimmer-image {
  syntax: "*";
  inherits: false;
}
@property --shimmer-text-fill {
  syntax: "*";
  inherits: false;
}
@media (prefers-reduced-motion: reduce) {
  .shimmer {
    -webkit-text-fill-color: currentColor;
    background-image: none;
    animation: none;
  }
}
:root {
  --background: #f4f6fa;
  --foreground: #142033;
  --card: #fff;
  --card-foreground: #142033;
  --popover: #fff;
  --popover-foreground: #142033;
  --primary: #2658da;
  --primary-foreground: #fff;
  --secondary: #edf1f8;
  --secondary-foreground: #243c60;
  --muted: #f0f3f8;
  --muted-foreground: #65738b;
  --accent: #e9efff;
  --accent-foreground: #214fc1;
  --destructive: #bf3d49;
  --border: #e1e7f0;
  --input: #d3ddeb;
  --ring: #7596ea;
  --radius: 0.65rem;
  --chart-1: #2658da;
  --chart-2: #6e91e9;
  --chart-3: #1b806e;
  --chart-4: #9d6b13;
  --chart-5: #bd4261;
  --sidebar: #111e34;
  --sidebar-foreground: #c0cce0;
  --sidebar-primary: #fff;
  --sidebar-primary-foreground: #111e34;
  --sidebar-accent: #233756;
  --sidebar-accent-foreground: #fff;
  --sidebar-border: #2a3b55;
  --sidebar-ring: #7b9cef;
}
body {
  background: var(--background);
  color: var(--foreground);
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.5;
}
* {
  box-sizing: border-box;
}
button,
a,
input,
textarea {
  -webkit-tap-highlight-color: transparent;
}
button:not(:disabled),
a {
  cursor: pointer;
}
button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
button,
a,
input,
textarea {
  transition:
    background 0.16s,
    color 0.16s,
    border-color 0.16s,
    box-shadow 0.16s;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline-offset: 3px;
  outline: 3px solid #94aef6;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1 {
  letter-spacing: -0.055rem;
  font-size: 2rem;
  font-weight: 650;
  line-height: 1.25;
}
h2 {
  letter-spacing: -0.014rem;
  font-size: 1.0625rem;
  font-weight: 650;
  line-height: 1.4;
}
h3 {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}
small {
  font-size: 0.875rem;
}
a {
  text-decoration: none;
}
svg {
  flex-shrink: 0;
}
input:not([type="checkbox"]):not([type="file"]),
textarea {
  border: 1px solid var(--input);
  width: 100%;
  min-height: 42px;
  color: var(--foreground);
  background: #fff;
  border-radius: 7px;
  padding: 10px 12px;
  font-size: 0.9375rem;
  line-height: 1.45;
  display: block;
}
input:disabled {
  background: #f0f3f8;
}
textarea {
  resize: vertical;
}
label,
.field-label {
  color: #40516b;
  margin-bottom: 6px;
  font-size: 0.875rem;
  font-weight: 550;
  display: block;
}
.pick {
  min-width: 130px;
  max-width: 100%;
  min-height: 42px;
  height: auto !important;
  box-shadow: none !important;
  background: #fff !important;
  border-radius: 7px !important;
  width: 100% !important;
  padding: 10px 12px !important;
  font-size: 0.875rem !important;
}
.pick [data-slot="select-value"] {
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}
.btn {
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 7px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 14px;
  font-size: 0.875rem;
  font-weight: 550;
  line-height: 1.4;
  display: inline-flex;
}
.btn.primary {
  color: #fff;
  background: #2658da;
  box-shadow: 0 1px 2px #18317315;
}
.btn.primary:hover:not(:disabled) {
  background: #1949c6;
}
.btn.outline {
  color: #344764;
  background: #fff;
  border-color: #dbe3ef;
  box-shadow: 0 1px 2px #14203305;
}
.btn.outline:hover:not(:disabled) {
  background: #f5f8ff;
  border-color: #bbcbe7;
}
.btn.wide {
  width: 100%;
}
.text-button {
  color: #2658da;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 6px;
  padding: 3px 0;
  font-size: 0.875rem;
  font-weight: 550;
  line-height: 1.5;
  display: inline-flex;
}
.text-button:hover {
  text-decoration: underline;
}
.icon-button {
  color: #697a94;
  border: 1px solid #0000;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  display: inline-flex;
}
.app-sidebar [data-sidebar="sidebar"],
.app-sidebar [data-slot="sidebar-inner"] {
  background: #111e34;
}
.app-sidebar [data-slot="sidebar-header"] {
  padding: 33px 24px 24px;
}
.brand {
  color: #fff;
  letter-spacing: 0.17rem;
  align-items: center;
  gap: 12px;
  font-size: 1.3rem;
  font-weight: 750;
  display: flex;
}
.brand-mark {
  color: #fff;
  border: 1px solid #52617b;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  width: 31px;
  height: 35px;
  font-family: Georgia, serif;
  font-size: 1.2rem;
  font-weight: 500;
  display: flex;
  transform: skewY(-5deg);
}
.brand small {
  color: #92a7c4;
  letter-spacing: 0.08rem;
  margin-top: 3px;
  font-size: 0.75rem;
  font-weight: 500;
  display: block;
}
.app-sidebar [data-slot="sidebar-content"] {
  gap: 5px;
  padding: 0 16px;
}
.nav-caption {
  letter-spacing: 0.095rem;
  color: #8093af;
  padding: 26px 13px 10px;
  font-size: 0.75rem;
  font-weight: 650;
}
.app-sidebar [data-slot="sidebar-menu"] {
  gap: 5px;
}
.app-sidebar [data-slot="sidebar-menu-button"] {
  color: #b4c2d9;
  border: 1px solid #0000;
  gap: 12px;
  height: 43px;
  padding: 0 13px;
  font-size: 0.875rem;
}
.app-sidebar [data-slot="sidebar-menu-button"] svg {
  opacity: 0.87;
  width: 18px;
  height: 18px;
}
.app-sidebar [data-slot="sidebar-menu-button"][data-active="true"] {
  color: #fff;
  background: #25426b;
  border-color: #325783;
  box-shadow: 0 2px 3px #00000015;
}
.nav-count {
  text-align: center;
  color: #fff;
  background: #47628b;
  border-radius: 4px;
  min-width: 23px;
  margin-left: auto;
  padding: 2px 5px;
  font-size: 0.75rem;
}
.app-sidebar [data-slot="sidebar-footer"] {
  gap: 19px;
  padding: 20px 19px;
}
.sandbox-card {
  color: #bfcee4;
  background: #1b2c46;
  border: 1px solid #2e415c;
  border-radius: 9px;
  grid-template-columns: 20px 1fr;
  gap: 6px 8px;
  padding: 15px;
  display: grid;
}
.sandbox-card strong {
  font-size: 0.875rem;
  font-weight: 600;
}
.sandbox-card p {
  color: #91a5c1;
  grid-column: 2;
  font-size: 0.75rem;
  line-height: 1.6;
}
.sidebar-owner {
  border-top: 1px solid #2c3b54;
  align-items: center;
  gap: 10px;
  padding-top: 18px;
  display: flex;
}
.sidebar-owner strong {
  color: #e0e7f4;
  font-size: 0.875rem;
}
.sidebar-owner small {
  color: #8d9fb9;
  font-size: 0.75rem;
  display: block;
}
.sidebar-owner > svg {
  color: #91a5c1;
  margin-left: auto;
}
.sidebar-owner .avatar.owner {
  color: #d8e5fc;
  background: #314969;
}
.app-main {
  background: #f4f6fa;
  flex: 1;
  min-width: 0;
}
.topbar {
  background: #fff;
  border-bottom: 1px solid #e1e7f0;
  justify-content: space-between;
  align-items: center;
  height: 69px;
  padding: 0 34px;
  display: flex;
}
.breadcrumbs {
  color: #8290a6;
  align-items: center;
  gap: 13px;
  font-size: 0.875rem;
  display: flex;
}
.breadcrumbs > [data-slot="sidebar-trigger"] {
  color: #728199;
  margin-left: -10px;
}
.top-right {
  align-items: center;
  gap: 24px;
  display: flex;
}
.save-status {
  color: #6e7d93;
  align-items: center;
  gap: 7px;
  font-size: 0.75rem;
  display: flex;
}
.header-avatar {
  color: #3864bf;
  background: #eaf0fc;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 0.75rem;
  font-weight: 650;
  display: flex;
}
.prototype-strip {
  color: #536787;
  background: #edf2fc;
  border-bottom: 1px solid #e1e9f7;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 9px 34px;
  font-size: 0.75rem;
  display: flex;
}
.prototype-strip > span {
  align-items: center;
  gap: 11px;
  display: flex;
}
.prototype-pill {
  color: #3d609e;
  letter-spacing: 0.055rem;
  background: #d9e5fc;
  border-radius: 4px;
  padding: 3px 6px;
  font-size: 0.75rem;
  font-weight: 700;
}
.prototype-strip button {
  color: #42629b;
  align-items: center;
  gap: 7px;
  font-weight: 500;
  display: flex;
}
.page-heading {
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  margin-bottom: 27px;
  display: flex;
}
.eyebrow {
  letter-spacing: 0.095rem;
  color: #7587a2;
  margin-bottom: 8px;
  font-size: 0.75rem;
  font-weight: 650;
}
.heading-actions {
  align-items: center;
  gap: 10px;
  display: flex;
}
.metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 17px;
  margin-bottom: 25px;
  display: grid;
}
.metric {
  text-align: left;
  background: #fff;
  border: 1px solid #dee5f0;
  border-radius: 10px;
  padding: 19px 20px 17px;
  box-shadow: 0 2px 3px #243d6903;
}
.metric:hover {
  border-color: #bdcceb;
  box-shadow: 0 3px 10px #344e7b07;
}
.metric > div {
  color: #6b7c94;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 0.875rem;
  display: flex;
}
.metric > div svg {
  color: #6985af;
}
.metric > strong {
  letter-spacing: -0.065rem;
  color: #192b45;
  margin: 8px 0 4px;
  font-size: 2rem;
  font-weight: 600;
  display: block;
}
.metric > small {
  color: #8390a5;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 0.75rem;
  display: flex;
}
.metric-amber {
  background: linear-gradient(120deg, #fff, #fffdf8);
}
.metric-amber > div svg {
  color: #af822e;
}
.panel-heading {
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 22px 23px 19px;
  display: flex;
}
.panel-heading h2 {
  align-items: center;
  gap: 9px;
  display: flex;
}
.panel-heading p {
  color: #7a8a9f;
  margin-top: 5px;
  font-size: 0.875rem;
}
.panel-heading > span {
  color: #7a8a9f;
  font-size: 0.875rem;
}
.overview-grid {
  grid-template-columns: minmax(0, 2.25fr) minmax(265px, 1fr);
  gap: 22px;
  display: grid;
}
.overview-grid .panel {
  min-width: 0;
}
.panel-bottom {
  color: #7b8ba2;
  background: #fcfdff;
  border-top: 1px solid #edf0f6;
  align-items: center;
  gap: 9px;
  padding: 15px 23px;
  font-size: 0.75rem;
  display: flex;
}
.panel-bottom svg {
  color: #7392bf;
}
.mini-icon {
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  display: flex;
}
.blue-icon {
  color: #517dcc;
  background: #eef3fe;
}
.amber-icon {
  color: #ac7e24;
  background: #fff5df;
}
.red-icon {
  color: #b44657;
  background: #fff0f2;
}
.attention-panel {
  background: linear-gradient(165deg, #fff, #fdfdff);
  padding: 24px;
}
.attention-panel .eyebrow {
  margin-top: 19px;
}
.attention-panel h2 {
  letter-spacing: -0.025rem;
  max-width: 240px;
  font-size: 1.1875rem;
}
.attention-panel > p:not(.eyebrow) {
  color: #8190a4;
  margin: 12px 0 6px;
  font-size: 0.875rem;
  line-height: 1.75;
}
.attention-items {
  margin: 17px 0;
}
.attention-items button {
  text-align: left;
  color: #405775;
  border-bottom: 1px solid #edf0f5;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 13px 0;
  font-size: 0.875rem;
  display: flex;
}
.attention-items button > svg:first-child {
  color: #b8954b;
}
.attention-items button > svg:last-child {
  color: #7c8ea8;
  margin-left: auto;
}
.attention-items button:hover {
  color: #2658da;
}
.overview-bottom {
  grid-template-columns: minmax(0, 2.25fr) minmax(265px, 1fr);
  gap: 22px;
  margin-top: 23px;
  display: grid;
}
.flow-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 0 23px 24px;
  display: grid;
}
.flow-card {
  text-align: left;
  background: #fbfcff;
  border: 1px solid #e3e9f3;
  border-radius: 8px;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
  padding: 17px 14px;
  display: flex;
  position: relative;
}
.flow-card:hover {
  background: #f6f9ff;
  border-color: #b3c9f4;
}
.flow-card > svg:first-child {
  color: #5d80ba;
}
.flow-card strong {
  font-size: 0.875rem;
  font-weight: 550;
}
.flow-card small {
  color: #8b99ad;
  font-size: 0.75rem;
  line-height: 1.5;
}
.flow-card > svg:last-child {
  color: #96a7c0;
  position: absolute;
  top: 16px;
  right: 12px;
}
.source-panel {
  padding: 22px 24px;
}
.source-panel > .mini-icon {
  float: right;
  width: 32px;
  height: 32px;
  margin-left: 12px;
}
.source-panel > h2 {
  margin: 3px 0 12px;
  font-size: 1rem;
}
.source-panel p {
  color: #7a8aa1;
  font-size: 0.875rem;
  line-height: 1.7;
}
.source-panel a {
  color: #426dab;
  align-items: center;
  gap: 7px;
  margin: 17px 0 10px;
  font-size: 0.875rem;
  display: flex;
}
.source-panel > small {
  color: #91a0b5;
  font-size: 0.75rem;
}
[data-slot="table-container"] {
  width: 100%;
  overflow-x: auto;
}
[data-slot="table"] {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.875rem;
}
[data-slot="table-head"] {
  color: #8794a9;
  text-align: left;
  white-space: nowrap;
  background: #f9fbfe;
  border-top: 1px solid #eef2f7;
  border-bottom: 1px solid #e8edf5;
  height: 44px;
  padding: 11px 18px;
  font-size: 0.75rem;
  font-weight: 550;
}
[data-slot="table-head"]:first-child,
[data-slot="table-cell"]:first-child {
  padding-left: 23px;
}
[data-slot="table-cell"] {
  color: #50617a;
  white-space: nowrap;
  border-bottom: 1px solid #edf1f6;
  padding: 15px 18px;
  font-size: 0.875rem;
}
[data-slot="table-row"]:hover td {
  background: #fbfcff;
}
[data-slot="table-row"]:last-child td {
  border-bottom: none;
}
.row-person {
  text-align: left;
  display: block;
}
.person {
  align-items: center;
  gap: 11px;
  min-width: 170px;
  display: flex;
}
.avatar {
  color: #53698a;
  background: #eaf0f9;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  font-size: 0.75rem;
  font-weight: 650;
  display: flex;
}
.av0 {
  color: #6079aa;
  background: #e7edf9;
}
.av1 {
  color: #4c827e;
  background: #e6f2f1;
}
.av2 {
  color: #a16a8c;
  background: #f5eaf1;
}
.av3 {
  color: #9b7b48;
  background: #f7f0e5;
}
.av4 {
  color: #7c6aa9;
  background: #edeafa;
}
.avatar.large {
  width: 54px;
  height: 54px;
  font-size: 1rem;
}
.person strong {
  color: #31455f;
  white-space: normal;
  max-width: 250px;
  font-size: 0.875rem;
  font-weight: 550;
  display: block;
}
.person small {
  color: #95a0b0;
  margin-top: 2px;
  font-size: 0.75rem;
  display: block;
}
.tag {
  white-space: nowrap;
  vertical-align: middle;
  border: 1px solid #0000;
  border-radius: 5px;
  padding: 4px 7px;
  font-size: 0.75rem;
  font-weight: 550;
  line-height: 1.45;
  display: inline-flex;
}
.tag.blue {
  color: #5176b4;
  background: #eef4ff;
  border-color: #e1eaf9;
}
.tag.green {
  color: #418170;
  background: #edf7f3;
  border-color: #e0f0e9;
}
.tag.amber {
  color: #a37d2d;
  background: #fff8e9;
  border-color: #f5edd8;
}
.tag.gray {
  color: #8793a6;
  background: #f2f4f8;
  border-color: #e9edf4;
}
.tag.red {
  color: #b15e6b;
  background: #fff2f3;
  border-color: #f9e4e8;
}
.cell-sub {
  color: #97a3b3;
  margin-top: 4px;
  font-size: 0.75rem;
  display: block;
}
.number {
  color: #3f5677;
  font-weight: 550;
}
.truncate-cell {
  text-overflow: ellipsis;
  max-width: 230px;
  overflow: hidden;
}
.workspace-footer {
  color: #8a99af;
  border-top: 1px solid #e1e7f0;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 35px;
  padding: 17px 0 24px;
  font-size: 0.75rem;
  display: flex;
}
.workspace-footer > span:first-child {
  align-items: center;
  gap: 7px;
  display: flex;
}
.table-tools {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  padding: 20px 23px;
  display: flex;
}
.table-tools > .pick {
  min-width: 145px;
  width: auto !important;
}
.table-tools > .btn:last-child {
  margin-left: auto;
}
.searchbox {
  color: #96a5ba;
  background: #fff;
  border: 1px solid #dfe6f1;
  border-radius: 7px;
  flex: 1;
  align-items: center;
  gap: 9px;
  min-width: 200px;
  max-width: 350px;
  min-height: 42px;
  padding: 0 12px;
  display: flex;
}
.searchbox input {
  min-width: 0;
  color: #456080 !important;
  background: 0 0 !important;
  border: 0 !important;
  outline: none !important;
  min-height: 38px !important;
  padding: 8px 0 !important;
  font-size: 0.875rem !important;
}
.searchbox button {
  display: flex;
}
.table-caption > span {
  color: #9aa6b7;
  margin-left: 12px;
  font-size: 0.75rem;
}
.view-tools {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin: 0 0 22px;
  display: flex;
}
.flex-tools {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}
.flex-tools > .pick {
  flex: 1;
  width: auto !important;
}
.view-tools > .pick {
  width: auto !important;
}
.view-tools [data-slot="tabs-list"],
.table-tools [data-slot="tabs-list"],
.heading-actions [data-slot="tabs-list"] {
  background: #e9edf5;
  border-radius: 8px;
  flex-wrap: wrap;
  gap: 2px;
  height: auto;
  min-height: 40px;
  padding: 4px;
}
.view-tools [data-slot="tabs-trigger"],
.table-tools [data-slot="tabs-trigger"],
.heading-actions [data-slot="tabs-trigger"] {
  color: #7890aa;
  border: 0;
  padding: 6px 13px;
  font-size: 0.875rem;
}
.view-tools [data-state="active"],
.table-tools [data-slot="tabs-trigger"][data-state="active"],
.heading-actions [data-state="active"] {
  box-shadow: 0 1px 4px #273d6510;
  color: #365989 !important;
  background: #fff !important;
}
.project-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 19px;
  display: grid;
}
.project-card {
  text-align: left;
  flex-direction: column;
  min-width: 0;
  padding: 24px 22px 0;
  display: flex;
}
.project-card:hover {
  border-color: #a8bfed;
  transform: translateY(-1px);
  box-shadow: 0 4px 15px #203a680a;
}
.project-top {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
  display: flex;
}
.project-code {
  letter-spacing: 0.035rem;
  color: #7a93b4;
  font-size: 0.75rem;
  font-weight: 600;
}
.project-card h2 {
  margin: 7px 0 8px;
  font-size: 1.0625rem;
  line-height: 1.5;
}
.project-card > p {
  color: #8b99ad;
  overflow-wrap: anywhere;
  min-height: 40px;
  margin-bottom: 14px;
  font-size: 0.75rem;
  line-height: 1.6;
}
.project-detail {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  margin-bottom: 18px;
  display: flex;
}
.project-detail > span:first-child {
  color: #70849f;
  font-size: 0.75rem;
}
.project-foot {
  color: #90a0b7;
  border-top: 1px solid #e8edf5;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  margin: 0 -22px;
  padding: 14px 22px;
  font-size: 0.75rem;
  display: flex;
}
.project-foot span:last-child {
  color: #5075ac;
  align-items: center;
  gap: 4px;
  display: flex;
}
.inline-note {
  color: #6b83a4;
  background: #eff4fd;
  border: 1px solid #e0e8f7;
  border-radius: 8px;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 17px;
  padding: 15px 18px;
  font-size: 0.875rem;
  line-height: 1.6;
  display: flex;
}
.panel > .inline-note {
  border: 0;
  border-bottom: 1px solid #e1e9f7;
  border-radius: 0;
  margin: 0;
}
.inline-note svg {
  margin-top: 2px;
}
.inline-note.warning {
  color: #947936;
  background: #fffaee;
  border-color: #f4ead1;
}
.inline-note p {
  margin-top: 4px;
}
.inline-note strong {
  font-weight: 600;
}
.error-banner {
  color: #a14d5e;
  background: #fff2f4;
  border: 1px solid #f1cfd7;
  border-radius: 9px;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  padding: 15px 18px;
  font-size: 0.875rem;
  display: flex;
}
.empty {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 60px 24px;
  display: flex;
}
.empty > svg {
  color: #abc0df;
  width: 28px;
  height: 28px;
  margin-bottom: 4px;
}
.empty h3 {
  color: #4a668c;
  font-weight: 550;
}
.empty p {
  color: #869bb7;
  max-width: 380px;
  font-size: 0.875rem;
  line-height: 1.7;
}
.member-selector {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 18px;
  margin-bottom: 25px;
  display: flex;
}
.member-selector > div:first-child {
  width: 310px;
  max-width: 100%;
}
.member-selector > div:nth-child(2) {
  width: 178px;
}
.member-selector .simulation-note {
  color: #8a9bb3;
  align-items: center;
  gap: 7px;
  max-width: 300px;
  margin-left: auto;
  padding-bottom: 5px;
  font-size: 0.75rem;
  line-height: 1.6;
  display: flex;
}
.member-summary {
  background: #fff;
  border: 1px solid #e0e7f2;
  border-radius: 10px;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  margin-bottom: 30px;
  padding: 26px;
  display: flex;
}
.member-identity {
  align-items: center;
  gap: 15px;
  display: flex;
}
.member-identity h2 {
  font-size: 1.25rem;
}
.member-identity p {
  color: #899bb3;
  margin-top: 6px;
  font-size: 0.875rem;
}
.member-identity p span {
  padding: 0 6px;
}
.member-totals {
  gap: 26px;
  display: flex;
}
.member-totals > div {
  border-left: 1px solid #e5ebf4;
  padding-left: 25px;
}
.member-totals strong {
  letter-spacing: -0.05rem;
  color: #395574;
  font-size: 1.5rem;
  font-weight: 550;
  display: block;
}
.member-totals strong small {
  color: #96a9be;
  font-size: 0.875rem;
  font-weight: 500;
}
.section-heading {
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin: 0 0 18px;
  display: flex;
}
.section-heading > span {
  color: #859bb7;
  font-size: 0.875rem;
}
.work-layout {
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 23px;
  display: grid;
}
.work-layout > section {
  min-width: 0;
}
.work-card {
  margin-bottom: 19px;
}
.work-card-head {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 22px;
  display: flex;
}
.work-title {
  align-items: center;
  gap: 13px;
  display: flex;
}
.work-title small {
  color: #7c96b8;
  font-size: 0.75rem;
}
.work-title h3 {
  color: #36526f;
  margin-top: 4px;
  font-size: 0.9375rem;
}
.week-grid {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
  display: grid;
}
.summary-grid {
  background: #fbfcff;
  border-top: 1px solid #edf2f9;
  border-bottom: 1px solid #edf2f9;
  padding: 17px 20px;
}
.summary-grid > div {
  text-align: center;
  padding: 4px;
}
.summary-grid span {
  color: #96a7bd;
  margin-bottom: 6px;
  font-size: 0.75rem;
  display: block;
}
.summary-grid strong {
  color: #5a7498;
  font-size: 1rem;
  font-weight: 550;
}
.summary-grid .week-total {
  border-left: 1px solid #dce5f2;
}
.summary-grid .week-total strong {
  color: #2658da;
}
.work-card-foot {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 15px 22px;
  display: flex;
}
.work-card-foot > span {
  color: #899bb3;
  align-items: center;
  gap: 7px;
  font-size: 0.75rem;
  display: flex;
}
.work-card-foot > div {
  gap: 8px;
  display: flex;
}
.work-card-foot .btn {
  min-height: 36px;
  padding: 7px 11px;
  font-size: 0.75rem;
}
.service-summary {
  color: #7a90ad;
  background: #fafcff;
  border-block: 1px solid #edf2f9;
  align-items: center;
  gap: 12px;
  padding: 22px;
  font-size: 0.875rem;
  display: flex;
}
.service-summary strong {
  color: #456994;
  white-space: nowrap;
  margin-left: auto;
}
.add-assignment {
  background: #fcfdff;
  border-style: dashed;
  padding: 21px 23px;
}
.add-assignment h3 {
  color: #5b769a;
  align-items: center;
  gap: 7px;
  margin-bottom: 14px;
  font-size: 0.875rem;
  display: flex;
}
.add-assignment > .text-button {
  margin-top: 13px;
  font-size: 0.75rem;
}
.work-side {
  padding-top: 41px;
}
.side-card {
  margin-bottom: 18px;
  padding: 21px;
}
.side-card h3 {
  color: #4b6688;
  align-items: center;
  gap: 8px;
  font-size: 0.9375rem;
  display: flex;
}
.side-card h3 svg {
  color: #83a0c7;
}
.side-card p {
  color: #8ba0bb;
  margin: 12px 0 18px;
  font-size: 0.875rem;
  line-height: 1.8;
}
.side-card small {
  color: #8fa1b8;
  margin-top: 13px;
  font-size: 0.75rem;
  line-height: 1.7;
  display: block;
}
.side-help {
  color: #8ba0bc;
  align-items: flex-start;
  gap: 11px;
  padding: 3px 7px;
  font-size: 0.75rem;
  line-height: 1.7;
  display: flex;
}
.absence-row {
  border-top: 1px solid #e7edf6;
  justify-content: space-between;
  align-items: center;
  padding: 9px 0;
  font-size: 0.875rem;
  display: flex;
}
.absence-row small {
  margin-top: 2px;
}
.editor-sheet {
  background: #fff !important;
  gap: 0 !important;
  width: 640px !important;
  max-width: calc(100vw - 22px) !important;
  padding: 0 !important;
}
.editor-sheet [data-slot="sheet-header"] {
  border-bottom: 1px solid #e4ebf5;
  padding: 28px 29px 24px;
}
.editor-sheet [data-slot="sheet-title"] {
  letter-spacing: -0.03rem;
  padding-right: 20px;
  font-size: 1.375rem;
  line-height: 1.4;
}
.editor-sheet [data-slot="sheet-description"] {
  color: #91a0b6;
  margin-top: 6px;
  font-size: 0.875rem;
  line-height: 1.7;
}
.editor-sheet .eyebrow {
  color: #7895bb;
  margin-bottom: 5px;
}
.editor-form {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}
.editor-scroll {
  flex: 1;
  min-height: 0;
  padding: 25px 29px 30px;
  overflow: auto;
}
.editor-scroll > h3 {
  margin: 22px 0 7px;
  font-size: 0.9375rem;
}
.editor-footer {
  background: #fcfdff;
  border-top: 1px solid #e3ebf5;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 18px 26px;
  display: flex;
}
.editor-footer > div {
  gap: 8px;
  display: flex;
}
.editor-footer > small,
.editor-footer > span {
  color: #97a9bf;
  overflow-wrap: anywhere;
  max-width: 220px;
  font-size: 0.75rem;
}
.form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 17px;
  display: grid;
}
.form-grid > .full {
  grid-column: 1/-1;
}
.form-grid > label {
  margin: 0;
}
.form-grid input {
  margin-top: 6px;
}
.field-hint {
  color: #98a8bd;
  margin-top: 7px;
  font-size: 0.75rem;
  line-height: 1.6;
  display: block;
}
.profile-banner {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  display: flex;
}
.profile-banner .person strong {
  font-size: 1rem;
}
.profile-banner .person small {
  font-size: 0.75rem;
}
.source-note {
  color: #96a7bd;
  background: #f6f9fe;
  border-radius: 6px;
  align-items: center;
  gap: 7px;
  margin-bottom: 23px;
  padding: 10px;
  font-size: 0.75rem;
  display: flex;
}
.source-detail {
  color: #8a9eb8;
  padding-bottom: 18px;
  font-size: 0.75rem;
  line-height: 1.7;
}
.form-actions {
  justify-content: flex-end;
  gap: 10px;
  margin-top: 25px;
  display: flex;
}
.form-error {
  color: #b3465b;
  margin-top: 17px;
  font-size: 0.875rem;
}
.block-field {
  margin-top: 22px;
  margin-bottom: 20px;
  display: block;
}
.block-field input,
.block-field textarea,
.block-field .pick {
  margin-top: 7px;
}
.block-field > small {
  color: #8da3bf;
  margin-top: 6px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.7;
  display: block;
}
.muted {
  color: #889db7;
  font-size: 0.875rem;
  line-height: 1.75;
}
.policy-summary {
  background: #f6f9ff;
  border: 1px solid #e3ebf8;
  border-radius: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
  padding: 15px;
  display: grid;
}
.policy-summary small {
  color: #97a9c2;
  margin-bottom: 6px;
  font-size: 0.75rem;
  display: block;
}
.policy-summary strong {
  color: #5779a5;
  font-size: 0.75rem;
  font-weight: 550;
}
.input-grid {
  gap: 7px;
  margin: 19px 0;
}
.input-grid > label {
  color: #8aa0bf;
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.5;
}
.input-grid input {
  text-align: center;
  font-variant-numeric: tabular-nums;
  min-width: 0;
  margin-top: 7px;
  padding: 7px 3px !important;
  font-size: 0.875rem !important;
}
.total-line {
  color: #91a4bd;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  font-size: 0.875rem;
  display: flex;
}
.total-line strong {
  color: #486e9f;
  font-size: 1rem;
  font-weight: 600;
}
.attachment {
  background: #fbfdff;
  border: 1px dashed #c8d7ed;
  border-radius: 8px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 18px;
  display: flex;
}
.attachment > div {
  color: #8ba3c0;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 0.875rem;
  display: flex;
}
.attachment > div a {
  color: #4d76b0;
  word-break: break-all;
  max-width: 280px;
}
.attachment > small {
  color: #9fafc5;
  flex-basis: 100%;
  font-size: 0.75rem;
}
.attachment label {
  margin: 0;
}
.attachment input[hidden] {
  display: none;
}
.review-total {
  align-items: center;
  gap: 13px;
  margin: 26px 0 22px;
  display: flex;
}
.review-total > strong {
  color: #3c6497;
  letter-spacing: -0.065rem;
  font-size: 2.3rem;
  font-weight: 550;
}
.review-total > span:nth-child(2) {
  color: #8a9fbf;
  font-size: 0.875rem;
}
.review-total > .tag {
  margin-left: auto;
}
.detail-box {
  margin-top: 23px;
}
.detail-box h3 {
  color: #57799f;
  margin-bottom: 8px;
  font-size: 0.875rem;
}
.detail-box p {
  color: #8da2bd;
  white-space: pre-wrap;
  font-size: 0.875rem;
  line-height: 1.75;
}
.approval-lanes > div {
  border: 1px solid #dde7f5;
  border-radius: 9px;
  margin-top: 18px;
  padding: 18px;
}
.approval-lanes h3 {
  margin-right: 14px;
  font-size: 0.875rem;
  display: inline-block;
}
.approval-lanes p {
  color: #8da1bd;
  margin: 10px 0 15px;
  font-size: 0.875rem;
}
.approval-lanes .btn {
  font-size: 0.875rem;
}
.history-item {
  color: #8c9eb7;
  border-top: 1px solid #e2eafa;
  padding: 12px 0;
  font-size: 0.75rem;
}
.history-item strong {
  color: #55769d;
  margin-right: 12px;
}
.history-item p {
  font-size: 0.75rem;
}
.invoice-card {
  padding-bottom: 0;
}
.invoice-card + .invoice-card {
  border-top: 6px solid #f1f5fb;
}
.invoice-head {
  justify-content: space-between;
  gap: 20px;
  padding: 26px 25px;
  display: flex;
}
.invoice-head h2 {
  margin: 7px 0;
}
.invoice-head p {
  color: #91a6c0;
  font-size: 0.75rem;
}
.invoice-amount {
  text-align: right;
}
.invoice-amount > strong {
  color: #375f97;
  letter-spacing: -0.05rem;
  margin-bottom: 8px;
  font-size: 1.75rem;
  font-weight: 550;
  display: block;
}
.invoice-foot {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 22px 25px;
  display: flex;
}
.invoice-foot > div:first-child {
  max-width: 520px;
}
.invoice-foot > div:last-child {
  gap: 10px;
  display: flex;
}
.invoice-foot small {
  color: #96a7bf;
  margin-top: 8px;
  font-size: 0.75rem;
  line-height: 1.7;
  display: block;
}
.warning-text,
.success-text {
  color: #aa8740;
  align-items: center;
  gap: 7px;
  font-size: 0.875rem;
  display: flex;
}
.success-text {
  color: #548d7d;
}
.invoice-line-edit {
  background: #fcfdff;
  border: 1px solid #e2eaf7;
  border-radius: 8px;
  margin-bottom: 13px;
  padding: 17px;
}
.invoice-line-edit .form-grid {
  margin-top: 16px;
}
.line-edit-head {
  color: #7292b9;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  font-size: 0.875rem;
  display: flex;
}
.grand-total {
  border-top: 1px solid #e1e9f7;
  margin-top: 18px;
}
.grand-total strong {
  font-size: 1.5rem;
}
.checkbox-line {
  color: #7e96b6;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 0 24px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.7;
  display: flex;
}
.checkbox-line [data-slot="checkbox"] {
  margin-top: 4px;
}
.reports-grid {
  grid-template-columns: 1.4fr 1fr;
  gap: 22px;
  margin-bottom: 23px;
  display: grid;
}
.bar-chart {
  gap: 22px;
  padding: 0 23px 25px;
  display: grid;
}
.bar-chart > div > div:first-child {
  color: #678bb7;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  font-size: 0.875rem;
  display: flex;
}
.bar-chart small {
  color: #9ab0c9;
  margin-top: 3px;
  font-size: 0.75rem;
  display: block;
}
.bar-chart .bar {
  background: #edf3fc;
  height: 7px;
}
.bar-chart .bar-1 [data-slot="progress-indicator"] {
  background: #82a4e0;
}
.status-report {
  padding: 0 23px 12px;
}
.status-report > div {
  border-bottom: 1px solid #edf2f9;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  display: flex;
}
.status-report strong {
  color: #6486af;
  font-size: 0.875rem;
}
.report-note {
  color: #97aac3;
  padding: 10px 23px 25px;
  font-size: 0.75rem;
  line-height: 1.7;
}
.import-summary {
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  padding: 26px;
  display: flex;
}
.import-summary > div:first-child {
  align-items: flex-start;
  gap: 15px;
  display: flex;
}
.import-summary h2 {
  font-size: 1.0625rem;
}
.import-summary p:not(.eyebrow) {
  color: #8fa5c0;
  margin: 7px 0 10px;
  font-size: 0.875rem;
}
.import-actions {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}
.source-legend {
  flex-wrap: wrap;
  gap: 16px 24px;
  margin: 20px 0 30px;
  display: flex;
}
.source-legend > span {
  color: #94a7c1;
  align-items: center;
  gap: 8px;
  font-size: 0.75rem;
  display: flex;
}
.setup-next {
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  margin-bottom: 26px;
  display: flex;
}
.setup-next > div:first-child {
  max-width: 600px;
}
.setup-next h3 {
  color: #466b9a;
  font-size: 1rem;
}
.setup-next p {
  color: #90a4c0;
  margin-top: 8px;
  font-size: 0.875rem;
  line-height: 1.8;
}
.setup-buttons {
  flex-wrap: wrap;
  gap: 9px;
  display: flex;
}
.issue-list > article {
  border-bottom: 1px solid #e9f0f8;
  align-items: flex-start;
  gap: 15px;
  padding: 23px;
  display: flex;
}
.issue-list > article:last-child {
  border-bottom: 0;
}
.issue-icon {
  border-radius: 8px;
  flex-shrink: 0;
  padding: 10px;
}
.issue-content {
  flex: 1;
  min-width: 0;
}
.issue-content > div {
  align-items: center;
  gap: 10px;
  margin-bottom: 7px;
  display: flex;
}
.issue-content h3 {
  color: #59779f;
  font-size: 0.875rem;
}
.issue-content p {
  color: #8c9fba;
  max-width: 750px;
  font-size: 0.875rem;
  line-height: 1.75;
}
.issue-content small {
  color: #759587;
  margin-top: 8px;
  font-size: 0.75rem;
  display: block;
}
.issue-actions {
  flex-direction: column;
  align-items: flex-end;
  gap: 9px;
  display: flex;
}
.issue-actions .btn {
  min-height: 35px;
  padding: 7px 12px;
  font-size: 0.75rem;
}
.scope-panel {
  padding: 27px;
}
.scope-panel > .inline-note {
  border: 1px solid #e1e9f7;
  border-radius: 8px;
  margin-top: 24px;
  margin-bottom: 18px;
}
.scope-grid {
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-top: 22px;
  display: grid;
}
.scope-grid h3 {
  color: #5f83ac;
  font-size: 0.9375rem;
}
.scope-grid ul {
  margin: 10px 0 0;
  padding-left: 19px;
  list-style: outside;
}
.scope-grid li {
  color: #8fa4bf;
  margin: 8px 0;
  font-size: 0.875rem;
  line-height: 1.8;
}
.start-screen {
  background: #fff;
  border: 1px solid #dce6f4;
  border-radius: 15px;
  max-width: 600px;
  margin: 12vh auto;
  padding: 36px;
}
.dark-brand {
  color: #24446e;
  margin-bottom: 40px;
}
.dark-brand .brand-mark {
  background: #183657;
}
.start-screen h1 {
  margin-bottom: 20px;
  font-size: 2rem;
}
.start-screen p {
  color: #7a94b5;
  margin-bottom: 25px;
  font-size: 1rem;
}
.spin {
  animation: 1s linear infinite spin;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@media (width>=1600px) {
  .workspace {
    padding-top: 38px;
  }
  .overview-grid,
  .overview-bottom {
    grid-template-columns: minmax(0, 2.6fr) minmax(290px, 1fr);
  }
}
@media (width<=1250px) {
  .workspace {
    padding: 26px 24px 0;
  }
  .topbar {
    padding: 0 24px;
  }
  .prototype-strip {
    padding-inline: 24px;
  }
  .overview-grid,
  .overview-bottom {
    grid-template-columns: minmax(0, 1fr);
  }
  .attention-panel {
    grid-template-columns: 42px 1fr;
    align-items: center;
    gap: 10px 18px;
    display: grid;
  }
  .attention-panel .eyebrow {
    margin: 0;
  }
  .attention-panel h2 {
    grid-column: 2;
    max-width: none;
  }
  .attention-panel > p:not(.eyebrow) {
    grid-column: 2;
    margin: 0;
  }
  .attention-items {
    grid-column: 1/-1;
    gap: 25px;
    margin: 4px 0;
    display: flex;
  }
  .attention-items button {
    border: 0;
    flex: 1;
  }
  .attention-panel > .btn {
    grid-column: 2;
    justify-self: start;
    width: auto !important;
  }
  .overview-bottom {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 0.7fr);
  }
  .flow-cards,
  .project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .member-summary {
    flex-wrap: wrap;
  }
  .member-totals {
    margin-left: 0;
  }
  .member-totals > div:first-child {
    border: 0;
    padding-left: 0;
  }
  .work-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .work-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    padding: 0;
    display: grid;
  }
  .work-side .side-help {
    grid-column: 1/-1;
  }
  .import-summary {
    flex-wrap: wrap;
  }
  .setup-next {
    flex-direction: column;
    align-items: flex-start;
  }
  .metric {
    padding: 17px 15px;
  }
  .metric > small {
    font-size: 0.75rem;
  }
  .metrics {
    gap: 12px;
  }
  .table-tools [data-slot="tabs-list"] {
    flex-wrap: wrap;
  }
  .reports-grid {
    grid-template-columns: 1fr 1fr;
  }
  .page-heading {
    align-items: flex-start;
  }
  .heading-actions {
    padding-top: 12px;
  }
}
@media (width<=900px) {
  .metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .overview-bottom {
    grid-template-columns: 1fr;
  }
  .page-heading {
    flex-wrap: wrap;
    gap: 8px;
  }
  .page-heading .heading-actions {
    padding-top: 6px;
  }
  .reports-grid {
    grid-template-columns: 1fr;
  }
  .invoice-foot {
    flex-direction: column;
    align-items: flex-start;
  }
  .top-right {
    gap: 12px;
  }
  .prototype-strip button {
    display: none;
  }
  .source-legend {
    gap: 12px;
  }
  .form-grid {
    gap: 17px 13px;
  }
  .flow-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (width<=767px) {
  h1 {
    font-size: 1.75rem;
  }
  .workspace {
    padding: 23px 17px 0;
  }
  .topbar {
    height: 60px;
    padding: 0 17px;
  }
  .prototype-strip {
    padding: 9px 17px;
    font-size: 0.75rem;
  }
  .prototype-pill {
    font-size: 0.75rem;
  }
  .breadcrumbs {
    gap: 8px;
    font-size: 0.75rem;
  }
  .top-right .save-status span {
    display: none;
  }
  .topbar .breadcrumbs > [data-slot="sidebar-trigger"] {
    margin-left: -7px;
  }
  .metric > strong {
    font-size: 1.8rem;
  }
  .overview-grid,
  .overview-bottom {
    gap: 18px;
  }
  .panel-heading {
    padding: 19px 17px;
  }
  .panel-heading h2 {
    font-size: 1rem;
  }
  .panel-heading p {
    font-size: 0.75rem;
  }
  .panel-heading .text-button {
    white-space: nowrap;
    font-size: 0.75rem;
  }
  .flow-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0 17px 20px;
  }
  .attention-panel {
    padding: 20px;
  }
  .attention-items {
    flex-direction: column;
    gap: 0;
  }
  .attention-items button {
    padding: 9px 0;
  }
  .attention-panel > p:not(.eyebrow) {
    font-size: 0.875rem;
  }
  .project-grid {
    grid-template-columns: 1fr;
  }
  .project-card {
    padding: 22px 20px 0;
  }
  .project-foot {
    margin: 0 -20px;
    padding: 14px 20px;
  }
  .view-tools,
  .table-tools {
    align-items: stretch;
  }
  .table-tools {
    gap: 10px;
    padding: 18px 17px;
  }
  .table-tools .searchbox {
    flex-basis: 100%;
    max-width: none;
  }
  .table-caption {
    padding-inline: 17px;
    line-height: 1.8;
  }
  .table-caption span {
    margin: 0;
    display: block;
  }
  .view-tools > .flex-tools {
    width: 100%;
  }
  .searchbox {
    min-width: 170px;
    max-width: none;
  }
  .table-tools > .btn:last-child {
    margin-left: 0;
  }
  .view-tools [data-slot="tabs-list"] {
    flex-wrap: wrap;
    height: auto;
  }
  .member-selector > div:first-child {
    width: 100%;
  }
  .member-selector .simulation-note {
    flex: 1;
    min-width: 140px;
    max-width: none;
    margin: 0;
  }
  .member-summary {
    padding: 22px 18px;
  }
  .member-identity h2 {
    font-size: 1.125rem;
  }
  .member-identity p {
    font-size: 0.75rem;
  }
  .member-totals {
    border-top: 1px solid #e9eff8;
    justify-content: space-between;
    gap: 23px;
    width: 100%;
    padding-top: 18px;
  }
  .member-totals > div {
    padding-left: 15px;
  }
  .member-totals span,
  .section-heading > span {
    font-size: 0.75rem;
  }
  .work-card-head {
    align-items: flex-start;
    padding: 18px 15px;
  }
  .work-title h3 {
    font-size: 0.875rem;
  }
  .work-title .mini-icon {
    width: 34px;
    height: 34px;
  }
  .work-card-foot {
    padding: 13px 15px;
  }
  .summary-grid {
    gap: 0;
    padding: 13px 10px;
  }
  .summary-grid > div {
    padding: 3px 1px;
  }
  .summary-grid span {
    font-size: 0.75rem;
  }
  .summary-grid strong {
    font-size: 0.875rem;
  }
  .work-side {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .work-card-head > .tag {
    font-size: 0.75rem;
  }
  .editor-sheet {
    width: 100vw !important;
    max-width: 100vw !important;
  }
  .editor-sheet [data-slot="sheet-header"] {
    padding: 25px 21px 20px;
  }
  .editor-scroll {
    padding: 22px 21px;
  }
  .editor-footer {
    flex-wrap: wrap;
    padding: 16px 20px;
  }
  .editor-footer > small {
    display: none;
  }
  .form-grid {
    gap: 18px 13px;
  }
  .policy-summary {
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
  .policy-summary div:last-child {
    grid-column: 1/-1;
  }
  .input-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
  }
  .input-grid input {
    font-size: 1rem !important;
  }
  .invoice-head {
    flex-wrap: wrap;
    padding: 21px 18px;
  }
  .invoice-amount > strong {
    font-size: 1.5rem;
  }
  .invoice-foot {
    padding: 21px 18px;
  }
  .invoice-foot > div:last-child {
    flex-wrap: wrap;
  }
  .import-summary {
    padding: 22px 18px;
  }
  .import-summary > div:first-child {
    gap: 12px;
  }
  .import-summary h2 {
    font-size: 0.9375rem;
  }
  .import-summary p:not(.eyebrow) {
    font-size: 0.75rem;
    line-height: 1.7;
  }
  .import-actions {
    width: 100%;
  }
  .import-actions > .btn {
    flex: 1;
    font-size: 0.875rem;
  }
  .issue-list > article {
    flex-wrap: wrap;
    gap: 13px;
    padding: 19px 16px;
  }
  .issue-content {
    flex-basis: calc(100% - 53px);
  }
  .issue-content > div {
    flex-wrap: wrap;
  }
  .issue-actions {
    flex-direction: row;
    align-items: center;
    gap: 17px;
    margin-left: 51px;
  }
  .scope-grid {
    grid-template-columns: 1fr;
  }
  .scope-panel {
    padding: 23px 20px;
  }
  .source-legend > span {
    font-size: 0.75rem;
  }
  .workspace-footer {
    gap: 9px;
    padding-bottom: 20px;
  }
  .workspace-footer > span {
    font-size: 0.75rem;
  }
  .view-tools [data-slot="tabs-trigger"] {
    padding: 6px 10px;
    font-size: 0.75rem;
  }
  .start-screen {
    margin: 8vh 20px;
    padding: 27px;
  }
  .form-grid > .full {
    grid-column: 1/-1;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  :before,
  :after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
.tag {
  font-size: 0.875rem;
}
.cell-sub,
.person small,
.metric > small,
.project-code,
.project-foot,
.eyebrow,
.field-hint,
.source-note,
.source-detail,
.workspace-footer,
.prototype-strip,
.save-status,
.source-legend > span {
  font-size: 0.75rem;
}
.lead,
.muted,
.attention-panel > p:not(.eyebrow),
.source-panel p,
.side-card p,
.issue-content p,
.setup-next p,
.scope-grid li,
.detail-box p {
  font-size: 1rem;
  line-height: 1.65;
}
.lead,
.muted,
.cell-sub,
.person small,
.metric > small,
.panel-heading p,
.panel-heading > span,
.panel-bottom,
.attention-panel > p:not(.eyebrow),
.source-panel p,
.source-panel > small,
.source-detail,
.source-note,
.field-hint,
.block-field > small,
.project-card > p,
.project-foot,
.table-caption > span,
.simulation-note,
.member-identity p,
.member-totals span,
.section-heading > span,
.side-card p,
.side-card small,
.side-help,
.work-title small,
.summary-grid span,
.work-card-foot > span,
.service-summary,
.review-total > span:nth-child(2),
.detail-box p,
.approval-lanes p,
.checkbox-line,
.invoice-head p,
.invoice-foot small,
.setup-next p,
.source-legend > span,
.issue-content p,
.scope-grid li,
.report-note,
.bar-chart small,
.attachment > small,
.import-summary p:not(.eyebrow) {
  color: #62738b;
}
[data-slot="table-head"] {
  color: #66768c;
  font-size: 0.875rem;
}
[data-slot="table-cell"] {
  font-size: 0.875rem;
}
.tag.blue {
  color: #365e9e;
}
.tag.green {
  color: #2e715c;
}
.tag.amber {
  color: #886619;
}
.tag.gray {
  color: #67758a;
}
.tag.red {
  color: #a14455;
}
.project-code {
  color: #53739d;
}
.eyebrow {
  color: #667990;
}
.metric > div {
  color: #64738b;
}
.workspace-footer {
  color: #63778e;
}
@media (width<=767px) {
  .form-grid {
    grid-template-columns: 1fr;
  }
  .work-card .summary-grid {
    grid-template-columns: repeat(8, minmax(34px, 1fr));
    overflow-x: auto;
  }
  .prototype-strip {
    font-size: 0.75rem;
  }
  .prototype-strip > span {
    flex-wrap: wrap;
    gap: 6px;
  }
  .prototype-pill {
    font-size: 0.75rem;
  }
  .project-detail {
    flex-wrap: wrap;
  }
  .policy-summary {
    grid-template-columns: 1fr 1fr;
  }
  .work-card-head > .tag,
  .summary-grid span,
  .member-totals span {
    font-size: 0.75rem;
  }
}
.time-totals {
  background: #f6f9ff;
  border: 1px solid #dce6f4;
  border-radius: 9px;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 20px 0;
  padding: 18px;
  display: grid;
}
.time-totals span {
  color: #60718a;
  font-size: 0.875rem;
  display: block;
}
.time-totals strong {
  color: #31598e;
  font-size: 1.5rem;
}
.time-totals > div:last-child {
  border-left: 1px solid #cedcf0;
  padding-left: 18px;
}
.template-box {
  background: #f0f5fd;
  border: 1px solid #dce7f6;
  border-radius: 9px;
  margin: 16px 0;
  padding: 18px;
}
.template-box p {
  color: #61748e;
  margin-bottom: 14px;
  font-size: 0.875rem;
  line-height: 1.7;
}
.consultant-hero {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 20px 0 24px;
  padding: 28px;
  display: flex;
}
.consultant-hero h2 {
  font-size: 1.6rem;
}
.consultant-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 15px;
  display: flex;
}
.access-label {
  color: #65778f;
  align-items: center;
  gap: 6px;
  font-size: 0.875rem;
  display: flex;
}
.consultant-tabs {
  margin-bottom: 22px;
}
.consultant-tabs [data-slot="tabs-list"] {
  background: #e9eef7;
  flex-wrap: wrap;
  height: auto;
  padding: 5px;
}
.consultant-tabs [data-slot="tabs-trigger"] {
  padding: 9px 15px;
  font-size: 0.875rem;
}
.consultant-overview {
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  display: grid;
}
.consultant-overview .full {
  grid-column: 1/-1;
}
.profile-details {
  padding: 25px;
}
.profile-details h2 {
  margin-bottom: 17px;
}
.profile-details h3 {
  margin: 24px 0 12px;
}
.profile-details dl > div {
  border-bottom: 1px solid #e6edf7;
  justify-content: space-between;
  gap: 20px;
  padding: 13px 0;
  font-size: 0.875rem;
  display: flex;
}
.profile-details dt {
  color: #697b93;
}
.profile-details dd {
  color: #2f4e78;
  text-align: right;
}
.profile-project {
  border-bottom: 1px solid #e8eef8;
  flex-wrap: wrap;
  gap: 9px;
  padding: 14px 0;
  font-size: 0.875rem;
  display: flex;
}
.profile-project > span:not(.tag) {
  color: #667b96;
  flex: 1;
}
.profile-edit-full form {
  padding: 8px 27px 27px;
}
.profile-edit-full .form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.timesheet-group {
  margin-bottom: 22px;
}
fieldset {
  min-width: 0;
}
.editor-scroll fieldset > h3 {
  margin: 24px 0 9px;
}
.editor-scroll .form-grid {
  margin-top: 20px;
}
.editor-scroll fieldset[disabled] {
  opacity: 0.8;
}
@media (width<=900px) {
  .consultant-hero {
    flex-direction: column;
    align-items: flex-start;
  }
  .consultant-overview {
    grid-template-columns: 1fr;
  }
  .profile-edit-full .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width<=600px) {
  .time-totals {
    gap: 9px;
    padding: 13px;
  }
  .time-totals strong {
    font-size: 1.3rem;
  }
  .time-totals span {
    font-size: 0.75rem;
  }
  .time-totals > div:last-child {
    padding-left: 9px;
  }
  .consultant-hero {
    padding: 23px 18px;
  }
  .profile-edit-full .form-grid {
    grid-template-columns: 1fr;
  }
  .consultant-tabs [data-slot="tabs-trigger"] {
    padding: 8px 10px;
  }
  .profile-details {
    padding: 20px;
  }
  .consultant-actions {
    gap: 10px;
  }
}
.company-identity {
  align-items: center;
  gap: 26px;
  max-width: 850px;
  display: flex;
}
.company-identity h2 {
  margin: 3px 0 6px;
}
.company-identity p:not(.eyebrow) {
  color: var(--vekend-grey, #707372);
  max-width: 680px;
  font-size: 12px;
  line-height: 1.6;
}
.company-logo {
  border-right: 1px solid #e8e7e5;
  width: 160px;
  min-width: 160px;
  padding: 22px 12px;
}
.company-logo img {
  object-fit: contain;
  width: 100%;
  height: auto;
}
.directory-company-logo {
  object-fit: contain;
  width: 66px;
  height: 22px;
  margin-right: 12px;
}
.company-fact {
  border-bottom: 1px solid #eeedeb;
  grid-template-columns: minmax(115px, 34%) minmax(0, 1fr);
  gap: 18px;
  padding: 11px 0;
  font-size: 12px;
  line-height: 1.65;
  display: grid;
}
.company-fact dt {
  color: #707372;
}
.company-fact dd {
  white-space: pre-line;
  overflow-wrap: anywhere;
  margin: 0;
  font-weight: 500;
}
.company-description {
  color: #595754;
  margin: 18px 0;
  font-size: 14px;
  line-height: 1.9;
}
.company-sources {
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
  padding-top: 18px;
  display: flex;
}
.source-link {
  overflow-wrap: anywhere;
  text-align: left;
  white-space: normal !important;
  font-size: 11px !important;
}
.source-link svg {
  flex-shrink: 0;
}
.company-overview {
  gap: 20px;
  display: grid;
}
.company-expand summary {
  cursor: pointer;
  padding: 20px 24px;
  font-size: 14px;
  font-weight: 600;
}
.company-expand summary span {
  color: #707372;
  margin-left: 20px;
  font-size: 12px;
  font-weight: 400;
}
.company-facts-grid {
  grid-template-columns: 1fr 1fr;
  gap: 0 34px;
  display: grid;
}
.company-billing,
.billing-history {
  margin-bottom: 24px;
}
.company-billing-grid {
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  padding: 24px;
  display: grid;
}
.company-billing .company-fact {
  grid-template-columns: 150px 1fr;
}
.billing-totals {
  flex-wrap: wrap;
  gap: 36px;
  display: flex;
}
.billing-totals .company-fact {
  border: 0;
  min-width: 140px;
  display: block;
}
.billing-totals dd {
  font-variant-numeric: tabular-nums;
  margin-top: 4px;
  font-size: 20px;
}
.billing-history .queue-toolbar {
  flex-wrap: wrap;
}
.billing-history .queue-toolbar h2 {
  margin: 0 0 6px;
}
.billing-history .queue-toolbar small {
  color: #707372;
  font-size: 11px;
}
.unallocated-payments {
  background: #fffaf0;
  border-top: 1px solid #ecdcb4;
}
.unallocated-payments > p {
  color: #707372;
  font-size: 12px;
}
.history-record-heading {
  justify-content: space-between;
  align-items: center;
  margin: 20px 0;
  display: flex;
}
.history-record-heading h2 {
  margin: 6px 0;
  font-size: 24px;
}
.history-record-heading p:last-child {
  color: #707372;
  font-size: 12px;
}
.source-context {
  color: #707372;
  flex-wrap: wrap;
  align-items: center;
  gap: 24px;
  margin-bottom: 20px;
  font-size: 11px;
  display: flex;
}
.import-review-columns {
  grid-template-columns: minmax(240px, 0.85fr) minmax(290px, 1fr) minmax(
      290px,
      1fr
    );
  gap: 14px;
  margin-bottom: 20px;
  display: grid;
}
.import-review-columns .panel {
  min-width: 0;
  overflow: hidden;
}
.import-review-columns .review-column-head {
  border-bottom: 1px solid #e8e7e5;
  align-items: center;
  gap: 12px;
  padding: 18px;
  display: flex;
}
.review-column-head > span {
  color: #94712e;
  font-family:
    Roboto Mono,
    monospace;
  font-size: 11px;
}
.review-column-head h3 {
  margin: 0;
  font-size: 14px;
}
.import-hours {
  font-variant-numeric: tabular-nums;
  font-size: 46px;
  font-weight: 600;
  line-height: 1.2;
}
.import-hours small {
  color: #707372;
  margin-left: 10px;
  font-size: 13px;
  font-weight: 400;
}
.import-review-columns .core-panel-pad > p {
  color: #707372;
  font-size: 12px;
  line-height: 1.7;
}
.linked-document iframe {
  background: #fafafa;
  border: 0;
  width: 100%;
  height: 630px;
}
.linked-document .document-toolbar {
  gap: 10px;
  padding: 12px;
  font-size: 11px;
}
.linked-document .document-toolbar > span {
  align-items: center;
  gap: 6px;
  display: flex;
}
.document-access-note {
  color: #707372;
  padding: 0 12px 12px;
  font-size: 10px;
  line-height: 1.5;
}
.historical-review {
  margin-bottom: 24px;
}
.historical-review > .panel {
  margin-top: 20px;
}
@media (width<=1150px) {
  .import-review-columns {
    grid-template-columns: minmax(220px, 0.85fr) minmax(250px, 1fr) minmax(
        250px,
        1fr
      );
    overflow-x: auto;
  }
  .company-billing .company-fact {
    grid-template-columns: 110px 1fr;
  }
  .company-logo {
    width: 110px;
    min-width: 110px;
  }
}
@media (width<=800px) {
  .company-billing-grid,
  .company-facts-grid {
    grid-template-columns: 1fr;
  }
  .company-identity {
    gap: 15px;
  }
  .company-logo {
    width: 88px;
    min-width: 88px;
    padding: 12px 8px;
  }
  .company-expand summary span {
    margin: 8px 0 0;
    display: block;
  }
  .import-review-columns {
    grid-template-columns: 1fr;
    overflow: visible;
  }
  .linked-document iframe {
    height: 500px;
  }
  .billing-totals {
    gap: 16px;
  }
  .company-billing-grid {
    padding: 18px;
  }
}
.engagement-work-records .core-table {
  min-width: 1050px;
}
.engagement-work-records .core-table td {
  vertical-align: top;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 14px;
}
.engagement-work-records .core-table th {
  font-size: 14px;
}
.engagement-work-records .cell-sub {
  margin-top: 7px;
  font-size: 12px;
  line-height: 1.5;
}
.engagement-work-records .source-link,
.engagement-work-records .open-review {
  font-size: 14px !important;
}
.engagement-work-records .source-link {
  margin-top: 6px;
}
.engagement-work-records .review-status {
  white-space: normal;
  max-width: 180px;
  font-size: 14px;
  line-height: 1.4;
}
.engagement-work-records .tabular-number {
  font-variant-numeric: tabular-nums;
  font-size: 16px;
}
.engagement-work-records .queue-foot {
  flex-wrap: wrap;
}
.client-engagement-instructions {
  margin-top: 24px;
}
@media (width<=700px) {
  .engagement-work-records .queue-toolbar {
    align-items: stretch;
  }
  .engagement-work-records .queue-title {
    width: 100%;
  }
  .engagement-work-records .queue-toolbar .search-box {
    width: 100%;
    max-width: none;
    margin-left: 0;
  }
  .engagement-work-records .queue-foot .flex-tools {
    margin-left: auto;
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@keyframes enter {
  0% {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(
        var(--tw-enter-translate-x, 0),
        var(--tw-enter-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1)
      )
      rotate(var(--tw-enter-rotate, 0));
    filter: blur(var(--tw-enter-blur, 0));
  }
}
@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(
        var(--tw-exit-translate-x, 0),
        var(--tw-exit-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1)
      )
      rotate(var(--tw-exit-rotate, 0));
    filter: blur(var(--tw-exit-blur, 0));
  }
}
.phone-field {
  min-width: 0;
}
.phone-field > label {
  align-items: baseline;
  gap: 5px;
  margin-bottom: 8px !important;
  display: flex !important;
}
.phone-optional {
  color: #78756f;
  margin-left: auto;
  font-size: 12px;
  font-weight: 400;
}
.phone-control {
  background: #fff;
  border: 1px solid #cfcdc8;
  border-radius: 4px;
  align-items: center;
  min-width: 0;
  min-height: 48px;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
  display: flex;
}
.phone-control:focus-within {
  border-color: #956919;
  box-shadow: 0 0 0 3px #ffa40025;
}
.phone-control.phone-invalid {
  border-color: #bf3d49;
  box-shadow: 0 0 0 3px #bf3d4918;
}
.phone-country-trigger {
  color: #2d2926;
  white-space: nowrap;
  background: 0 0;
  border: 0;
  border-radius: 3px 0 0 3px;
  flex-shrink: 0;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 9px 11px 9px 13px;
  font-size: 14px;
  display: flex;
}
.phone-country-trigger:hover:not(:disabled) {
  background: #f7f5f0;
}
.phone-country-trigger > svg {
  color: #79756c;
  width: 13px !important;
}
.phone-country-trigger:focus-visible {
  outline-offset: -3px;
  outline: 2px solid #956919;
}
.phone-dial {
  color: #66635e;
  font-variant-numeric: tabular-nums;
}
.phone-flag {
  flex: none;
  justify-content: center;
  align-items: center;
  width: 23px;
  height: 23px;
  font-family:
    Apple Color Emoji,
    Segoe UI Emoji,
    Noto Color Emoji,
    sans-serif;
  font-size: 21px;
  line-height: 1;
  display: inline-flex;
}
.phone-control input[type="tel"] {
  width: 100%;
  min-width: 0;
  min-height: 27px;
  line-height: 1.5;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
  border-left: 1px solid #e8e6e1 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  margin: 0 !important;
  padding: 5px 11px !important;
  font-size: 16px !important;
}
.phone-control input::placeholder {
  color: #999791;
  font-size: 14px;
}
.phone-check {
  color: #208464;
  flex: none;
  margin-right: 13px;
}
fieldset:disabled .phone-control {
  opacity: 0.65;
  background: #f5f4f1;
}
.phone-control:has(input:disabled) {
  opacity: 0.65;
  background: #f5f4f1;
}
.phone-field-footer {
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  padding: 7px 3px 0;
  display: flex;
}
.phone-hint,
.phone-error {
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
.phone-hint {
  color: #74716a;
}
.phone-error {
  color: #b52c3d;
}
.phone-extension-add {
  color: #6b6253;
  white-space: nowrap;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 3px;
  padding: 0;
  font-size: 12px;
  display: inline-flex;
}
.phone-extension-add:hover {
  text-decoration: underline;
}
.phone-extension {
  max-width: 180px;
  margin-top: 12px;
}
.phone-extension > label {
  gap: 8px;
  font-size: 13px !important;
  display: flex !important;
}
.phone-extension > div {
  align-items: center;
  gap: 7px;
  display: flex;
}
.phone-extension input {
  margin: 0 !important;
}
.phone-country-popup {
  width: var(--anchor-width) !important;
  color: #2d2926 !important;
  background: #fff !important;
  border: 1px solid #e6e3dd !important;
  border-radius: 14px !important;
  min-width: min(320px, 100vw - 32px) !important;
  max-width: calc(100vw - 32px) !important;
  box-shadow: 0 8px 28px #2d292622 !important;
}
.phone-country-search {
  color: #817d76;
  border-bottom: 1px solid #eeece7;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  display: flex;
}
.phone-country-search [data-slot="input-group"] {
  flex: 1;
  width: 100%;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
}
.phone-country-search input {
  min-width: 0;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
  outline: 0 !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  font-size: 14px !important;
}
.phone-country-popup [data-slot="combobox-list"] {
  max-height: min(290px, var(--available-height));
  padding: 5px;
}
.phone-country-option {
  min-height: 44px;
  border-radius: 7px !important;
  gap: 11px !important;
  padding: 8px 34px 8px 10px !important;
  font-size: 14px !important;
}
.phone-country-option[data-highlighted] {
  color: #2d2926 !important;
  background: #f7f2e7 !important;
}
.phone-country-option > span:nth-child(2) {
  white-space: normal;
  flex: 1;
}
.phone-country-option > small {
  color: #75716a;
  border: 1px solid #e7e4dd;
  border-radius: 12px;
  padding: 1px 7px;
  font-size: 12px;
}
.phone-country-popup [data-slot="combobox-empty"] {
  padding: 18px;
  font-size: 14px;
}
.phone-country-popup [data-slot="combobox-item-indicator"] {
  color: #956919;
}
@media (width<=430px) {
  .phone-country-trigger {
    gap: 5px;
    padding-left: 10px;
    padding-right: 8px;
  }
  .phone-control input[type="tel"] {
    padding-inline: 8px !important;
  }
  .phone-field-footer {
    flex-wrap: wrap;
    gap: 4px 10px;
  }
  .phone-country-option {
    min-height: 48px;
  }
}
.phone-country-positioner {
  z-index: 80;
  isolation: isolate;
}
.phone-country-popup[data-empty] [data-slot="combobox-empty"] {
  display: flex;
}
.phone-country-popup [data-slot="combobox-empty"] {
  display: none;
}
.phone-country-popup [data-slot="combobox-list"] {
  overflow-y: auto;
}
.phone-flag img {
  object-fit: cover;
  border-radius: 50%;
  width: 23px;
  height: 23px;
  display: block;
  box-shadow: 0 0 0 1px #2d292610;
}
.ag-workspace {
  --ag-ink: #2d2926;
  --ag-line: #e0e0d8;
  color: var(--ag-ink);
  font-size: 1rem;
  line-height: 1.5;
}
.ag-dialog.ag-reader-dialog[data-slot="dialog-content"] {
  width: min(900px, 100vw - 32px);
  height: calc(100dvh - 60px);
  max-width: 900px !important;
}
.ag-reader-toolbar {
  background: #fff;
  border-bottom: 1px solid #e4e4dc;
  flex: none;
  align-items: center;
  gap: 20px;
  padding: 10px 28px;
  font-size: 0.8125rem;
  display: flex;
}
.ag-reader-toolbar > span {
  font-weight: 600;
}
.ag-reader-toolbar > a {
  color: #76603b;
  text-underline-offset: 3px;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  text-decoration: underline;
  display: flex;
}
.ag-zoom {
  align-items: center;
  gap: 7px;
  display: flex;
}
.ag-zoom button {
  background: #fff;
  border: 1px solid #e0e1d8;
  border-radius: 5px;
  padding: 7px;
  display: flex;
}
.ag-zoom button:disabled {
  opacity: 0.35;
}
.ag-zoom output {
  text-align: center;
  font-variant-numeric: tabular-nums;
  min-width: 42px;
}
.ag-document-scroll {
  overscroll-behavior: contain;
  background: #eeeee9;
  flex: 1;
  min-height: 0;
  padding: 0 27px 24px;
  overflow: auto;
}
.ag-source-notice {
  color: #6c6e65;
  text-align: center;
  margin: 13px 0;
  font-size: 0.75rem;
  line-height: 1.5;
}
.ag-source-paper {
  color: #252525;
  overflow-wrap: anywhere;
  background: #fff;
  padding: 35px 45px;
  line-height: 1.75;
  box-shadow: 0 2px 8px #26291f0b;
}
.ag-source-brand {
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 22px;
  display: flex;
}
.ag-source-brand img {
  filter: brightness(0);
  width: 133px;
  height: auto;
}
.ag-source-brand > span {
  letter-spacing: 0.11em;
  color: #7d7d74;
  font:
    500 0.625rem/1.4 Inter,
    sans-serif;
}
.ag-source-title {
  border-bottom: 1px solid #c7c7be;
  margin-bottom: 22px;
  padding-bottom: 16px;
  font-family: Inter, sans-serif;
  font-size: 1.18em;
  font-weight: 600;
}
.ag-source-title p {
  margin: 0;
}
.ag-source-title p:has(span:only-child) {
  overflow: hidden;
}
.ag-source-title p:last-child {
  margin-bottom: 0;
}
.ag-source-paper p {
  white-space: pre-wrap;
  margin: 0 0 1em;
  font-family:
    Georgia,
    Times New Roman,
    serif;
}
.ag-source-paper p.ag-source-heading {
  font-weight: 700;
}
.ag-source-paper p.ag-source-list {
  position: relative;
}
.ag-source-marker {
  max-width: 1.5em;
  font-weight: 600;
  position: absolute;
  top: 0;
  left: 0;
}
.ag-source-paper p.ag-source-list .ag-source-marker {
  left: calc(1em * var(--list-indent, 0));
}
.ag-source-footer {
  color: #777;
  border-top: 1px solid #deded6;
  margin-top: 30px;
  padding-top: 13px;
  font-size: 0.75em;
}
.ag-source-footer p {
  margin: 0;
}
.ag-source-table {
  max-width: 100%;
  margin: 20px 0;
  overflow: auto;
}
.ag-source-table table {
  border-collapse: collapse;
  width: 100%;
}
.ag-source-table td {
  vertical-align: top;
  border: 1px solid #d7d7d0;
  padding: 10px;
}
.ag-document-loading {
  color: #72746a;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 15px;
  min-height: 260px;
  font-size: 0.9375rem;
  display: flex;
}
.ag-spinner {
  animation: 1s linear infinite ag-spin;
}
@keyframes ag-spin {
  to {
    transform: rotate(360deg);
  }
}
.ag-signing-identity {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  display: flex;
}
.ag-signing-identity > span {
  letter-spacing: 0.09em;
  color: #797b70;
  font-size: 0.6875rem;
}
.ag-signing-identity strong {
  font-weight: 600;
}
.ag-signing-identity small {
  color: #77796e;
  margin-left: auto;
  font-size: 0.8125rem;
}
.ag-sign-list {
  background: #f0f1e9;
  border: 1px solid #e4e5dc;
  border-radius: 7px;
  margin-bottom: 20px;
}
.ag-sign-list summary {
  cursor: pointer;
  padding: 10px 13px;
  font-size: 0.875rem;
  font-weight: 500;
}
.ag-sign-list summary > span {
  float: right;
  color: #777;
}
.ag-sign-list ul {
  max-height: 135px;
  margin: 0;
  padding-top: 0;
}
.ag-sign-method {
  background: #eaece3;
  border-radius: 8px;
  gap: 4px;
  margin-bottom: 12px;
  padding: 4px;
  display: flex;
}
.ag-sign-method button {
  color: #696d5f;
  border-radius: 5px;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 8px;
  font-size: 0.875rem;
  font-weight: 600;
  display: flex;
}
.ag-sign-method button[aria-selected="true"] {
  color: #2d2926;
  background: #fff;
  box-shadow: 0 1px 4px #28351f16;
}
.ag-canvas-wrap {
  background: #fff;
  border: 1px solid #d0d4c4;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
}
.ag-canvas-wrap canvas {
  touch-action: none;
  cursor: crosshair;
  z-index: 2;
  width: 100%;
  height: 165px;
  display: block;
  position: relative;
}
.ag-draw-placeholder {
  text-align: center;
  pointer-events: none;
  color: #a4a89b;
  font:
    italic 24px Georgia,
    serif;
  position: absolute;
  inset: 35% 0 auto;
}
.ag-signature-baseline {
  pointer-events: none;
  border-top: 1px dashed #dce0d3;
  position: absolute;
  bottom: 35px;
  left: 25px;
  right: 25px;
}
.ag-draw-tools {
  color: #797d70;
  align-items: center;
  gap: 14px;
  margin: 8px 0 22px;
  font-size: 0.75rem;
  display: flex;
}
.ag-draw-tools > span {
  margin-right: auto;
}
.ag-draw-tools button {
  color: #696c60;
  align-items: center;
  gap: 5px;
  padding: 5px 0;
  display: flex;
}
.ag-draw-tools button:disabled {
  opacity: 0.4;
}
.ag-type-field input {
  background: #fff;
  border: 1px solid #c9ccbc;
  border-radius: 6px;
  width: 100%;
  min-height: 46px;
  padding: 10px 13px;
  font-size: 1rem;
  display: block;
}
.ag-type-preview {
  overflow-wrap: anywhere;
  background: #fff;
  border: 1px solid #e0e3d6;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  min-height: 95px;
  margin-top: 12px;
  display: flex;
}
.ag-typed-signature {
  color: #27384b;
  overflow-wrap: anywhere;
  font:
    italic 32px/1.5 Brush Script MT,
    Segoe Script,
    cursive;
  display: block;
}
.ag-signature-image {
  object-fit: contain;
  object-position: left center;
  width: 260px;
  max-width: 100%;
  height: 80px;
  display: block;
}
.ag-signed-stamp {
  border-top: 1px dashed #cbd9c4;
  margin-top: 30px;
  padding-top: 20px;
}
.ag-source-paper .ag-signed-stamp {
  font-family: Inter, sans-serif;
}
@media (width<=700px) {
  .ag-dialog.ag-reader-dialog[data-slot="dialog-content"] {
    width: calc(100vw - 20px);
    height: calc(100dvh - 20px);
  }
  .ag-reader-toolbar {
    flex-wrap: wrap;
    gap: 10px;
    padding: 9px 13px;
  }
  .ag-reader-toolbar > span {
    display: none;
  }
  .ag-document-scroll {
    padding: 0 10px 16px;
  }
  .ag-source-paper {
    padding: 24px 19px;
  }
  .ag-source-brand img {
    width: 110px;
  }
  .ag-source-brand > span {
    font-size: 0.55rem;
  }
  .ag-source-notice {
    font-size: 0.7rem;
  }
  .ag-canvas-wrap canvas {
    height: 155px;
  }
  .ag-draw-placeholder {
    font-size: 21px;
  }
  .ag-signing-identity {
    gap: 7px;
  }
  .ag-signing-identity > span {
    width: 100%;
  }
}
.ag-packet-header {
  border: 1px solid var(--ag-line);
  background: #fff;
  border-radius: 12px;
  align-items: center;
  gap: 18px;
  padding: 25px 27px 30px;
  display: flex;
  position: relative;
  overflow: hidden;
}
.ag-packet-icon,
.ag-sign-panel-icon {
  color: #926115;
  background: #fff2d8;
  border-radius: 12px;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  display: flex;
}
.ag-eyebrow {
  letter-spacing: 0.08em;
  color: #726953;
  margin-bottom: 5px;
  font-size: 0.75rem;
  font-weight: 600;
  display: block;
}
.ag-packet-header h2 {
  margin: 0 0 4px;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.3;
}
.ag-packet-header p {
  color: #6a6c62;
  margin: 0;
  font-size: 0.875rem;
}
.ag-count {
  text-align: right;
  color: #6a6c62;
  flex-direction: column;
  flex: none;
  margin-left: auto;
  font-size: 0.875rem;
  display: flex;
}
.ag-count strong {
  color: #2d2926;
  font-size: 1.65rem;
  font-weight: 600;
  line-height: 1.2;
}
.ag-count strong span {
  color: #8b8d83;
  font-size: 1.125rem;
  font-weight: 400;
}
.ag-packet-header progress {
  appearance: none;
  background: #eeeee8;
  border: 0;
  width: 100%;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.ag-packet-header progress::-webkit-progress-bar {
  background: #eeeee8;
}
.ag-packet-header progress::-webkit-progress-value {
  background: #b78128;
}
.ag-packet-header progress::-moz-progress-bar {
  background: #b78128;
}
.ag-demo-note {
  color: #6b6e64;
  align-items: flex-start;
  gap: 9px;
  margin: 17px 0 25px;
  display: flex;
}
.ag-demo-note svg {
  flex: none;
  margin-top: 2px;
}
.ag-demo-note p {
  margin: 0;
  font-size: 0.875rem;
}
.ag-group {
  margin-top: 23px;
}
.ag-group-heading {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
  display: flex;
}
.ag-group-heading h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
}
.ag-group-heading > span {
  color: #777b70;
  font-size: 0.875rem;
}
.ag-row {
  border: 1px solid var(--ag-line);
  background: #fff;
  border-bottom: 0;
  align-items: center;
  gap: 15px;
  padding: 16px 19px;
  display: flex;
}
.ag-row:nth-child(2) {
  border-radius: 10px 10px 0 0;
}
.ag-row:last-child {
  border-bottom: 1px solid var(--ag-line);
  border-radius: 0 0 10px 10px;
}
.ag-row:nth-child(2):last-child {
  border-radius: 10px;
}
.ag-row-icon {
  color: #8b8d82;
  flex: none;
  display: flex;
}
.ag-row-icon.is-signed {
  color: #50724d;
}
.ag-row-copy {
  flex: 1;
  min-width: 0;
}
.ag-row-copy h4 {
  margin: 0 0 3px;
  font-size: 1rem;
  font-weight: 550;
  line-height: 1.4;
}
.ag-row-copy p {
  color: #77796f;
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
}
.ag-row-copy small {
  color: #82632f;
  margin-top: 6px;
  font-size: 0.75rem;
  display: block;
}
.ag-status {
  white-space: nowrap;
  color: #7b7a70;
  background: #f2f2ee;
  border-radius: 5px;
  padding: 3px 8px;
  font-size: 0.8125rem;
}
.ag-status.reviewed {
  color: #7b591a;
  background: #fff3dd;
}
.ag-status.signed {
  color: #3d653b;
  background: #edf3eb;
}
.ag-row > .btn {
  white-space: nowrap;
  gap: 9px;
  min-height: 38px;
  padding: 8px 12px;
  font-size: 0.875rem;
}
.ag-sign-panel {
  background: #f6f3ec;
  border: 1px solid #dfd9ca;
  border-radius: 12px;
  align-items: center;
  gap: 17px;
  margin-top: 26px;
  padding: 23px;
  display: flex;
}
.ag-sign-panel > div:nth-child(2) {
  flex: 1;
}
.ag-sign-panel h3 {
  margin: 0 0 6px;
  font-size: 1.0625rem;
  font-weight: 600;
}
.ag-sign-panel p {
  color: #6d6b62;
  max-width: 600px;
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.6;
}
.ag-sign-panel .btn {
  flex: none;
  gap: 9px;
  min-height: 42px;
  font-size: 0.875rem;
}
.ag-sign-panel.complete {
  background: #f1f5ee;
  border-color: #d6e1cf;
}
.ag-sign-panel.complete .ag-sign-panel-icon {
  color: #50724d;
  background: #e5eedf;
}
.ag-workspace .btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.ag-dialog[data-slot="dialog-content"] {
  color: #2d2926;
  background: #f9f9f5;
  flex-direction: column;
  gap: 0;
  width: min(780px, 100vw - 32px);
  max-height: calc(100dvh - 40px);
  padding: 0;
  display: flex;
  overflow: hidden;
  max-width: 780px !important;
}
.ag-dialog [data-slot="dialog-header"] {
  text-align: left;
  border-bottom: 1px solid #e3e3da;
  flex: none;
  padding: 26px 52px 20px 28px;
}
.ag-dialog [data-slot="dialog-title"] {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
}
.ag-dialog [data-slot="dialog-description"] {
  color: #77796e;
  font-size: 0.875rem;
  line-height: 1.5;
}
.ag-paper {
  overscroll-behavior: contain;
  background: #fff;
  border: 1px solid #e3e1d6;
  border-radius: 5px;
  min-height: 0;
  margin: 20px 28px;
  padding: 30px;
  overflow: auto;
}
.ag-paper-brand {
  border-bottom: 2px solid #d99a2d;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding-bottom: 17px;
  display: flex;
}
.ag-paper-brand strong {
  letter-spacing: 0.15em;
  font-size: 1.125rem;
}
.ag-paper-brand span {
  letter-spacing: 0.08em;
  color: #9a742a;
  font-size: 0.75rem;
}
.ag-paper h2 {
  margin: 23px 0 9px;
  font-size: 1.5rem;
  font-weight: 550;
  line-height: 1.3;
}
.ag-paper-intro {
  color: #66685f;
  font-size: 1rem;
  line-height: 1.65;
}
.ag-prefill {
  border-block: 1px solid #e6e6de;
  grid-template-columns: 1fr 1fr;
  gap: 16px 24px;
  margin: 20px 0;
  padding: 20px 0;
  display: grid;
}
.ag-prefill dt {
  color: #7a7c71;
  margin-bottom: 4px;
  font-size: 0.8125rem;
}
.ag-prefill dd {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 500;
}
.ag-paper h3 {
  margin-bottom: 10px;
  font-size: 1rem;
  font-weight: 600;
}
.ag-paper ol {
  padding-left: 22px;
  font-size: 1rem;
  line-height: 1.9;
}
.ag-preview-explanation {
  color: #6a6c62;
  background: #f6f5f0;
  border-radius: 5px;
  margin-top: 20px;
  padding: 15px 17px;
  font-size: 0.875rem;
  line-height: 1.7;
}
.ag-dialog-footer {
  background: #fff;
  border-top: 1px solid #e3e3da;
  flex: none;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 18px 28px;
  display: flex;
}
.ag-dialog-footer .btn {
  gap: 9px;
  min-height: 43px;
  font-size: 0.875rem;
}
.ag-dialog-footer .btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.ag-signed-stamp {
  color: #4f7046;
  gap: 10px;
  padding: 16px 0 0;
  font-size: 0.875rem;
  display: flex;
}
.ag-signed-stamp span {
  margin-top: 4px;
  font-size: 0.8125rem;
  display: block;
}
.ag-sign-dialog[data-slot="dialog-content"] {
  max-width: 630px !important;
}
.ag-sign-content {
  padding: 22px 28px;
  font-size: 1rem;
  line-height: 1.65;
  overflow: auto;
}
.ag-sign-content > p {
  margin: 0 0 14px;
}
.ag-sign-content ul {
  background: #f0f1e9;
  border-radius: 7px;
  max-height: 180px;
  margin: 0 0 24px;
  padding: 14px 16px;
  list-style: none;
  overflow: auto;
}
.ag-sign-content li {
  align-items: flex-start;
  gap: 9px;
  margin: 6px 0;
  font-size: 0.875rem;
  display: flex;
}
.ag-sign-content li svg {
  color: #6f7c5e;
  flex: none;
  margin-top: 4px;
}
.ag-name-label {
  margin-bottom: 7px;
  font-size: 0.875rem;
  font-weight: 550;
  display: block;
}
.ag-sign-content > input {
  color: #2d2926;
  background: #fff;
  border: 1px solid #c9ccbc;
  border-radius: 6px;
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  font-size: 1.125rem;
  display: block;
}
.ag-name-hint {
  color: #77796f;
  font-size: 0.8125rem;
  margin: 7px 0 20px !important;
}
.ag-consent {
  cursor: pointer;
  gap: 10px;
  font-size: 0.9375rem;
  line-height: 1.65;
  display: flex;
}
.ag-consent input {
  accent-color: #94703a;
  flex: none;
  width: 18px;
  height: 18px;
  margin-top: 3px;
}
.ag-sign-error {
  color: #a33d31;
  background: #fff0ed;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 0.875rem;
  margin: 13px 0 0 !important;
}
.ag-hold {
  background: #fff6e5;
  border-radius: 9px;
  align-items: center;
  gap: 12px;
  padding: 22px;
  display: flex;
}
.ag-hold p {
  flex: 1;
}
.ag-hold a {
  font-size: 0.875rem;
  text-decoration: underline;
}
.ag-change-note {
  background: #fff6e5;
  border-radius: 6px;
  padding: 13px;
  font-size: 0.875rem;
}
.ag-summary {
  background: #fff;
  border: 1px solid #dfe1d5;
  border-radius: 10px;
  align-items: center;
  gap: 15px;
  margin: 22px 0;
  padding: 22px;
  display: flex;
}
.ag-summary > svg {
  color: #94723b;
  flex: none;
}
.ag-summary > div {
  flex: 1;
}
.ag-summary h3 {
  margin: 0 0 4px;
  font-size: 1rem;
  font-weight: 600;
}
.ag-summary p {
  color: #6e7364;
  margin: 0;
  font-size: 0.875rem;
}
.ag-summary small {
  color: #77796f;
  margin-top: 5px;
  font-size: 0.8125rem;
  display: block;
}
.ag-summary .text-button {
  align-items: center;
  gap: 7px;
  font-size: 0.875rem;
  display: flex;
}
.ob-demo-scenario {
  flex: none;
  align-items: center;
  gap: 8px;
  font-size: 0.8125rem;
  display: flex;
}
.ob-demo-scenario select {
  color: #3c4232;
  max-width: 240px;
  font: inherit;
  background: #fff;
  border: 1px solid #d6d9c8;
  border-radius: 5px;
  padding: 6px 9px;
}
.ob-demo-bar {
  flex-wrap: wrap;
  gap: 12px;
}
.ob-demo-bar > span {
  flex: 1;
  min-width: 240px;
}
.ob-steps {
  overflow-x: auto;
}
.ob-steps button {
  flex-shrink: 0;
}
@media (width<=700px) {
  .ag-packet-header {
    gap: 12px;
    padding: 20px 17px 23px;
  }
  .ag-packet-icon {
    display: none;
  }
  .ag-packet-header h2 {
    font-size: 1.125rem;
  }
  .ag-eyebrow {
    letter-spacing: 0.04em;
    font-size: 0.75rem;
  }
  .ag-count strong {
    font-size: 1.375rem;
  }
  .ag-count > span {
    font-size: 0.75rem;
  }
  .ag-row {
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 10px;
    padding: 16px 13px;
    display: grid;
  }
  .ag-row-icon {
    align-self: start;
    margin-top: 3px;
  }
  .ag-row-copy {
    grid-column: 2/4;
  }
  .ag-row-copy h4 {
    font-size: 0.9375rem;
  }
  .ag-row-copy p {
    font-size: 0.875rem;
  }
  .ag-status {
    grid-column: 2;
    justify-self: start;
  }
  .ag-row > .btn {
    grid-area: 2/3;
  }
  .ag-group-heading > span {
    text-align: right;
    font-size: 0.8125rem;
  }
  .ag-sign-panel {
    flex-wrap: wrap;
    padding: 18px;
  }
  .ag-sign-panel-icon {
    display: none;
  }
  .ag-sign-panel > .btn {
    justify-content: center;
    width: 100%;
    margin-top: 5px;
  }
  .ag-dialog[data-slot="dialog-content"] {
    width: calc(100vw - 20px);
    max-height: calc(100dvh - 20px);
  }
  .ag-dialog [data-slot="dialog-header"] {
    padding: 20px 42px 17px 19px;
  }
  .ag-paper {
    margin: 13px;
    padding: 20px;
  }
  .ag-paper h2 {
    font-size: 1.25rem;
  }
  .ag-prefill {
    gap: 13px;
  }
  .ag-dialog-footer {
    flex-wrap: wrap;
    padding: 15px;
  }
  .ag-dialog-footer .btn {
    white-space: normal;
    flex: 1;
    justify-content: center;
  }
  .ag-sign-content {
    padding: 20px;
  }
  .ag-summary {
    flex-wrap: wrap;
    padding: 18px;
  }
  .ag-summary > div {
    min-width: calc(100% - 45px);
  }
  .ag-summary .text-button {
    margin-left: 37px;
  }
  .ob-demo-scenario {
    flex-wrap: wrap;
  }
  .ob-demo-scenario select {
    max-width: 100%;
    font-size: 0.875rem;
  }
  .ag-hold {
    flex-wrap: wrap;
  }
  .ag-hold p {
    min-width: 70%;
  }
}
@font-face {
  font-family: Inter;
  src: url(/brand/inter.ttf) format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Satoshi;
  src: url(/brand/satoshi-bold.otf) format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
:root {
  --background: #f6f6f5;
  --foreground: #2d2926;
  --card: #fff;
  --card-foreground: #2d2926;
  --primary: #ffa400;
  --primary-foreground: #2d2926;
  --secondary: #eeefed;
  --secondary-foreground: #424643;
  --muted: #f2f3f1;
  --muted-foreground: #707372;
  --accent: #fff3dc;
  --accent-foreground: #2d2926;
  --border: #e1e2df;
  --input: #c6c6c7;
  --ring: #ffa400;
  --sidebar: #2d2926;
  --sidebar-foreground: #fff;
  --sidebar-accent: #42403c;
  --sidebar-accent-foreground: #fff;
  --sidebar-border: #46433f;
  --radius: 0.4rem;
  --font-sans: Inter, Arial, sans-serif;
  --brand-gold: #ffa400;
  --brand-black: #2d2926;
}
body {
  background: var(--background);
  color: var(--foreground);
  -webkit-font-smoothing: antialiased;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
}
button,
input,
textarea,
select {
  font-family: inherit;
}
button,
a,
input,
select,
textarea {
  outline-offset: 3px;
}
button:focus-visible,
a:focus-visible {
  outline: 2px solid #ffa400;
}
h1,
h2,
h3 {
  color: #2d2926;
}
h1 {
  font-family: Satoshi, Inter, sans-serif !important;
  font-weight: 700 !important;
}
.core-main {
  background: #f6f6f5;
  min-width: 0;
}
.core-sidebar [data-sidebar="sidebar"],
.core-sidebar [data-slot="sidebar-inner"] {
  background: #2d2926;
}
.core-sidebar [data-slot="sidebar-header"] {
  padding: 34px 26px 28px;
}
.core-brand {
  text-align: left;
  color: #fff;
  align-items: center;
  gap: 11px;
  min-width: 0;
  display: flex;
}
.core-mark {
  color: #ffa400;
  flex: none;
  width: 34px;
  height: 34px;
}
.core-brand-lockup {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}
.core-brand-lockup > strong {
  letter-spacing: 0.1em;
  font:
    700 29px/1 Satoshi,
    Inter,
    sans-serif;
}
.core-brand-by {
  align-items: center;
  gap: 6px;
  display: flex;
}
.core-brand-by > span {
  color: #c6c6c7;
  font:
    400 11px/1 Inter,
    sans-serif;
}
.core-brand-by .vekend-wordmark {
  object-fit: contain;
  width: 82px;
  height: 15px;
  display: block;
}
.core-loading-brand .core-brand-lockup {
  color: #2d2926;
}
.core-loading-brand .core-brand-by > span {
  color: #707372;
}
.core-loading-brand .vekend-wordmark {
  filter: brightness(0);
}
.core-nav-group {
  margin: 0 13px 24px;
}
.core-sidebar .nav-caption {
  color: #a9abaa;
  letter-spacing: 0.17em;
  padding: 10px 13px 12px;
  font-size: 12px;
  font-weight: 600;
}
.core-sidebar [data-slot="sidebar-menu"] {
  gap: 5px;
}
.core-sidebar [data-slot="sidebar-menu-button"] {
  color: #c6c6c7;
  height: 42px;
  box-shadow: none;
  border: 0;
  border-radius: 4px;
  padding: 0 13px;
  font-size: 13px;
  font-weight: 450;
  position: relative;
}
.core-sidebar [data-slot="sidebar-menu-button"] > svg {
  stroke-width: 1.6px;
  width: 17px;
  height: 17px;
}
.core-sidebar [data-slot="sidebar-menu-button"]:hover {
  color: #fff;
  background: #37332f;
}
.core-sidebar [data-slot="sidebar-menu-button"][data-active="true"] {
  color: #ffbe4b;
  box-shadow: none;
  background: #42392b;
  border: 0;
  font-weight: 550;
}
.core-sidebar [data-slot="sidebar-menu-button"][data-active="true"]:before {
  content: "";
  background: #ffa400;
  border-radius: 1px;
  width: 2px;
  position: absolute;
  top: 11px;
  bottom: 11px;
  left: 0;
}
.core-sidebar .nav-count {
  color: #2d2926;
  background: #ffa400;
  border-radius: 3px;
  margin-left: auto;
  padding: 2px 6px;
  font-size: 12px;
}
.core-sidebar [data-slot="sidebar-footer"] {
  gap: 15px;
  padding: 14px 24px 25px;
}
.core-sidebar-note {
  border-top: 1px solid #48433f;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 25px 3px 0;
  display: flex;
}
.core-sidebar-note img {
  object-fit: contain;
  object-position: left;
  width: 139px;
  height: auto;
  max-height: 47px;
}
.core-sidebar-note > span {
  letter-spacing: 0.23em;
  color: #a9abaa;
  font-size: 12px;
}
.core-return {
  color: #ddd;
  align-items: center;
  gap: 9px;
  padding: 8px 0;
  font-size: 12px;
  display: flex;
}
.topbar {
  background: #fff;
  border-bottom: 1px solid #e1e2df;
  height: 71px;
  padding: 0 34px;
}
.breadcrumbs {
  color: #707372;
  gap: 12px;
  font-size: 12px;
}
.breadcrumbs > span:first-of-type {
  letter-spacing: 0.08em;
  color: #2d2926;
  font-weight: 600;
}
.breadcrumbs strong {
  color: #2d2926;
  font-weight: 500;
}
.top-right {
  gap: 20px;
}
.environment-label {
  color: #707372;
  letter-spacing: 0.1em;
  border: 1px solid #dededb;
  border-radius: 3px;
  padding: 4px 6px;
  font-size: 12px;
  font-weight: 600;
}
.save-status {
  color: #707372;
  font-size: 12px;
}
.save-status svg {
  color: #707372;
}
.core-account {
  text-align: left;
  border-radius: 5px;
  align-items: center;
  gap: 9px;
  padding: 5px;
  display: flex;
}
.core-account:hover {
  background: #f5f5f3;
}
.core-account strong {
  color: #2d2926;
  font-size: 12px;
  font-weight: 600;
  display: block;
}
.core-account small {
  color: #707372;
  margin-top: 3px;
  font-size: 12px;
  display: block;
}
.core-account .avatar {
  color: #5d482d;
  background: #f0e9dc;
  border: 1px solid #e7dcc5;
  width: 33px;
  height: 33px;
  font-size: 12px;
}
.core-account-menu {
  min-width: 235px;
}
.core-menu-note {
  color: #707372;
  font-size: 12px;
  font-weight: 400;
}
.core-preview-strip {
  color: #6a4a18;
  background: #fff3dc;
  border-color: #f0dbb5;
  font-size: 12px;
}
.core-preview-strip button {
  color: #594523;
}
.core-preview-strip .prototype-pill {
  color: #594523;
  background: #ffe1a6;
}
.workspace {
  max-width: 1700px;
  margin: 0 auto;
  padding: 32px 34px 0;
}
.page-heading {
  align-items: center;
  gap: 20px;
  margin-bottom: 29px;
}
.page-heading h1 {
  letter-spacing: -0.04em;
  font-size: 30px;
  line-height: 1.2;
}
.eyebrow {
  letter-spacing: 0.16em;
  margin-bottom: 9px;
  font-weight: 600;
  color: #707372 !important;
  font-size: 12px !important;
}
.lead {
  color: #707372 !important;
  margin-top: 8px !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}
.heading-actions {
  padding: 0;
}
.core-back {
  margin-bottom: 14px;
}
.btn {
  min-height: 37px;
  box-shadow: none;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 550;
}
.btn.primary {
  color: #2d2926;
  background: #ffa400;
  border: 1px solid #ffa400;
  box-shadow: 0 1px 2px #2d292610;
}
.btn.primary:hover:not(:disabled) {
  background: #ec9900;
  border-color: #ec9900;
}
.btn.outline {
  color: #424643;
  background: #fff;
  border: 1px solid #d5d6d3;
  box-shadow: 0 1px 2px #2d292605;
}
.btn.outline:hover:not(:disabled) {
  color: #2d2926;
  background: #f5f5f2;
  border-color: #a9abaa;
}
.btn:disabled {
  opacity: 0.45;
}
.text-button {
  color: #5c492b;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  display: inline-flex;
}
.text-button:hover {
  color: #2d2926;
}
.text-button.danger {
  color: #a33a30;
}
.icon-button {
  color: #707372;
  border-radius: 4px;
}
.icon-button:hover {
  color: #2d2926;
  background: #fff3dc;
  border-color: #f5d594;
}
.panel {
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px 5px #2d292603;
}
.core-main .panel + .panel {
  margin-top: 22px;
}
.core-main
  :is(
    .core-two,
    .company-overview,
    .hr-section-stack,
    .sent-invoice-detail,
    .import-review-columns
  )
  > .panel
  + .panel {
  margin-top: 0;
}
.core-panel-pad {
  padding: 26px;
}
.panel h2 {
  letter-spacing: -0.02em;
  font-size: 15px;
  font-weight: 600;
}
.core-muted {
  color: #707372;
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.7;
}
.panel-heading {
  padding: 22px 24px;
}
.section-heading h2 {
  font-size: 15px;
}
.core-two {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 22px;
  display: grid;
}
.core-two > .panel {
  margin: 0;
}
.core-facts {
  grid-template-columns: 1fr 1fr;
  gap: 26px 30px;
  margin: 25px 0;
  display: grid;
}
.core-fact > span {
  color: #707372;
  margin-bottom: 7px;
  font-size: 12px;
  display: block;
}
.core-fact strong {
  overflow-wrap: anywhere;
  color: #2d2926;
  font-size: 13px;
  font-weight: 550;
}
.core-profile-head {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 25px 28px;
  display: flex;
}
.core-profile-head .person .avatar {
  width: 48px;
  height: 48px;
  font-size: 17px;
}
.core-profile-head .person strong {
  font-family: Satoshi, Inter, sans-serif;
  font-size: 21px;
  font-weight: 700;
}
.core-profile-head .person small {
  margin-top: 6px;
  font-size: 12px;
}
.core-profile-head h2 {
  font:
    700 21px Satoshi,
    Inter,
    sans-serif;
}
.core-profile-head .core-muted {
  margin-top: 7px;
}
.avatar,
.avatar.alt-0,
.avatar.alt-1,
.avatar.alt-2,
.avatar.alt-3,
.avatar.alt-4 {
  border: 1px solid #e9e5dc;
  color: #665944 !important;
  background: #efede8 !important;
}
.person strong {
  color: #2d2926;
  font-size: 13px;
  font-weight: 550;
}
.person small {
  color: #707372;
  font-size: 12px;
}
.person .avatar {
  width: 34px;
  height: 34px;
  font-size: 12px;
}
.row-person {
  text-align: left;
}
.cell-sub {
  margin-top: 4px;
  line-height: 1.55;
  display: block;
  color: #707372 !important;
  font-size: 12px !important;
}
.number,
.tabular-number {
  font-variant-numeric: tabular-nums;
  color: #2d2926;
  font-weight: 550;
}
.tabular-number small {
  color: #707372;
  font-weight: 400;
}
.table-tools {
  border-bottom: 1px solid #e8e9e6;
  gap: 12px;
  padding: 20px 23px;
}
.table-caption {
  color: #707372;
  padding: 12px 24px;
  font-size: 12px;
}
.searchbox {
  color: #8c8e8e;
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 4px;
  min-width: 210px;
  max-width: 310px;
  height: 36px;
}
.searchbox input {
  color: #424643;
  font-size: 12px;
}
.searchbox input::placeholder {
  color: #8c8e8e;
}
.pick,
[data-slot="select-trigger"] {
  background: #fff;
  border-radius: 4px;
  min-height: 36px;
  font-size: 12px;
  color: #424643 !important;
  border-color: #d5d6d3 !important;
}
.core-table-wrap {
  width: 100%;
  overflow-x: auto;
}
.core-table {
  border-collapse: collapse;
  text-align: left;
  width: 100%;
  font-size: 12px;
}
.core-table th {
  color: #707372;
  white-space: nowrap;
  background: #f8f8f6;
  border-block: 1px solid #e9eae7;
  padding: 12px 20px;
  font-size: 12px;
  font-weight: 550;
}
.core-table td {
  vertical-align: middle;
  border-bottom: 1px solid #edeeea;
  min-width: 82px;
  padding: 19px 20px;
  line-height: 1.55;
}
.core-table td:first-child {
  min-width: 210px;
}
.core-table tr:last-child td {
  border-bottom: 0;
}
.core-table tr:hover td {
  background: #fffdf7;
}
.core-table td .text-button {
  text-align: left;
}
.core-table td .person {
  min-width: 190px;
}
.core-table td .person small,
.core-table .tag {
  white-space: nowrap;
}
[data-slot="table-head"] {
  background: #f8f8f6;
  border-color: #e9eae7;
  padding: 12px 19px;
  font-size: 12px;
  color: #707372 !important;
}
[data-slot="table-cell"] {
  color: #424643;
  padding: 18px 19px;
  font-size: 12px;
}
[data-slot="table-row"] {
  border-color: #e9eae7;
}
[data-slot="table-row"]:hover {
  background: #fffdf7;
}
.tag {
  letter-spacing: 0;
  border-radius: 4px;
  padding: 4px 7px;
  font-weight: 500;
  font-size: 12px !important;
}
.tag.gray {
  color: #707372;
  background: #eeefed;
}
.tag.blue {
  color: #003b5c;
  background: #eaf1f5;
}
.tag.amber {
  color: #855a0b;
  background: #fff3dc;
}
.tag.green {
  color: #287243;
  background: #e9f4ec;
}
.tag.red {
  color: #a23b2e;
  background: #fceeea;
}
.core-tabs {
  margin: 22px 0;
}
.core-tabs [data-slot="tabs-list"] {
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 44px;
  box-shadow: none;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #dedfdb;
  border-radius: 0;
  justify-content: flex-start;
  gap: 26px;
  padding: 0;
  display: flex;
  overflow-x: auto;
}
.core-tabs [data-slot="tabs-trigger"] {
  box-shadow: none;
  color: #707372;
  background: 0 0;
  border: 0;
  border-bottom: 2px solid #0000;
  border-radius: 0;
  flex: none;
  padding: 13px 1px;
  font-size: 12px;
}
.core-tabs [data-slot="tabs-trigger"][data-state="active"] {
  color: #2d2926;
  box-shadow: none;
  background: 0 0;
  border-bottom-color: #ffa400;
  font-weight: 600;
}
.core-tab-actions {
  justify-content: flex-end;
  margin-bottom: 18px;
  display: flex;
}
.review-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
  margin-bottom: 27px;
  display: grid;
}
.review-summary > button {
  text-align: left;
  color: #707372;
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 5px;
  grid-template-columns: 1fr auto;
  gap: 5px;
  padding: 20px 22px 18px;
  display: grid;
  position: relative;
}
.review-summary > button:hover {
  border-color: #c6c6c7;
}
.review-summary > button.selected {
  background: #fffdf6;
  border-color: #e3c078;
  box-shadow: inset 0 3px #ffa400;
}
.review-summary strong {
  color: #2d2926;
  letter-spacing: -0.06em;
  font-variant-numeric: tabular-nums;
  grid-column: 1;
  font:
    500 34px/1.2 Inter,
    sans-serif;
}
.review-summary > button > span:last-of-type {
  margin-top: 5px;
  font-size: 12px;
}
.review-summary > button > svg {
  color: #707372;
  grid-area: 3/2;
  align-self: center;
}
.summary-index {
  letter-spacing: 0.13em;
  color: #8c8e8e;
  font:
    500 12px Inter,
    sans-serif;
}
.queue-toolbar {
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  padding: 21px 22px;
  display: flex;
}
.queue-title {
  align-items: center;
  gap: 9px;
  margin-right: auto;
  display: flex;
}
.queue-title > svg {
  color: #707372;
  stroke-width: 1.6px;
}
.queue-title > span {
  color: #707372;
  border: 1px solid #e1e2df;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 12px;
}
.queue-toolbar > h2 {
  margin-right: auto;
}
.queue-toolbar .searchbox {
  flex: 1;
}
.queue-toolbar .pick {
  width: auto;
  min-width: 165px;
}
.queue-panel .core-table td,
.queue-panel .core-table th {
  padding-inline: 17px;
}
.queue-panel .core-table td:first-child {
  min-width: 210px;
}
.queue-panel .core-table td:last-child {
  min-width: 87px;
}
.queue-foot {
  color: #707372;
  background: #fcfcfa;
  border-top: 1px solid #e9eae7;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 15px 22px;
  font-size: 12px;
  display: flex;
}
.queue-foot > span {
  align-items: center;
  gap: 7px;
  display: flex;
}
.open-review {
  white-space: nowrap;
  color: #5d4930;
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  font-size: 12px;
  font-weight: 550;
  display: inline-flex;
}
.open-review:hover {
  color: #2d2926;
  text-decoration: underline;
}
.review-status {
  white-space: nowrap;
  color: #707372;
  background: #f7f7f4;
  border: 1px solid #e4e5e1;
  border-radius: 4px;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}
.review-status i {
  background: currentColor;
  border-radius: 50%;
  width: 5px;
  height: 5px;
}
.review-status.ready {
  color: #785313;
  background: #fff5df;
  border-color: #f3dfb3;
}
.review-status.approved {
  color: #39784b;
  background: #eef6f0;
  border-color: #dcebdd;
}
.review-status.returned {
  color: #a14931;
  background: #fff0eb;
  border-color: #f2ded5;
}
.document-indicator {
  color: #707372;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  display: inline-flex;
}
.missing {
  color: #a15b2a;
}
.muted-cell {
  color: #8c8e8e;
  font-size: 12px;
}
.review-workspace {
  max-width: none;
  padding: 26px 28px 0;
}
.review-workspace .page-heading {
  margin-bottom: 12px;
}
.review-workspace .page-heading h1 {
  font-size: 27px;
}
.review-back {
  margin: 0 0 18px;
  font-size: 12px;
}
.review-identity {
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 5px;
  align-items: center;
  gap: 25px;
  margin-bottom: 21px;
  padding: 21px 24px;
  display: flex;
}
.review-identity > .person {
  min-width: 190px;
  margin-right: auto;
}
.review-identity > .review-status {
  margin-left: auto;
}
.review-period {
  white-space: nowrap;
  border-left: 1px solid #e9eae7;
  padding-left: 24px;
}
.review-period > span {
  color: #707372;
  margin-bottom: 6px;
  font-size: 12px;
  display: block;
}
.review-period strong {
  color: #2d2926;
  font-variant-numeric: tabular-nums;
  font-size: 13px;
  font-weight: 550;
}
.review-last-note {
  color: #765220;
  background: #fff3dc;
  border: 1px solid #f1dfba;
  border-radius: 4px;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 18px;
  padding: 15px 18px;
  font-size: 12px;
  display: flex;
}
.review-last-note strong {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 5px;
  font-size: 12px;
  display: block;
}
.review-columns {
  grid-template-columns: minmax(255px, 0.88fr) minmax(320px, 1.16fr) minmax(
      335px,
      1.16fr
    );
  align-items: stretch;
  gap: 15px;
  min-width: 0;
  display: grid;
}
.review-pane {
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 5px;
  flex-direction: column;
  min-width: 0;
  height: clamp(620px, 100vh - 330px, 920px);
  display: flex;
  overflow: hidden;
}
.review-pane > header {
  border-bottom: 1px solid #e5e6e2;
  flex: none;
  align-items: center;
  gap: 11px;
  min-height: 75px;
  padding: 19px 18px;
  display: flex;
}
.review-pane > header h2 {
  font-size: 13px;
  font-weight: 600;
}
.review-pane > header p {
  color: #707372;
  margin-top: 4px;
  font-size: 12px;
}
.pane-number {
  color: #785313;
  background: #fff9ef;
  border: 1px solid #eadbbf;
  border-radius: 4px;
  place-items: center;
  width: 27px;
  height: 27px;
  font:
    600 12px Inter,
    sans-serif;
  display: grid;
}
.review-pane > header > svg {
  color: #8c8e8e;
  stroke-width: 1.5px;
  margin-left: auto;
}
.pane-source {
  letter-spacing: 0.15em;
  color: #8c8e8e;
  margin-left: auto;
  font:
    600 12px Inter,
    sans-serif;
}
.time-record-scroll {
  background: #fff;
  flex: 1;
  min-height: 0;
  overflow: auto;
}
.review-work-record {
  border-bottom: 1px solid #e2e3df;
  padding: 21px 20px;
}
.record-title {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 9px;
  display: flex;
}
.record-title > span {
  letter-spacing: 0.05em;
  color: #6e5737;
  background: #f4f0e8;
  border-radius: 2px;
  padding: 3px 5px;
  font-size: 12px;
  font-weight: 600;
}
.record-title small {
  color: #8c8e8e;
  font-size: 12px;
}
.review-work-record h3 {
  margin-bottom: 17px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}
.daily-review {
  border-collapse: collapse;
  table-layout: fixed;
  font-variant-numeric: tabular-nums;
  width: 100%;
  font-size: 12px;
}
.daily-review th {
  text-align: left;
  color: #8c8e8e;
  border-bottom: 1px solid #e9eae7;
  padding: 7px 0;
  font-size: 12px;
  font-weight: 500;
}
.daily-review td {
  color: #707372;
  border-bottom: 1px solid #f0f1ee;
  padding: 8px 0;
}
.daily-review td:last-child,
.daily-review th:last-child {
  text-align: right;
  color: #2d2926;
}
.daily-review td:last-child {
  font-weight: 500;
}
.daily-review tfoot td {
  color: #2d2926;
  border-top: 1px solid #dfe0dc;
  border-bottom: 0;
  padding-top: 12px;
  font-weight: 600;
}
.work-description {
  color: #707372;
  white-space: pre-wrap;
  margin: 17px 0 11px;
  font-size: 12px;
  line-height: 1.7;
}
.record-revision {
  color: #8c8e8e;
  font-size: 12px;
}
.service-review {
  background: #f8f8f5;
  border: 1px solid #e9eae7;
  justify-content: space-between;
  padding: 17px;
  font-size: 12px;
  display: flex;
}
.revision-details {
  color: #707372;
  margin-top: 13px;
  font-size: 12px;
}
.revision-details summary {
  cursor: pointer;
}
.revision-details p {
  border-bottom: 1px solid #eee;
  padding: 8px 0;
}
.document-select {
  border-bottom: 1px solid #e9eae7;
  flex: none;
  align-items: center;
  gap: 10px;
  padding: 12px 15px;
  display: flex;
}
.document-select label {
  color: #707372;
  white-space: nowrap;
  margin: 0;
  font-size: 12px;
}
.document-select select {
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 3px;
  width: 100%;
  min-width: 0;
  padding: 6px;
  font-size: 12px;
}
.evidence-meta {
  color: #707372;
  background: #fafaf7;
  border-bottom: 1px solid #e5e6e2;
  flex: none;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  font-size: 12px;
  display: flex;
}
.evidence-meta strong {
  color: #424643;
  font-weight: 550;
}
.evidence-meta small {
  margin-top: 3px;
  font-size: 12px;
  display: block;
}
.document-viewer {
  background: #eaeae6;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}
.document-toolbar {
  color: #707372;
  background: #f5f5f2;
  border-bottom: 1px solid #dedfdb;
  flex: none;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 10px 13px;
  font-size: 12px;
  display: flex;
}
.document-toolbar > span {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}
.document-toolbar > div {
  flex: none;
  align-items: center;
  gap: 10px;
  display: flex;
}
.document-toolbar select {
  background: #fff;
  border: 1px solid #d5d6d3;
  padding: 3px;
  font-size: 12px;
}
.document-toolbar a {
  color: #5a5c5b;
  padding: 2px;
}
.document-frame {
  background: #f0f0ed;
  border: 0;
  flex: 1;
  width: 100%;
  height: 100%;
  min-height: 280px;
  display: block;
}
.document-image-scroll {
  flex: 1;
  padding: 17px;
  overflow: auto;
}
.document-image-scroll img {
  height: auto;
  margin: 0 auto;
  box-shadow: 0 2px 8px #2d292620;
}
.document-empty {
  text-align: center;
  color: #8c8e8e;
  background: #f8f8f5;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 13px;
  min-height: 280px;
  padding: 35px;
  font-size: 12px;
  display: flex;
}
.document-empty strong {
  color: #707372;
  font-size: 12px;
  font-weight: 500;
}
.document-empty p {
  max-width: 240px;
  font-size: 12px;
  line-height: 1.7;
}
.document-empty svg {
  stroke-width: 1.2px;
}
.invoice-comparison {
  border-bottom: 1px solid #e5e6e2;
  flex: none;
  max-height: 220px;
  padding: 10px 14px 14px;
  overflow: auto;
}
.invoice-comparison table {
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
  width: 100%;
  font-size: 12px;
}
.invoice-comparison th {
  color: #8c8e8e;
  text-align: right;
  white-space: nowrap;
  padding: 7px 2px;
  font-size: 12px;
  font-weight: 500;
}
.invoice-comparison td {
  text-align: right;
  vertical-align: top;
  border-bottom: 1px solid #e9eae7;
  padding: 9px 3px;
}
.invoice-comparison th:first-child,
.invoice-comparison td:first-child {
  text-align: left;
}
.invoice-comparison small {
  color: #8c8e8e;
  margin-top: 4px;
  font-size: 12px;
  display: block;
}
.invoice-comparison .variance-row td {
  color: #a14931;
  background: #fff0e7;
}
.review-decision {
  z-index: 5;
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 5px;
  grid-template-columns: minmax(250px, 1fr) minmax(420px, 1fr);
  gap: 26px;
  margin-top: 18px;
  padding: 22px 24px;
  display: grid;
  position: sticky;
  bottom: 12px;
  box-shadow: 0 3px 20px #2d292608;
}
.decision-note label {
  color: #424643;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  font-size: 12px;
  display: flex;
}
.decision-note label span {
  color: #8c8e8e;
  font-size: 12px;
  font-weight: 400;
}
.decision-note textarea {
  resize: vertical;
  min-height: 70px;
  line-height: 1.6;
  margin: 0 !important;
  font-size: 12px !important;
}
.decision-actions {
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 11px;
  display: flex;
}
.review-checkbox {
  color: #707372;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  display: flex;
}
.review-checkbox input[type="checkbox"] {
  accent-color: #ffa400;
  flex: none;
  width: 14px;
  height: 14px;
  min-height: 0;
  margin: 0;
  padding: 0;
}
.decision-buttons {
  gap: 10px;
  display: flex;
}
.decision-hint {
  color: #8c8e8e;
  text-align: right;
  max-width: 550px;
  font-size: 12px;
  line-height: 1.6;
}
.core-switch-dialog {
  background: #fff;
  max-width: 590px !important;
}
.core-switch-list {
  max-height: 420px;
  overflow: auto;
}
.core-switch-person {
  text-align: left;
  border-bottom: 1px solid #e5e6e2;
  border-radius: 4px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 15px 10px;
  display: flex;
}
.core-switch-person:hover {
  background: #fff8eb;
}
.core-switch-person > svg {
  color: #8c8e8e;
}
.core-loading-brand {
  align-items: center;
  gap: 12px;
  margin-bottom: 35px;
  display: flex;
}
.core-loading-brand > div {
  color: #2d2926;
}
.core-loading-brand small {
  color: #707372;
}
.start-screen {
  border-color: #dedfdb;
  border-radius: 6px;
}
.workspace-footer {
  color: #8c8e8e;
  border-color: #dedfdb;
  margin-top: 35px;
  padding: 22px 0;
  font-size: 12px !important;
}
.workspace-footer > span {
  font-size: 12px !important;
}
input:not([type="checkbox"]),
textarea {
  font-size: 13px;
  color: #2d2926 !important;
  border-color: #d5d6d3 !important;
  border-radius: 4px !important;
}
input:focus,
textarea:focus {
  border-color: #c99d46 !important;
  box-shadow: 0 0 0 2px #ffa40015 !important;
}
label,
.field-label {
  font-size: 12px;
  color: #5a5c5b !important;
}
input::placeholder,
textarea::placeholder {
  color: #97999b !important;
}
.editor-sheet {
  border-color: #dedfdb !important;
}
.editor-sheet [data-slot="sheet-header"] {
  border-color: #e1e2df;
}
.editor-sheet [data-slot="sheet-title"] {
  color: #2d2926;
  font-family: Satoshi, Inter, sans-serif;
  font-weight: 700;
}
.editor-sheet [data-slot="sheet-description"],
.editor-sheet .muted,
.field-hint,
.block-field > small {
  color: #707372 !important;
}
.editor-footer {
  background: #fafaf7;
  border-color: #e1e2df;
}
.editor-footer > span,
.editor-footer > small {
  color: #707372;
}
.editor-scroll {
  color: #424643;
}
.policy-summary {
  background: #f7f6f2;
  border-color: #e1e2df;
  border-radius: 4px;
}
.policy-summary small {
  color: #707372;
}
.policy-summary strong {
  color: #5d4930;
}
.input-grid > label {
  color: #707372;
}
.time-totals {
  background: #fcf8f0;
  border-color: #e1e2df;
  border-radius: 4px;
}
.time-totals span {
  color: #707372;
  font-size: 12px;
}
.time-totals strong {
  color: #2d2926;
}
.time-totals > div:last-child {
  border-color: #e4d9c4;
}
.total-line {
  color: #707372;
}
.total-line strong {
  color: #2d2926;
}
.attachment {
  background: #fffcf5;
  border-color: #d8cbb3;
  border-radius: 4px;
}
.attachment > div {
  color: #707372;
}
.attachment > div a {
  color: #6e5737;
}
.attachment > small {
  color: #8c8e8e;
}
.template-box {
  background: #fff8eb;
  border-color: #eddfc4;
  border-radius: 4px;
}
.template-box p,
.checkbox-line {
  color: #707372;
}
.inline-note {
  border-radius: 4px;
  font-size: 12px;
  color: #756143 !important;
  background: #f8f6f0 !important;
  border-color: #e6dece !important;
}
.source-note {
  color: #707372;
  background: #f6f6f3;
}
.detail-box h3 {
  color: #424643;
}
.detail-box p {
  color: #707372;
  font-size: 13px;
}
.invoice-line-edit {
  background: #fafaf7;
  border-color: #e1e2df;
}
.line-edit-head {
  color: #5a5c5b;
}
.form-grid {
  margin-top: 18px;
}
.core-panel-pad > .form-actions {
  margin-top: 22px;
}
.form-error,
.error-banner {
  font-size: 12px;
}
.empty-state {
  color: #8c8e8e;
}
.empty-state h3 {
  color: #5a5c5b;
}
.empty-state p {
  color: #8c8e8e;
}
.empty-state > svg {
  color: #a9abaa;
}
.employee-work .member-selector {
  align-items: flex-end;
  gap: 25px;
  margin-top: 25px;
  display: flex;
}
.employee-work .member-selector > div {
  max-width: 300px;
}
.simulation-note {
  color: #8c8e8e;
  font-size: 12px;
}
.member-summary {
  background: #fff;
  border-color: #e1e2df;
  border-radius: 5px;
  padding: 23px;
}
.member-identity h2 {
  color: #2d2926;
  font-family: Satoshi, Inter, sans-serif;
}
.member-identity p {
  color: #707372;
}
.member-totals strong {
  color: #2d2926;
}
.member-totals span {
  color: #707372;
  font-size: 12px !important;
}
.work-layout {
  grid-template-columns: minmax(0, 1fr) 270px;
  gap: 24px;
}
.work-title h3 {
  color: #2d2926;
}
.work-title small {
  color: #707372;
}
.mini-icon.blue-icon,
.blue-icon {
  border-radius: 4px;
  color: #a4731c !important;
  background: #fff3dc !important;
}
.work-card-head {
  padding: 21px 22px;
}
.work-card-foot {
  border-color: #e9eae7;
  padding: 15px 21px;
  background: #fcfcfa !important;
}
.work-card-foot > span {
  color: #707372;
  font-size: 12px !important;
}
.summary-grid {
  background: #fff;
}
.summary-grid strong {
  color: #424643;
}
.summary-grid span {
  color: #8c8e8e;
}
.week-grid .week-total {
  color: #2d2926;
  background: #fff8eb;
}
.week-total strong {
  color: #2d2926;
}
.side-card h3,
.side-card h3 svg {
  color: #5a5c5b;
}
.side-card p {
  color: #707372;
  line-height: 1.7;
  font-size: 12px !important;
}
.side-card small,
.side-help {
  color: #8c8e8e;
  font-size: 12px;
}
.add-assignment h3 {
  color: #424643;
  font-size: 13px;
}
.add-assignment {
  border-style: dashed;
}
.employee-submission {
  border-top: 3px solid #ffa400;
  margin-top: 26px !important;
  padding: 25px !important;
}
.employee-submission > .section-heading {
  margin-bottom: 0;
}
.employee-submission > .section-heading > svg {
  color: #a4731c;
  stroke-width: 1.5px;
}
.employee-bundle {
  border-top: 1px solid #e7e8e3;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-top: 20px;
  padding: 21px 0 0;
  display: flex;
}
.employee-bundle > div:first-child > strong {
  font-size: 13px;
  display: block;
}
.employee-bundle > div:first-child > small {
  color: #707372;
  margin: 7px 0 10px;
  font-size: 12px;
  display: block;
}
.employee-correction {
  color: #996637;
  background: #fff8eb;
  border: 1px solid #f1e3c8;
  border-radius: 4px;
  flex-basis: 100%;
  padding: 13px;
  font-size: 12px;
}
.history-links {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}
.feedback-entry {
  border-top: 1px solid #e5e6e2;
  margin-top: 20px;
  padding: 22px 0;
  font-size: 12px;
}
.feedback-entry > time {
  color: #8c8e8e;
  margin-left: 15px;
  font-size: 12px;
}
.feedback-entry p {
  white-space: pre-wrap;
  color: #707372;
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.7;
}
@media (width>=1600px) {
  .workspace {
    padding-inline: 44px;
  }
  .review-workspace {
    padding-inline: 32px;
  }
  .topbar {
    padding-inline: 44px;
  }
  .review-pane {
    height: clamp(690px, 100vh - 330px, 1050px);
  }
}
@media (width<=1250px) {
  .workspace {
    padding-inline: 23px;
  }
  .review-workspace {
    padding-inline: 20px;
  }
  .topbar {
    padding-inline: 23px;
  }
  .review-columns {
    grid-template-columns: 280px 365px 365px;
    padding-bottom: 8px;
    overflow-x: auto;
  }
  .review-identity {
    flex-wrap: wrap;
    gap: 15px;
    padding: 20px;
  }
  .review-period {
    padding-left: 15px;
  }
  .review-identity > .review-status {
    margin-left: 0;
  }
  .review-decision {
    grid-template-columns: 1fr;
    gap: 16px;
    position: static;
  }
  .decision-actions {
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .decision-hint {
    text-align: left;
    flex-basis: 100%;
  }
  .core-two {
    grid-template-columns: 1fr;
  }
  .work-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .work-side {
    padding: 0;
    display: block;
  }
  .review-summary > button {
    padding: 17px;
  }
  .queue-toolbar .searchbox {
    max-width: 280px;
  }
}
@media (width<=800px) {
  .review-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
  }
  .review-summary strong {
    font-size: 30px;
  }
  .environment-label,
  .core-account > span:not(.avatar),
  .save-status span {
    display: none;
  }
  .core-profile-head {
    flex-wrap: wrap;
    padding: 20px;
  }
  .queue-toolbar {
    gap: 12px;
    padding: 18px;
  }
  .queue-title {
    width: 100%;
  }
  .queue-toolbar .searchbox {
    flex-basis: 100%;
    max-width: none;
  }
  .queue-foot {
    flex-direction: column;
    align-items: flex-start;
  }
  .page-heading h1 {
    font-size: 27px;
  }
  .page-heading {
    flex-wrap: wrap;
  }
  .review-columns {
    grid-template-columns: 270px 350px 350px;
  }
  .review-identity > .person {
    flex-basis: 100%;
  }
  .review-identity .review-period:nth-child(2) {
    border: 0;
    padding-left: 0;
  }
  .review-pane {
    height: 680px;
  }
  .review-workspace .page-heading .lead:after {
    content: " Swipe horizontally to compare documents.";
  }
  .review-decision {
    padding: 18px;
  }
  .decision-buttons {
    flex-wrap: wrap;
  }
  .core-facts {
    gap: 21px;
  }
  .core-tabs [data-slot="tabs-list"] {
    gap: 20px;
  }
  .employee-work .member-selector {
    flex-wrap: wrap;
  }
  .employee-submission {
    padding: 20px !important;
  }
  .core-account > svg {
    display: none;
  }
  .top-right {
    gap: 12px;
  }
  .topbar {
    height: 61px;
    padding-inline: 17px;
  }
  .breadcrumbs {
    gap: 8px;
    min-width: 0;
  }
  .breadcrumbs strong {
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 110px;
    overflow: hidden;
  }
  .workspace {
    padding: 23px 17px 0;
  }
  .review-workspace {
    padding-inline: 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
.core-sidebar [data-slot="sidebar-content"] {
  gap: 0;
  padding: 0;
}
.queue-toolbar > .pick {
  flex: none;
  border-radius: 4px !important;
  width: 180px !important;
  min-height: 36px !important;
  padding: 8px 10px !important;
  font-size: 12px !important;
}
.table-tools > .pick {
  min-width: 155px;
  max-width: 230px;
  border-radius: 4px !important;
  width: auto !important;
  font-size: 12px !important;
}
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #ffa400;
}
.contact-directory,
.client-invoice-register {
  margin-bottom: 24px;
  overflow: hidden;
}
.contact-directory-heading {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 26px 28px;
  display: flex;
}
.contact-directory-heading h2 {
  margin: 5px 0;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 23px;
}
.contact-directory-heading p:not(.eyebrow) {
  color: #707372;
  font-size: 13px;
  line-height: 1.7;
}
.contact-filters {
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  padding: 20px 24px;
  display: flex;
}
.contact-filters > .search-box {
  flex: 1;
  min-width: 240px;
}
.contact-kind {
  background: #f2f2ef;
  border: 1px solid #e6e5e1;
  border-radius: 6px;
  padding: 3px;
  display: flex;
}
.contact-kind button {
  color: #696762;
  border-radius: 4px;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  font-size: 12px;
  display: flex;
}
.contact-kind button.active {
  color: #2d2926;
  background: #fff;
  box-shadow: 0 1px 3px #2d29261a;
}
.contact-kind span {
  color: #707372;
  font-size: 12px;
}
.contact-master-detail {
  grid-template-columns: minmax(260px, 34%) minmax(0, 1fr);
  min-height: 640px;
  display: grid;
}
.contact-list {
  border-right: 1px solid var(--border);
  background: #fcfcfb;
  max-height: 950px;
  overflow-y: auto;
}
.contact-result-count {
  color: #707372;
  z-index: 1;
  background: #fcfcfb;
  border-bottom: 1px solid #efefec;
  padding: 15px 20px;
  font-size: 12px;
  position: sticky;
  top: 0;
}
.contact-list-item {
  text-align: left;
  border-bottom: 1px solid #efefec;
  border-left: 3px solid #0000;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 86px;
  padding: 19px 18px;
  display: flex;
}
.contact-list-item:hover {
  background: #f5f4f0;
}
.contact-list-item.selected {
  background: #fff5e4;
  border-left-color: #ffa400;
}
.contact-list-item > span:nth-child(2) {
  flex: 1;
  min-width: 0;
}
.contact-list-item strong {
  font-size: 13px;
  font-weight: 600;
  display: block;
}
.contact-list-item small {
  color: #707372;
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.6;
  display: block;
}
.contact-avatar {
  color: #55534e;
  letter-spacing: 0.04em;
  background: #eeefec;
  border-radius: 50%;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 37px;
  height: 37px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
}
.contact-avatar.team {
  background: #edece8;
  border-radius: 9px;
}
.contact-avatar.large {
  color: #5e461e;
  background: #fff0d4;
  width: 58px;
  height: 58px;
  font-size: 18px;
}
.contact-detail {
  background: #fff;
  min-width: 0;
  padding: 30px;
}
.contact-detail-head {
  align-items: flex-start;
  gap: 17px;
  display: flex;
}
.contact-detail-head > div {
  flex: 1;
  min-width: 0;
}
.contact-detail-head h2 {
  margin: 7px 0;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 24px;
  line-height: 1.25;
}
.contact-detail-head p:not(.eyebrow) {
  font-size: 13px;
  line-height: 1.7;
}
.contact-detail-head small {
  color: #707372;
  font-size: 12px;
}
.contact-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 24px 0;
  display: flex;
}
.contact-actions .btn {
  font-size: 12px;
}
.contact-detail-fields {
  border-top: 1px solid var(--border);
  margin: 0;
}
.contact-detail-fields > div {
  border-bottom: 1px solid #efefec;
  grid-template-columns: 115px minmax(0, 1fr);
  gap: 18px;
  padding: 13px 0;
  font-size: 12px;
  line-height: 1.6;
  display: grid;
}
.contact-detail-fields dt {
  color: #707372;
}
.contact-detail-fields dd {
  overflow-wrap: anywhere;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  display: flex;
}
.contact-badge {
  color: #707372;
  background: #f3f2ee;
  border-radius: 4px;
  padding: 3px 7px;
  font-size: 12px;
}
.contact-note {
  margin-top: 25px;
}
.contact-note h3 {
  margin: 0 0 8px;
  font-size: 13px;
}
.contact-note p {
  color: #595651;
  white-space: pre-line;
  font-size: 13px;
  line-height: 1.85;
}
.contact-note small {
  color: #707372;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.6;
  display: block;
}
.contact-use {
  background: #faf9f6;
  border-left: 2px solid #ffa400;
  padding: 17px 19px;
}
.contact-evidence {
  border-top: 1px solid var(--border);
  margin-top: 28px;
  font-size: 12px;
}
.contact-evidence summary {
  cursor: pointer;
  color: #595651;
  padding: 18px 0;
  font-weight: 500;
}
.contact-evidence > div {
  color: #707372;
  flex-direction: column;
  align-items: flex-start;
  gap: 11px;
  line-height: 1.8;
  display: flex;
}
.contact-address-review {
  border-top: 1px solid var(--border);
  color: #707372;
  padding: 20px 28px;
  font-size: 12px;
}
.contact-address-review summary {
  cursor: pointer;
  color: #2d2926;
  font-weight: 500;
}
.contact-address-review > p {
  margin: 15px 0;
  line-height: 1.8;
}
.contact-address-review > div {
  border-top: 1px solid #efefec;
  padding: 15px 0;
  line-height: 1.8;
}
.contact-address-review span {
  margin-left: 15px;
}
.contact-editor select {
  border: 1px solid var(--input);
  background: #fff;
  border-radius: 5px;
  width: 100%;
  height: 42px;
  margin-top: 7px;
  padding: 8px 12px;
  display: block;
}
.contact-editor .full {
  grid-column: 1/-1;
}
.company-facts-heading {
  padding: 24px 24px 0;
}
.company-facts-heading p {
  color: #707372;
  margin-top: 5px;
  font-size: 12px;
}
.company-fact,
.company-identity p:not(.eyebrow) {
  font-size: 13px;
}
.company-identity h2 {
  font-family: Satoshi, Inter, sans-serif;
  font-size: 28px;
}
.company-description {
  font-size: 15px;
}
.company-sources .source-link {
  font-size: 12px !important;
}
.invoice-register-metrics {
  border-bottom: 1px solid var(--border);
  background: #fcfbf8;
  align-items: stretch;
  gap: 0;
  display: flex;
}
.invoice-register-metrics > div,
.invoice-register-metrics > button {
  border-right: 1px solid var(--border);
  text-align: left;
  flex: 1;
  min-width: 180px;
  padding: 24px 28px;
}
.invoice-register-metrics span {
  color: #707372;
  font-size: 12px;
  display: block;
}
.invoice-register-metrics strong {
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
  align-items: center;
  gap: 20px;
  margin-top: 7px;
  font-size: 26px;
  font-weight: 500;
  display: flex;
}
.invoice-register-metrics > button {
  background: #fff5e4;
  border-right: 0;
  flex: 0 220px;
}
.invoice-register-metrics > button:hover {
  background: #ffefd2;
}
.invoice-number {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-size: 12px;
}
.invoice-review-flag {
  color: #936509;
  align-items: center;
  gap: 5px;
  margin-top: 7px;
  font-size: 12px;
  display: flex;
}
.sent-invoice-detail {
  gap: 20px;
  display: grid;
}
.sent-invoice-detail .history-record-heading {
  margin: 0;
}
.sent-invoice-detail .history-record-heading h2 {
  overflow-wrap: anywhere;
  font-size: 23px;
}
.sent-invoice-summary {
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  padding: 28px;
  display: flex;
}
.sent-invoice-summary strong {
  letter-spacing: -0.03em;
  margin: 7px 0;
  font-size: 36px;
  font-weight: 500;
  display: block;
}
.sent-invoice-summary p:not(.eyebrow) {
  color: #707372;
  font-size: 12px;
}
.sent-invoice-summary > div:last-child {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}
.sent-facts > div {
  border-bottom: 1px solid #efefec;
  grid-template-columns: 140px 1fr;
  gap: 20px;
  padding: 14px 0;
  font-size: 12px;
  line-height: 1.7;
  display: grid;
}
.sent-facts dt {
  color: #707372;
}
.sent-facts dd {
  overflow-wrap: anywhere;
  margin: 0;
}
.sent-reconciliation {
  background: #fff9ed;
  border-color: #eddcb8;
  padding: 23px 27px;
}
.sent-reconciliation h3 {
  align-items: center;
  gap: 9px;
  font-size: 14px;
  display: flex;
}
.sent-reconciliation p {
  margin: 12px 0;
  font-size: 13px;
  line-height: 1.8;
}
.sent-reconciliation .core-table-wrap {
  margin: 18px 0;
}
.invoice-support p {
  color: #707372;
  margin-top: 7px;
  font-size: 12px;
}
.client-invoice-register .table-caption {
  font-size: 12px;
  line-height: 1.8;
  display: block;
}
.company-expand {
  margin-bottom: 0;
}
@media (width>=1600px) {
  .contact-master-detail {
    grid-template-columns: 380px minmax(0, 1fr);
  }
  .contact-detail {
    padding: 36px 42px;
  }
}
@media (width<=1000px) {
  .contact-master-detail {
    grid-template-columns: minmax(240px, 38%) minmax(0, 1fr);
  }
  .contact-detail {
    padding: 24px 20px;
  }
  .contact-detail-head {
    flex-wrap: wrap;
  }
  .contact-detail-head .btn {
    margin-left: auto;
  }
  .contact-detail-fields > div {
    grid-template-columns: 90px 1fr;
  }
  .invoice-register-metrics {
    flex-wrap: wrap;
  }
  .invoice-register-metrics > div,
  .invoice-register-metrics > button {
    padding: 19px 22px;
  }
  .sent-facts > div {
    grid-template-columns: 110px 1fr;
  }
}
@media (width<=750px) {
  .contact-directory-heading {
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 22px 18px;
  }
  .contact-filters {
    padding: 15px;
  }
  .contact-filters > .search-box {
    flex-basis: 100%;
  }
  .contact-kind {
    width: 100%;
  }
  .contact-kind button {
    flex: 1;
    justify-content: center;
  }
  .contact-master-detail {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .contact-list {
    border-right: 0;
    border-bottom: 1px solid var(--border);
    max-height: 330px;
  }
  .contact-detail {
    padding: 24px 18px;
  }
  .contact-list-item {
    min-height: 76px;
    padding: 15px 18px;
  }
  .contact-detail-fields > div {
    grid-template-columns: 95px 1fr;
  }
  .contact-detail-head h2 {
    font-size: 22px;
  }
  .invoice-register-metrics > div,
  .invoice-register-metrics > button {
    flex: 1;
    min-width: 140px;
  }
  .invoice-register-metrics strong {
    font-size: 23px;
  }
  .sent-invoice-summary {
    flex-direction: column;
    align-items: flex-start;
    padding: 23px;
  }
  .sent-invoice-detail .history-record-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  .sent-facts > div {
    grid-template-columns: 100px 1fr;
  }
}
.hr-section-stack {
  gap: 22px;
  margin-bottom: 24px;
  display: grid;
}
.hr-personal-profile {
  margin: 22px 0;
}
.hr-facts-grid {
  grid-template-columns: 1fr 1fr;
  gap: 0 32px;
  display: grid;
}
.hr-fact {
  border-bottom: 1px solid #eeedeb;
  grid-template-columns: minmax(105px, 33%) minmax(0, 1fr);
  gap: 20px;
  padding: 13px 0;
  font-size: 13px;
  line-height: 1.75;
  display: grid;
}
.hr-fact dt {
  color: #707372;
}
.hr-fact dd {
  white-space: pre-line;
  overflow-wrap: anywhere;
  margin: 0;
  font-weight: 500;
}
.hr-onboarding-banner {
  color: #fff;
  background: #2d2926;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 28px 30px;
  display: flex;
}
.hr-onboarding-banner .eyebrow {
  color: #ffa400;
}
.hr-onboarding-banner h2 {
  color: #fff;
  margin: 8px 0;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 26px;
}
.hr-onboarding-banner p:last-child {
  color: #d0cec8;
  font-size: 12px;
}
.hr-restricted {
  white-space: nowrap;
  color: #686154;
  background: #faf9f5;
  border: 1px solid #dedbd3;
  border-radius: 5px;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}
.hr-onboarding-banner .hr-restricted {
  color: #e9d3a8;
  background: #ffffff0a;
  border-color: #685c49;
}
.hr-version-picker {
  align-items: center;
  gap: 20px;
  display: flex;
}
.hr-version-picker p {
  color: #707372;
  font-size: 12px;
}
.hr-review-notes {
  background: #fffaf0;
  border-color: #e9d8b7;
  padding: 23px 26px;
}
.hr-review-notes h3 {
  align-items: center;
  gap: 9px;
  font-size: 14px;
  display: flex;
}
.hr-review-notes ul {
  margin: 12px 0 0;
  padding-left: 22px;
}
.hr-review-notes li {
  color: #665f50;
  margin: 7px 0;
  font-size: 13px;
  line-height: 1.9;
}
.hr-small-note,
.hr-source-ref {
  color: #707372;
  font-size: 12px;
  line-height: 1.65;
}
.hr-disclosures summary {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 22px 26px;
  font-size: 14px;
  font-weight: 500;
  display: flex;
}
.hr-disclosures summary > span {
  align-items: center;
  gap: 10px;
  display: flex;
}
.hr-disclosures summary small {
  color: #707372;
  font-size: 12px;
  font-weight: 400;
}
.hr-disclosures .core-panel-pad {
  padding-top: 0;
}
.hr-acknowledgment {
  align-items: flex-start;
  gap: 14px;
  display: flex;
}
.hr-acknowledgment svg {
  color: #6b765e;
  margin-top: 2px;
}
.hr-acknowledgment h3 {
  font-size: 13px;
}
.hr-acknowledgment p {
  color: #707372;
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.8;
}
.hr-source-caption {
  color: #707372;
  font-size: 12px;
  line-height: 1.8;
}
.hr-documents-layout {
  gap: 20px;
  margin-bottom: 24px;
  display: grid;
}
.hr-documents-layout:has(.hr-document-preview) {
  grid-template-columns: minmax(450px, 1fr) minmax(320px, 0.8fr);
}
.hr-documents-layout .panel {
  min-width: 0;
  overflow: hidden;
}
.hr-documents-layout .queue-toolbar {
  flex-wrap: wrap;
}
.hr-documents-layout small,
.hr-section-stack .queue-toolbar small {
  color: #707372;
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.7;
  display: block;
}
.hr-documents-layout .table-caption {
  font-size: 12px;
  line-height: 1.7;
}
.hr-history-item {
  border-top: 1px solid var(--border);
  margin-top: 18px;
}
.hr-history-item summary {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 18px 0;
  display: flex;
}
.hr-history-item summary strong {
  font-size: 13px;
  font-weight: 600;
}
.hr-history-item summary small {
  color: #707372;
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.8;
  display: block;
}
.hr-history-item > div {
  padding-bottom: 20px;
}
.hr-history-item p {
  white-space: pre-line;
  color: #595650;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 1.8;
}
.hr-history-item .hr-fact {
  font-size: 12px;
}
.hr-import-report {
  margin-bottom: 30px;
  overflow: hidden;
}
.hr-import-report .core-panel-pad > h3 {
  margin-top: 22px;
  margin-bottom: 10px;
  font-size: 13px;
}
.hr-import-report .core-panel-pad > p {
  font-size: 12px;
  line-height: 1.85;
}
.hr-import-report .core-table td:last-child {
  max-width: 500px;
  font-size: 12px;
  line-height: 1.7;
}
.hr-import-held {
  border-top: 1px solid var(--border);
  color: #68635a;
  padding: 20px 24px;
  font-size: 12px;
}
.hr-import-held summary {
  cursor: pointer;
  padding-bottom: 16px;
}
.hr-import-held .core-table-wrap {
  margin: 8px -24px -20px;
}
@media (width<=1150px) {
  .hr-documents-layout:has(.hr-document-preview) {
    grid-template-columns: 1fr;
  }
  .hr-fact {
    grid-template-columns: 110px 1fr;
    gap: 15px;
  }
}
@media (width<=750px) {
  .hr-facts-grid {
    grid-template-columns: 1fr;
  }
  .hr-onboarding-banner {
    flex-direction: column;
    align-items: flex-start;
    padding: 24px 20px;
  }
  .hr-onboarding-banner h2 {
    font-size: 23px;
  }
  .hr-disclosures summary {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .hr-version-picker {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .hr-fact {
    grid-template-columns: 105px 1fr;
    font-size: 12px;
  }
  .hr-review-notes {
    padding: 20px;
  }
  .hr-history-item summary {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}
.avatar {
  flex-shrink: 0;
  overflow: hidden;
}
.avatar img {
  object-fit: cover;
  object-position: center 30%;
  width: 100%;
  height: 100%;
  display: block;
}
.avatar > span {
  display: contents;
}
.avatar.portrait {
  background: #eeeae2;
  border: 1px solid #e5e0d5;
  border-radius: 8px;
  width: 112px;
  height: 128px;
  font-size: 34px;
}
.person-profile-header {
  border-top: 3px solid #ffa400;
  align-items: center;
  padding: 28px 30px !important;
}
.person-profile-identity {
  align-items: center;
  gap: 26px;
  display: flex;
}
.person-profile-identity h2 {
  letter-spacing: -0.035em;
  margin: 8px 0 10px;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 30px;
  line-height: 1.2;
}
.person-profile-identity p:not(.eyebrow) {
  color: #595651;
  font-size: 14px;
}
.person-profile-identity small {
  color: #707372;
  margin-top: 7px;
  font-size: 13px;
  display: block;
}
.person-profile-content .core-two {
  margin: 0;
}
.person-profile-content .core-panel-pad {
  padding: 26px 28px;
}
.person-profile-content h2 {
  letter-spacing: -0.02em;
  margin: 0 0 12px;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 20px;
}
.person-profile-content .section-heading h2 {
  margin: 0;
}
.person-profile-content .hr-fact {
  grid-template-columns: minmax(115px, 34%) minmax(0, 1fr);
  gap: 18px;
  padding: 14px 0;
  font-size: 14px;
  line-height: 1.7;
}
.person-profile-content .hr-fact dt {
  color: #686661;
  font-size: 13px;
}
.person-profile-content .hr-fact dd {
  font-weight: 500;
}
.profile-primary-details .hr-fact:last-child {
  border-bottom: 0;
}
.profile-contact-link {
  color: #37332d;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
  -webkit-text-decoration: underline #ded2b7;
  text-decoration: underline #ded2b7;
}
.profile-contact-link:hover {
  color: #815500;
  text-decoration-color: #ffa400;
}
.profile-hr-details {
  gap: 20px;
  display: grid;
}
.profile-hr-heading {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin: 4px 0 -5px;
  display: flex;
}
.profile-hr-heading h2 {
  font-size: 17px;
  margin: 0 !important;
}
.profile-source-note {
  color: #707372;
  margin: 4px 0;
  font-size: 12px;
  line-height: 1.8;
}
.profile-assignment-summary h3 {
  margin: 0 0 12px;
  font-size: 14px;
}
.profile-assignment-summary > div {
  justify-content: space-between;
  gap: 15px;
  padding: 10px 0;
  font-size: 14px;
  line-height: 1.7;
  display: flex;
}
.profile-assignment-summary span,
.profile-assignment-summary p {
  color: #707372;
  font-size: 13px;
}
.people-type-tabs {
  background: #fcfbf8;
  border-bottom: 1px solid #e7e5df;
  flex-wrap: wrap;
  gap: 8px;
  padding: 19px 22px;
  display: flex;
}
.people-type-tabs button {
  color: #686661;
  border: 1px solid #0000;
  border-radius: 5px;
  align-items: center;
  gap: 9px;
  padding: 9px 14px;
  font-size: 13px;
  display: flex;
}
.people-type-tabs button.active {
  color: #2d2926;
  background: #fff0d4;
  border-color: #edce97;
  font-weight: 600;
}
.people-type-tabs button span {
  color: #707372;
  font-size: 12px;
}
.consultant-directory .avatar {
  width: 46px;
  height: 46px;
}
.consultant-directory .person strong {
  font-size: 14px;
}
.consultant-directory .person small,
.consultant-directory .cell-sub {
  font-size: 12px;
  line-height: 1.7;
}
.consultant-directory td {
  padding-top: 18px;
  padding-bottom: 18px;
  font-size: 13px;
}
.consultant-directory .profile-contact-link {
  font-size: 12px;
}
.consultant-directory .table-caption {
  font-size: 12px;
  line-height: 1.7;
}
.consultant-directory .table-tools > .search-box {
  flex: 1;
  min-width: 250px;
}
@media (width<=1000px) {
  .profile-primary-details.core-two,
  .profile-hr-details .core-two,
  .person-profile-content .hr-facts-grid {
    grid-template-columns: 1fr;
  }
}
@media (width<=700px) {
  .person-profile-header {
    align-items: flex-start;
    padding: 22px 20px !important;
  }
  .person-profile-identity {
    gap: 17px;
  }
  .avatar.portrait {
    border-radius: 6px;
    width: 80px;
    height: 98px;
  }
  .person-profile-identity h2 {
    font-size: 24px;
  }
  .person-profile-content .core-panel-pad {
    padding: 22px 20px;
  }
  .person-profile-content .hr-fact {
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 13px;
    font-size: 14px;
  }
  .person-profile-header > .flex-tools {
    flex-wrap: wrap;
    margin-top: 18px;
  }
  .person-profile-content .section-heading {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .profile-assignment-summary > div {
    flex-direction: column;
    gap: 4px;
  }
  .people-type-tabs {
    gap: 4px;
    padding: 14px 15px;
  }
  .people-type-tabs button {
    padding: 8px 9px;
    font-size: 12px;
  }
  .consultant-directory .table-tools {
    flex-wrap: wrap;
  }
  .profile-hr-heading .hr-restricted {
    padding: 7px 8px;
    font-size: 12px;
  }
}
.core-main {
  flex: 1;
  width: 0;
}
.workspace {
  width: 100%;
  padding-bottom: 24px;
}
.workspace > [hidden] {
  display: none !important;
}
.core-main
  :is(
    .core-two,
    .company-overview,
    .hr-section-stack,
    .sent-invoice-detail,
    .import-review-columns,
    .profile-primary-details,
    .hr-documents-layout
  )
  > .panel {
  margin-top: 0;
}
:is(
  .core-two,
  .core-facts,
  .hr-facts-grid,
  .company-facts-grid,
  .company-billing-grid,
  .form-grid
),
:is(
    .core-two,
    .core-facts,
    .hr-facts-grid,
    .company-facts-grid,
    .company-billing-grid,
    .form-grid
  )
  > * {
  min-width: 0;
}
.core-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}
.core-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.panel {
  min-width: 0;
}
:is(.panel, .review-pane, .editor-sheet) :is(h1, h2, h3, p, dd, strong) {
  overflow-wrap: anywhere;
}
.topbar {
  gap: 24px;
}
.breadcrumbs {
  flex: 1;
  min-width: 0;
}
.breadcrumbs > svg,
.top-right,
.breadcrumbs > button:first-child {
  flex-shrink: 0;
}
.breadcrumbs strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.breadcrumbs .text-button {
  white-space: nowrap;
}
.core-profile-head > div:first-child {
  flex: 1;
  min-width: 0;
}
.core-profile-head > .flex-tools {
  flex: none;
  align-self: center;
}
.core-profile-head h1 {
  letter-spacing: -0.035em;
  margin: 4px 0 8px;
  font-size: 28px;
  line-height: 1.25;
}
.person-profile-identity,
.person-profile-identity > div {
  min-width: 0;
}
.company-identity {
  min-width: 0;
  max-width: none;
}
.company-identity > div:last-child {
  min-width: 0;
}
.company-identity p:not(.eyebrow) {
  font-size: 14px;
}
.company-logo {
  flex-shrink: 0;
}
.company-overview .company-fact {
  grid-template-columns: minmax(100px, 30%) minmax(0, 1fr);
}
.hr-fact {
  grid-template-columns: minmax(105px, 32%) minmax(0, 1fr);
  gap: 16px;
}
.person-profile-content {
  gap: 24px;
  display: grid;
}
.core-main .person-profile-content > .panel,
.profile-hr-details {
  margin: 0;
}
.profile-hr-details > .core-two {
  margin-bottom: 24px;
}
.profile-hr-heading {
  margin: 0 0 16px;
}
.profile-assignment-summary {
  border-top: 1px solid var(--border);
  margin-top: 22px;
  padding-top: 18px;
}
body {
  font-size: 16px;
  line-height: 1.5;
}
.core-sidebar [data-slot="sidebar-menu-button"] {
  height: auto;
  min-height: 44px;
  padding-block: 11px;
  font-size: 14px;
}
.core-sidebar [data-slot="sidebar-menu-button"] > span:not(.nav-count) {
  white-space: normal;
  line-height: 1.4;
  overflow: visible;
}
.btn {
  white-space: normal;
  text-align: center;
  min-height: 40px;
  padding: 9px 14px;
  font-size: 14px;
  line-height: 1.4;
}
.btn svg,
.text-button svg,
.icon-button svg,
.hr-restricted svg {
  flex-shrink: 0;
}
.text-button,
.open-review {
  font-size: 14px;
  line-height: 1.5;
}
:is(.panel h2, .section-heading h2, .work-title h3, .add-assignment h3) {
  font-size: 16px;
  line-height: 1.5;
}
.lead {
  font-size: 16px !important;
}
.core-muted,
.company-description,
.detail-box p,
.contact-note p {
  font-size: 16px;
  line-height: 1.65;
}
:is(
  .core-fact strong,
  .company-fact,
  .hr-fact,
  .person strong,
  .contact-list-item strong,
  .contact-detail-fields > div,
  .sent-facts > div
) {
  font-size: 14px;
}
:is(
  .eyebrow,
  .tag,
  .cell-sub,
  .core-fact > span,
  .person small,
  .save-status,
  .field-hint,
  .workspace-footer > span
) {
  line-height: 1.5;
  font-size: 12px !important;
}
:is(label, .field-label, .review-checkbox) {
  line-height: 1.5;
  font-size: 14px !important;
}
.core-account strong {
  font-size: 14px;
}
.core-account small {
  font-size: 12px;
}
.contact-directory-heading h2 {
  font-size: 20px;
}
.contact-directory-heading p:not(.eyebrow) {
  font-size: 14px;
}
.form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 22px;
}
.form-grid label {
  display: block;
}
input:not([type="checkbox"]),
textarea {
  min-width: 0;
  max-width: 100%;
  font-size: 16px;
}
textarea {
  line-height: 1.6;
}
.pick,
[data-slot="select-trigger"] {
  width: 100%;
  max-width: 100%;
  height: auto;
  min-width: 0 !important;
  min-height: 40px !important;
  font-size: 14px !important;
}
.pick [data-slot="select-value"] {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  display: block;
  overflow: hidden;
}
.form-grid .pick [data-slot="select-value"],
.block-field .pick [data-slot="select-value"] {
  white-space: normal;
  overflow-wrap: anywhere;
  -webkit-line-clamp: unset;
}
[data-slot="select-content"] {
  max-width: min(560px, 100vw - 32px);
}
[data-slot="select-item"] {
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: 14px;
}
.searchbox {
  flex: 240px;
  min-width: 0;
  max-width: 420px;
  height: 40px;
}
.searchbox input {
  width: 100%;
  min-width: 0;
  height: 100%;
  box-shadow: none !important;
  border: 0 !important;
  margin: 0 !important;
  padding-block: 0 !important;
  font-size: 14px !important;
}
.searchbox > svg,
.searchbox > button {
  flex: none;
}
.table-tools,
.queue-toolbar,
.contact-filters {
  align-items: center;
  gap: 12px;
}
:is(.table-tools, .queue-toolbar, .contact-filters) > .pick {
  flex: 0 220px;
  max-width: 100%;
  width: 200px !important;
  min-width: 0 !important;
  min-height: 40px !important;
  font-size: 14px !important;
}
.contact-filters > .searchbox {
  flex: 260px;
  max-width: none;
}
.table-tools > .btn,
.queue-toolbar > .btn {
  flex-shrink: 0;
}
.flex-tools,
.section-heading,
.panel-heading,
.heading-actions,
.work-card-head,
.work-card-foot {
  flex-wrap: wrap;
  min-width: 0;
}
.flex-tools > .pick {
  flex: 200px;
}
.section-heading > div,
.work-title,
.work-title > div:last-child {
  min-width: 0;
}
.work-card-foot > div {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}
.attachment {
  min-width: 0;
}
.attachment > div {
  flex-wrap: wrap;
  min-width: 0;
}
.attachment a {
  overflow-wrap: anywhere;
  min-width: 0;
}
.form-actions {
  border-top: 1px solid var(--border);
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 24px;
  padding-top: 22px;
  display: flex;
}
.editor-footer {
  gap: 16px;
}
.editor-footer > div {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}
.editor-footer > span {
  font-size: 12px;
}
.core-table-wrap,
[data-slot="table-container"] {
  overscroll-behavior-x: contain;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
}
.core-table {
  font-size: 14px;
}
.core-table th,
[data-slot="table-head"] {
  letter-spacing: 0.02em;
  font-size: 12px;
}
.core-table td,
[data-slot="table-cell"] {
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 360px;
  font-size: 14px;
}
.core-table td .person small,
.core-table .tag {
  white-space: normal;
}
.core-table th:last-child:empty {
  width: 48px;
  min-width: 48px;
}
.core-table td:last-child:has(> .icon-button) {
  width: 48px;
  min-width: 48px;
}
.person > div {
  min-width: 0;
}
.row-person {
  max-width: 100%;
}
.person strong,
.person small {
  white-space: normal;
  overflow-wrap: anywhere;
}
.table-caption,
.queue-foot {
  font-size: 12px;
  line-height: 1.6;
}
.core-tabs {
  min-width: 0;
}
.core-tabs [data-slot="tabs-list"] {
  scrollbar-width: thin;
  gap: 24px;
}
.core-tabs [data-slot="tabs-trigger"] {
  white-space: nowrap;
  min-height: 48px;
  font-size: 14px;
  line-height: 1.5;
}
.people-type-tabs {
  flex-wrap: nowrap;
  overflow-x: auto;
}
.people-type-tabs > button {
  flex-shrink: 0;
  min-height: 44px;
  font-size: 14px;
}
.queue-title {
  min-width: 0;
}
.review-summary > button > span:last-of-type {
  font-size: 14px;
}
.review-summary strong {
  font-size: 32px;
}
.review-status {
  white-space: normal;
  font-size: 12px;
}
.queue-foot .text-button {
  font-size: 12px;
}
.document-indicator {
  white-space: nowrap;
  font-size: 12px;
}
.review-columns {
  grid-template-columns: minmax(0, 0.94fr) repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 0;
  overflow: visible;
}
.review-pane {
  height: clamp(600px, 100vh - 280px, 840px);
}
.review-pane > header {
  min-height: 86px;
  padding: 16px;
}
.review-pane > header > div {
  min-width: 0;
}
.review-pane > header h2 {
  font-size: 16px;
}
.review-pane > header p,
.document-toolbar,
.document-select select,
.evidence-meta,
.daily-review,
.work-description,
.record-revision {
  font-size: 12px;
}
.review-pane .pane-number {
  flex: none;
}
.document-select {
  flex-wrap: wrap;
  gap: 6px;
}
.document-select label {
  font-size: 12px !important;
}
.document-select select {
  flex: 160px;
}
.evidence-meta > div {
  min-width: 0;
}
.document-toolbar {
  min-height: 44px;
}
.invoice-comparison {
  max-height: 240px;
}
.invoice-comparison table {
  font-size: 12px;
}
.invoice-comparison th,
.invoice-comparison small,
.daily-review th {
  white-space: normal;
  font-size: 12px;
}
.invoice-comparison td {
  overflow-wrap: anywhere;
}
.review-identity {
  flex-wrap: wrap;
}
.review-period {
  white-space: normal;
  min-width: 0;
}
.review-period strong {
  font-size: 14px;
}
.review-decision {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 24px;
  position: static;
}
.decision-note textarea {
  font-size: 14px !important;
}
.decision-actions {
  align-items: flex-start;
}
.decision-note label {
  flex-wrap: wrap;
}
.decision-note label span,
.decision-hint {
  font-size: 12px;
}
.decision-hint {
  text-align: left;
}
.decision-buttons {
  flex-wrap: wrap;
}
.review-workspace .page-heading .lead:after {
  content: none;
}
.import-review-columns {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
}
.review-column-head {
  min-height: 72px;
}
.employee-work .member-selector {
  align-items: center;
  margin-top: 0;
}
.employee-work .member-selector > div {
  flex: 280px;
  max-width: 360px;
}
.employee-work .member-summary {
  margin: 20px 0 24px;
}
.employee-work .member-totals {
  border: 0;
  justify-content: flex-start;
  gap: 32px;
  width: 100%;
  margin-left: 0;
  padding: 0;
}
.employee-work .member-totals > div {
  flex: 1;
}
.employee-work .member-totals > div:first-child {
  border: 0;
  padding-left: 0;
}
.member-totals span {
  font-size: 12px !important;
}
.work-layout {
  grid-template-columns: minmax(0, 1fr) 260px;
}
.work-side {
  display: block;
}
.work-card .summary-grid {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}
.work-side .side-card p {
  font-size: 14px !important;
}
.employee-submission {
  margin-top: 24px !important;
}
.employee-bundle > div {
  min-width: 0;
}
.employee-bundle strong {
  overflow-wrap: anywhere;
}
@media (width>=1500px) {
  .review-decision {
    position: sticky;
    bottom: 12px;
  }
}
@media (width<=1100px) {
  .core-two,
  .hr-facts-grid,
  .company-facts-grid,
  .company-billing-grid,
  .work-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .work-side .side-card {
    padding: 20px;
  }
  .review-decision {
    grid-template-columns: minmax(0, 1fr);
  }
  .core-account > span:not(.avatar) {
    display: none;
  }
  .contact-filters > .pick {
    flex: 180px;
  }
}
@media (width<=900px) {
  .core-profile-head {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .core-profile-head > div:first-child {
    flex-basis: 100%;
  }
  .core-profile-head > .flex-tools {
    justify-content: flex-start;
  }
  .contact-master-detail {
    grid-template-columns: minmax(210px, 0.8fr) minmax(0, 1.2fr);
  }
  .contact-detail-head {
    gap: 12px;
  }
  .contact-detail-fields > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
  }
}
@media (width<=767px) {
  .workspace {
    padding: 20px 16px;
  }
  .core-table td,
  .core-table th {
    padding: 14px 16px;
  }
  .core-profile-head h1 {
    font-size: 25px;
  }
  .core-tabs [data-slot="tabs-list"] {
    gap: 20px;
  }
  .core-panel-pad {
    padding: 20px;
  }
  .table-tools,
  .queue-toolbar,
  .contact-filters {
    padding: 16px;
  }
  .table-tools > .searchbox,
  .queue-toolbar > .searchbox {
    flex-basis: 100%;
    max-width: none;
  }
  :is(.table-tools, .queue-toolbar, .contact-filters) > .pick {
    flex: 160px;
    width: auto !important;
  }
  .form-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .core-facts {
    gap: 20px;
  }
  .review-columns,
  .import-review-columns {
    grid-template-columns: minmax(0, 1fr);
  }
  .review-pane {
    height: 620px;
  }
  .time-pane {
    height: auto;
    max-height: 700px;
  }
  .review-pane > header {
    min-height: 72px;
  }
  .review-period {
    flex: 120px;
  }
  .decision-buttons {
    width: 100%;
  }
  .decision-buttons .btn {
    flex: 180px;
  }
  .contact-master-detail {
    grid-template-columns: minmax(0, 1fr);
  }
  .contact-kind {
    max-width: 100%;
  }
  .contact-kind button {
    padding: 8px;
    font-size: 14px;
  }
  .contact-filters > .pick {
    flex-basis: 100%;
  }
  .company-identity {
    flex-wrap: wrap;
    gap: 16px;
  }
  .company-logo {
    border: 0;
    width: 105px;
    min-width: 105px;
    padding: 0;
  }
  .company-identity > div:last-child {
    flex: 180px;
  }
  .hr-fact {
    grid-template-columns: 110px minmax(0, 1fr);
  }
  .employee-work .member-totals {
    gap: 12px;
  }
  .member-totals > div {
    padding-left: 12px;
  }
  .member-totals strong {
    font-size: 24px;
  }
  .work-card .summary-grid {
    grid-template-columns: repeat(8, minmax(42px, 1fr));
    overflow-x: auto;
  }
  .review-summary {
    gap: 12px;
  }
  .review-summary > button {
    padding: 16px;
  }
  .review-summary strong {
    font-size: 28px;
  }
  .hr-onboarding-banner,
  .hr-disclosures summary,
  .hr-version-picker,
  .workspace-footer {
    flex-wrap: wrap;
  }
}
.core-tabs [data-slot="tabs-trigger"] {
  height: auto;
}
.core-tabs [data-slot="tabs-trigger"]:after {
  display: none;
}
.core-tabs [data-slot="tabs-list"] {
  overflow-y: hidden;
}
.review-summary > button {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}
.review-summary > button > strong {
  grid-row: 1;
}
.review-summary > button > span:last-of-type {
  grid-area: 2/1;
  margin: 0;
}
.review-summary > button > svg {
  grid-area: 2/2;
}
.submission-next-step {
  color: #855a0b;
  flex-basis: 100%;
  font-size: 14px;
}
.queue-panel .queue-title > span {
  display: none;
}
.empty-state {
  padding: 40px 24px;
}
.empty-state :is(p, h3),
.empty-state > svg {
  color: #707372 !important;
}
.btn.outline {
  outline: none;
}
.btn.outline:focus-visible {
  outline: 2px solid var(--brand-gold);
  outline-offset: 3px;
}
@media (width>=1101px) {
  .review-decision {
    position: sticky;
    bottom: 12px;
  }
}
.core-preview-strip button {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}
.core-preview-strip {
  flex-wrap: wrap;
  gap: 8px;
}
.work-card .week-total strong {
  color: var(--brand-black);
}
.commercial-heading {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  min-width: 0;
  padding: 24px;
  display: flex;
}
.commercial-heading h2 {
  margin: 0;
  font-size: 20px;
}
.commercial-heading p {
  color: var(--muted-foreground);
  margin: 5px 0 0;
  font-size: 14px;
  line-height: 1.5;
}
.commercial-heading > div {
  min-width: 0;
}
.commercial-heading [data-slot="select-trigger"] {
  flex-shrink: 0;
  width: 110px;
}
.commercial-stat-grid {
  border-top: 1px solid var(--border);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
}
.commercial-stat {
  text-align: left;
  border: 0;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  min-width: 0;
  color: inherit;
  background: 0 0;
  border-radius: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
  padding: 21px 24px;
  display: flex;
}
.commercial-stat-grid > .commercial-stat:nth-child(3n) {
  border-right: 0;
}
.commercial-stat > span {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}
.commercial-stat > strong {
  font-family: var(--font-satoshi), Inter, sans-serif;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  font-size: 27px;
  line-height: 1.25;
}
.commercial-stat > small {
  color: var(--muted-foreground);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  line-height: 1.5;
  display: flex;
}
button.commercial-stat:hover {
  background: #fff9eb;
}
button.commercial-stat:focus-visible {
  outline-offset: -3px;
  outline: 2px solid #bd7900;
}
.commercial-missing {
  color: var(--muted-foreground);
  letter-spacing: normal;
  font-size: 14px;
  font-weight: 400;
}
.commercial-stat strong > .commercial-missing {
  font-size: 20px;
  font-weight: 500;
}
.operational-stats {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  display: grid;
}
.operational-stats > .commercial-stat:last-child {
  border-right: 0;
}
.operational-stats > .commercial-stat {
  border-bottom: 0;
}
.operational-overview .commercial-followups {
  border-top: 1px solid var(--border);
}
.receivables-context {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 16px 24px;
  font-size: 14px;
  display: flex;
}
.receivables-context .text-button {
  white-space: normal;
  text-align: left;
  font-size: 14px;
}
.commercial-followups {
  background: #fffbf2;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding: 15px 24px;
  font-size: 14px;
  line-height: 1.5;
  display: flex;
}
.commercial-followups button {
  text-align: left;
  color: #62410d;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  display: inline-flex;
}
.commercial-followups button:hover {
  text-decoration: underline;
}
.commercial-followups svg {
  flex-shrink: 0;
}
.commercial-method {
  border-top: 1px solid var(--border);
  color: var(--muted-foreground);
  padding: 16px 24px;
  font-size: 14px;
  line-height: 1.6;
}
.commercial-method summary {
  cursor: pointer;
  color: var(--foreground);
  font-size: 14px;
  font-weight: 500;
}
.commercial-method p {
  margin: 12px 0;
  font-size: 14px;
}
.aging-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0 0;
  display: grid;
}
.aging-grid dt {
  font-size: 12px;
}
.aging-grid dd {
  color: var(--foreground);
  margin: 4px 0;
  font-size: 16px;
  font-weight: 600;
}
.financial-partial {
  color: #81510c;
  background: #fff8e7;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 12px 24px;
  font-size: 14px;
  display: flex;
}
.project-portfolio .core-table,
.assignment-board .core-table {
  table-layout: fixed;
  min-width: 940px;
}
.project-portfolio .core-table th:first-child {
  width: 28%;
}
.project-portfolio .core-table th:nth-child(2) {
  width: 11%;
}
.project-portfolio .core-table th:nth-child(3) {
  width: 15%;
}
.project-portfolio .core-table th:nth-child(4) {
  width: 22%;
}
.project-portfolio .core-table th:nth-child(5) {
  width: 19%;
}
.project-portfolio .core-table th:last-child {
  width: 5%;
}
.project-portfolio .core-table td,
.assignment-board .core-table td {
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
  padding-top: 20px;
  padding-bottom: 20px;
}
.project-portfolio .core-table .text-button,
.assignment-board .core-table .text-button {
  white-space: normal;
  text-align: left;
  line-height: 1.5;
}
.project-portfolio .project-name {
  font-size: 15px;
  font-weight: 600;
}
.project-portfolio .cell-sub {
  white-space: normal;
  text-overflow: clip;
  font-size: 12px;
  line-height: 1.6;
  overflow: visible;
}
.project-portfolio .team-count {
  gap: 6px;
  font-size: 17px;
  font-weight: 600;
}
.project-portfolio .tag {
  margin-top: 7px;
}
.assignment-board .core-table th:first-child {
  width: 27%;
}
.assignment-board .core-table th:nth-child(2) {
  width: 22%;
}
.assignment-board .core-table th:nth-child(3) {
  width: 20%;
}
.assignment-board .core-table th:nth-child(4) {
  width: 23%;
}
.assignment-board .core-table th:last-child {
  width: 8%;
}
.assignment-board .row-person {
  text-align: left;
  max-width: 100%;
}
.assignment-board .person-name {
  white-space: normal;
}
.assignment-board .assignment-project {
  margin-top: 10px;
  font-size: 12px;
}
.assignment-board .cell-sub {
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.6;
}
.assignment-board .btn {
  padding: 8px 10px;
  font-size: 14px;
}
.assignment-editor-context {
  border: 1px solid var(--border);
  background: #faf9f7;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  min-width: 0;
  margin-bottom: 20px;
  padding: 16px;
  display: flex;
}
.assignment-editor-context > div {
  min-width: 0;
}
.client-logo-editor {
  border: 1px solid var(--border);
  background: #faf9f7;
  border-radius: 10px;
  align-items: center;
  gap: 24px;
  margin: 0 0 28px;
  padding: 24px;
  display: flex;
}
.client-logo-preview {
  border: 1px solid var(--border);
  color: #827c75;
  background: #fff;
  border-radius: 8px;
  flex: 0 0 144px;
  justify-content: center;
  align-items: center;
  width: 144px;
  height: 104px;
  padding: 14px;
  display: flex;
}
.client-logo-preview img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.client-logo-editor h3 {
  margin: 0;
  font-size: 17px;
}
.client-logo-editor p {
  margin: 6px 0 14px;
  font-size: 14px;
  line-height: 1.5;
}
.client-logo-editor .btn {
  cursor: pointer;
  position: relative;
}
.client-logo-editor input[type="file"] {
  clip-path: inset(50%);
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}
.client-logo-editor .btn:focus-within {
  outline-offset: 3px;
  outline: 2px solid #bd7900;
}
.client-logo-editor small {
  overflow-wrap: anywhere;
  margin-top: 10px;
  font-size: 12px;
  display: block;
}
.client-logo-editor > .client-logo-preview + div {
  min-width: 0;
}
@media (width<=1100px) {
  .commercial-stat > strong {
    font-size: 24px;
  }
  .commercial-stat {
    padding: 20px;
  }
  .operational-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .operational-stats .commercial-stat {
    border-bottom: 1px solid var(--border);
  }
  .operational-stats .commercial-stat:nth-child(2n) {
    border-right: 0;
  }
}
@media (width<=700px) {
  .commercial-heading {
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 20px;
  }
  .commercial-heading p {
    font-size: 14px;
  }
  .commercial-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .commercial-stat-grid > .commercial-stat:nth-child(3n) {
    border-right: 1px solid var(--border);
  }
  .commercial-stat-grid > .commercial-stat:nth-child(2n) {
    border-right: 0;
  }
  .commercial-stat {
    padding: 18px 16px;
  }
  .commercial-stat > strong {
    font-size: 22px;
  }
  .commercial-stat > span {
    font-size: 14px;
  }
  .receivables-context,
  .commercial-followups,
  .commercial-method {
    padding: 16px;
  }
  .aging-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .client-logo-editor {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 20px;
  }
  .financial-partial {
    align-items: flex-start;
    padding: 12px 16px;
  }
  .financial-partial svg {
    flex-shrink: 0;
  }
}
.commercial-heading > div:first-child {
  flex: auto;
}
.commercial-heading > .pick {
  flex: 0 0 110px;
  width: 110px;
  min-width: 110px;
  max-width: 110px;
}
.financial-overview + .core-two,
.financial-overview + .company-overview {
  margin-top: 24px;
}
.agreement-source-reference {
  margin: 20px 0;
}
@media (width<=560px) {
  .financial-overview .commercial-stat-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .financial-overview .commercial-stat {
    border-right: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 8px 12px;
    display: grid;
  }
  .financial-overview .commercial-stat > strong {
    white-space: nowrap;
    letter-spacing: -0.035em;
    grid-area: 1/2;
    font-size: 21px;
  }
  .financial-overview .commercial-stat > small {
    grid-column: 1/-1;
  }
  .financial-overview .commercial-stat > span {
    line-height: 1.5;
  }
  .financial-overview .commercial-stat strong > .commercial-missing {
    font-size: 18px;
  }
}
.client-logo-mark {
  color: #94928d;
  vertical-align: middle;
  background: #fff;
  border: 1px solid #e8e7e3;
  border-radius: 10px;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 112px;
  height: 64px;
  padding: 10px;
  display: inline-flex;
}
.client-logo-mark img {
  object-fit: contain;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  display: block;
}
.client-logo-mark.compact {
  border-radius: 7px;
  width: 66px;
  height: 38px;
  margin-right: 12px;
  padding: 6px;
}
.company-logo .client-logo-mark {
  border: 0;
  width: 100%;
  height: 76px;
  padding: 0;
}
.contact-company-heading {
  align-items: center;
  gap: 20px;
  min-width: 0;
  display: flex;
}
.contact-company-heading > div {
  overflow-wrap: anywhere;
  min-width: 0;
}
.contact-directory .contact-avatar {
  color: #5d5445;
  background: #f1eee7;
  border: 1px solid #e6e4df;
  width: 48px;
  height: 48px;
  font-size: 15px;
  overflow: hidden;
}
.contact-directory .contact-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.contact-directory .contact-avatar.large {
  border: 4px solid #fff;
  width: 88px;
  height: 88px;
  font-size: 25px;
  box-shadow: 0 0 0 1px #e8e5de;
}
.contact-directory .contact-avatar.team {
  color: #696862;
  background: #f4f4f1;
  border-radius: 12px;
}
.contact-directory .contact-detail-head {
  border-bottom: 1px solid #ebe9e4;
  align-items: center;
  padding-bottom: 24px;
}
.contact-directory .contact-detail-head h2 {
  letter-spacing: -0.025em;
  font-size: 28px;
  line-height: 1.2;
}
.contact-directory .contact-detail-head p:not(.eyebrow) {
  color: #595651;
  font-size: 15px;
}
.contact-directory .contact-detail-head small {
  font-size: 13px;
}
.contact-directory .contact-list-item {
  gap: 14px;
  padding-top: 18px;
  padding-bottom: 18px;
}
.contact-directory .contact-list-item.selected {
  background: #fff7e8;
  border-left-color: #ffa400;
}
.contact-directory .contact-list-item strong {
  font-size: 15px;
  line-height: 1.5;
}
.contact-directory .contact-actions {
  margin: 22px 0;
}
.contact-directory .contact-actions .btn,
.contact-directory .source-link {
  font-size: 14px !important;
}
.contact-directory :is(button, a, input, textarea, select):focus-visible,
.contact-editor :is(button, input, textarea, select):focus-visible {
  outline-offset: 3px;
  outline: 2px solid #9a6300;
}
.contact-personal-card {
  background: #faf9f6;
  border: 1px solid #e9e5dc;
  border-radius: 12px;
  margin-top: 28px;
  padding: 24px;
}
.contact-personal-card .section-heading,
.contact-personal-editor .section-heading {
  flex-wrap: wrap;
  gap: 16px;
  margin: 0 0 22px;
  padding: 0;
}
.contact-personal-card h3,
.contact-personal-editor h3 {
  margin: 4px 0 0;
  font-family: Satoshi, Inter, sans-serif;
  font-size: 18px;
}
.contact-personal-grid {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  display: grid;
}
.contact-personal-grid .full {
  grid-column: 1/-1;
}
.personal-fact {
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  display: flex;
}
.personal-fact > svg {
  color: #9b742b;
  flex: none;
  margin-top: 2px;
}
.personal-fact > div {
  flex: 1;
  min-width: 0;
}
.personal-fact > div > span {
  color: #707372;
  margin-bottom: 6px;
  font-size: 13px;
  display: block;
}
.personal-fact strong {
  overflow-wrap: anywhere;
  font-size: 15px;
  font-weight: 500;
  display: block;
}
.personal-fact p {
  white-space: pre-line;
  overflow-wrap: anywhere;
  font-size: 16px;
  line-height: 1.65;
}
.contact-team-chips {
  flex-wrap: wrap;
  gap: 7px;
  display: flex;
}
.contact-team-chips > span {
  overflow-wrap: anywhere;
  background: #fff;
  border: 1px solid #e6e1d6;
  border-radius: 20px;
  padding: 5px 10px;
  font-size: 14px;
}
.contact-partners {
  gap: 12px;
  display: grid;
}
.contact-partners > div {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 7px 14px;
  display: flex;
}
.contact-partners span,
.contact-partners small {
  color: #707372;
  font-size: 13px;
}
.contact-personal-editor {
  border-top: 1px solid var(--border);
  margin-top: 28px;
  padding-top: 28px;
}
.contact-personal-editor .form-grid {
  margin-bottom: 26px;
}
.contact-personal-editor .section-heading p {
  color: #707372;
  margin-top: 8px;
  font-size: 14px;
}
.birthday-field > span {
  font-size: 14px;
  font-weight: 500;
  display: block;
}
.birthday-field > div {
  grid-template-columns: minmax(100px, 1fr) minmax(70px, 0.6fr);
  gap: 10px;
  display: grid;
}
.contact-partner-editor {
  background: #faf9f6;
  border: 1px solid #e9e5dc;
  border-radius: 9px;
  grid-template-columns: minmax(100px, 1fr) minmax(100px, 0.8fr) minmax(
      185px,
      1.1fr
    ) 32px;
  align-items: end;
  gap: 14px;
  margin-top: 12px;
  padding: 18px;
  display: grid;
}
.contact-partner-editor > .icon-button {
  margin-bottom: 5px;
}
@media (width<=1100px) {
  .contact-personal-grid {
    grid-template-columns: 1fr;
  }
  .contact-partner-editor {
    grid-template-columns: 1fr 1fr;
  }
  .contact-directory .contact-detail-head h2 {
    font-size: 24px;
  }
  .contact-directory .contact-avatar.large {
    width: 72px;
    height: 72px;
  }
  .contact-personal-card {
    padding: 20px;
  }
}
@media (width<=650px) {
  .contact-company-heading {
    gap: 12px;
  }
  .contact-company-heading .client-logo-mark {
    width: 80px;
    height: 55px;
  }
  .contact-directory .contact-detail-head {
    gap: 14px;
  }
  .contact-personal-card {
    padding: 18px;
  }
  .contact-partner-editor {
    grid-template-columns: minmax(0, 1fr);
  }
  .contact-partner-editor > .icon-button {
    justify-self: end;
  }
  .contact-directory .contact-detail-head .btn {
    margin-left: 0;
  }
  .contact-personal-card .text-button {
    font-size: 14px;
  }
}
.contact-photo-controls {
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  display: flex;
}
.contact-photo-controls small {
  color: #707372;
  font-size: 13px;
}
.client-logo-mark.dark,
.client-logo-preview.sourced-dark {
  background: #18262f;
  border-color: #18262f;
}
.company-logo .client-logo-mark.dark {
  padding: 10px;
}
.client-billing,
.billing-workspace,
.billing-invoice-editor {
  gap: 1.25rem;
  min-width: 0;
  display: grid;
}
.billing-project-picker {
  grid-template-columns: 5rem minmax(0, 38rem);
  align-items: center;
  gap: 1rem;
  display: grid;
}
.billing-project-picker > label {
  font-size: 0.875rem;
  font-weight: 600;
}
.billing-plan-summary .section-heading {
  align-items: flex-start;
}
.billing-metrics {
  border-top: 1px solid var(--border, #e1e3e5);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  display: grid;
}
.billing-metrics > div {
  align-content: start;
  gap: 0.45rem;
  min-width: 0;
  display: grid;
}
.billing-metrics span {
  color: var(--muted-foreground, #62676b);
  font-size: 0.875rem;
}
.billing-metrics strong {
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
  font-size: 1.6rem;
  font-weight: 650;
}
.billing-metrics .billing-mode {
  letter-spacing: 0;
  font-size: 1rem;
}
.billing-warning {
  color: #654c24;
  background: #fff6e5;
  border: 1px solid #ebd7ab;
  border-radius: 0.5rem;
  margin-top: 1rem;
  padding: 1rem 1.15rem;
  font-size: 0.875rem;
}
.billing-warning p {
  margin: 0.35rem 0 0;
}
.billing-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem 2rem;
  margin: 0 0 1.5rem;
  display: grid;
}
.billing-facts > div {
  min-width: 0;
}
.billing-facts dt {
  color: var(--muted-foreground, #62676b);
  margin-bottom: 0.3rem;
  font-size: 0.875rem;
}
.billing-facts dd {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 1rem;
  line-height: 1.55;
}
.billing-source {
  background: var(--muted, #f6f7f8);
  border-left: 3px solid var(--primary, #8e1b30);
  margin-bottom: 1.25rem;
  padding: 1.15rem;
}
.billing-source p {
  white-space: pre-wrap;
  font-size: 0.9375rem;
}
.billing-terms-editor .form-grid {
  gap: 1.25rem;
}
.billing-terms-editor select {
  border: 1px solid var(--border, #d8dbdf);
  background: var(--background, #fff);
  width: 100%;
  min-height: 42px;
  font: inherit;
  border-radius: 0.4rem;
  padding: 0.6rem 0.8rem;
}
.billing-help {
  align-self: center;
  font-size: 0.875rem;
}
.billing-help p {
  color: var(--muted-foreground, #62676b);
  margin: 0.4rem 0;
}
.billing-review-confirm {
  border-top: 1px solid var(--border, #e1e3e5);
  margin-top: 1.5rem;
  padding-top: 1.25rem;
}
.billing-review-confirm p {
  color: var(--muted-foreground, #62676b);
  margin-top: 0.6rem;
  font-size: 0.875rem;
}
.billing-history {
  border-top: 1px solid var(--border, #e1e3e5);
  margin-top: 0.6rem;
  padding: 1rem 0;
}
.billing-history summary {
  cursor: pointer;
  font-size: 0.9375rem;
  font-weight: 600;
}
.billing-history p {
  white-space: pre-wrap;
}
.billing-dialog {
  max-height: 90dvh;
  overflow-y: auto;
  max-width: 750px !important;
}
.billing-dialog .form-grid {
  gap: 1rem;
}
.billing-milestone-options {
  gap: 0.65rem;
  padding: 0.6rem 0;
  display: grid;
}
.billing-note {
  gap: 0.5rem;
  margin-top: 1.2rem;
  display: grid;
}
.client-billing .core-tabs {
  max-width: 100%;
  overflow-x: auto;
}
.client-billing .core-table td {
  overflow-wrap: anywhere;
  max-width: 24rem;
}
.billing-invoice-editor .section-heading h2 {
  overflow-wrap: anywhere;
}
.billing-terms-editor fieldset,
.billing-invoice-editor fieldset,
.billing-dialog fieldset {
  min-width: 0;
}
.milestone-workspace {
  gap: 16px;
  min-width: 0;
  display: grid;
}
.milestone-hero {
  padding-bottom: 0;
}
.milestone-hero .section-heading {
  align-items: flex-start;
}
.milestone-summary {
  border-top: 1px solid var(--border);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 22px -24px 0;
  display: grid;
}
.milestone-summary > div {
  border-right: 1px solid var(--border);
  gap: 5px;
  min-width: 0;
  padding: 18px 24px;
  display: grid;
}
.milestone-summary > div:last-child {
  border-right: 0;
}
.milestone-summary span,
.milestone-summary small {
  color: #706c64;
  font-size: 12px;
}
.milestone-summary strong {
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
  font-size: 22px;
  font-weight: 650;
}
.milestone-summary small {
  line-height: 1.45;
}
.milestone-automation {
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  padding: 18px 22px;
  display: flex;
}
.milestone-automation > div:first-child {
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
  display: flex;
}
.milestone-automation h3 {
  margin: 0 0 4px;
  font-size: 14px;
}
.milestone-automation p {
  color: #706c64;
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
}
.milestone-setting-icon {
  color: #7a5520;
  background: #f6efe3;
  border-radius: 8px;
  flex: none;
  place-items: center;
  width: 34px;
  height: 34px;
  display: grid;
}
.milestone-mode {
  background: #f2f1ed;
  border: 1px solid #e5e2da;
  border-radius: 8px;
  flex: none;
  gap: 4px;
  padding: 3px;
  display: flex;
}
.milestone-mode button {
  text-align: left;
  color: #65615a;
  border-radius: 6px;
  gap: 2px;
  padding: 8px 11px;
  display: grid;
}
.milestone-mode button.active {
  color: #2d2926;
  background: #fff;
  box-shadow: 0 1px 4px #2d29261c;
}
.milestone-mode strong {
  font-size: 12px;
}
.milestone-mode small {
  color: #77736c;
  font-size: 10px;
}
.milestone-register {
  overflow: hidden;
}
.milestone-register .queue-toolbar {
  padding: 18px 22px;
}
.milestone-register .core-table th {
  font-size: 11px;
}
.milestone-register .core-table td {
  vertical-align: middle;
  padding-top: 15px;
  padding-bottom: 15px;
}
.milestone-register .core-table td:first-child {
  min-width: 270px;
}
.milestone-register .core-table td:nth-child(2) {
  min-width: 195px;
}
.milestone-register .core-table td:nth-child(3) {
  min-width: 135px;
}
.milestone-register .core-table td:nth-child(4) {
  min-width: 170px;
}
.milestone-register .core-table td:last-child {
  min-width: 150px;
}
.milestone-name {
  align-items: flex-start;
  gap: 13px;
  display: flex;
}
.milestone-name > span {
  color: #795521;
  background: #f4eee3;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 30px;
  height: 30px;
  font-size: 11px;
  font-weight: 700;
  display: grid;
}
.milestone-name > div {
  min-width: 0;
}
.milestone-name strong {
  font-size: 13px;
  line-height: 1.45;
  display: block;
}
.milestone-name small {
  color: #716d65;
  margin: 3px 0 7px;
  font-size: 11px;
  display: block;
}
.milestone-source {
  color: #32694a;
  background: #edf6f0;
  border-radius: 4px;
  align-items: center;
  gap: 4px;
  padding: 3px 6px;
  font-size: 10px;
  line-height: 1.3;
  display: inline-flex;
}
.milestone-source.unverified {
  color: #885f1e;
  background: #fff3dc;
}
.milestone-date {
  align-items: flex-start;
  gap: 9px;
  display: flex;
}
.milestone-date > svg {
  color: #8a6731;
  margin-top: 2px;
}
.milestone-date strong {
  font-size: 12px;
  font-weight: 600;
  display: block;
}
.milestone-date small {
  color: #716d65;
  margin-top: 4px;
  font-size: 11px;
  display: block;
}
.financial-label {
  color: #716d65;
  margin-bottom: 4px;
  font-size: 11px;
  display: block;
}
.milestone-amount {
  letter-spacing: -0.02em;
  white-space: nowrap;
  font-size: 18px;
  font-weight: 650;
  display: block;
}
.milestone-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}
.milestone-actions .btn.compact {
  min-height: 32px;
  padding: 6px 9px;
  font-size: 11px;
}
.milestone-actions .icon-button {
  width: 30px;
  height: 30px;
}
.milestone-queued {
  color: #6b665e;
  white-space: nowrap;
  font-size: 11px;
}
.milestone-unverified {
  background: #fffdfa;
}
.milestone-register .table-caption {
  border-top: 1px solid var(--border);
  color: #716d65;
  margin: 0;
  padding: 13px 22px;
  font-size: 11px;
}
.milestone-invoice-dialog {
  background: #f5f4f1;
  max-height: 92dvh;
  overflow: auto;
  width: min(960px, 100vw - 32px) !important;
  max-width: 960px !important;
}
.milestone-invoice-paper {
  color: #2d2926;
  background: #fff;
  border: 1px solid #d9d6ce;
  padding: 0 36px 34px;
  position: relative;
  box-shadow: 0 14px 42px #2d292612;
}
.invoice-brand-bar {
  background: #f5a623;
  height: 7px;
  margin: 0 -36px 32px;
}
.milestone-invoice-paper > header {
  border-bottom: 1px solid #dcd8cf;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  padding-bottom: 26px;
  display: flex;
}
.invoice-brand {
  gap: 8px;
  display: grid;
}
.invoice-brand img {
  width: 190px;
  height: auto;
  display: block;
}
.invoice-brand span {
  color: #736f68;
  letter-spacing: 0.04em;
  font-size: 11px;
}
.invoice-number {
  text-align: right;
  justify-items: end;
  gap: 8px;
  display: grid;
}
.invoice-number p {
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0;
  font:
    700 28px/1 Satoshi,
    Inter,
    sans-serif;
}
.invoice-number > strong {
  font-variant-numeric: tabular-nums;
  font-size: 13px;
}
.milestone-invoice-parties {
  grid-template-columns: 1fr 1fr;
  gap: 52px;
  padding: 26px 0 22px;
  display: grid;
}
.milestone-invoice-parties > div > span,
.milestone-invoice-project > span,
.milestone-invoice-paper footer span,
.invoice-fact-strip span {
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #77736c;
  margin-bottom: 6px;
  font-size: 10px;
  display: block;
}
.milestone-invoice-parties strong {
  font-size: 14px;
}
.milestone-invoice-parties p {
  white-space: pre-line;
  color: #59554e;
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.6;
}
.invoice-fact-strip {
  background: #ddd9d1;
  border: 1px solid #ddd9d1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-bottom: 18px;
  display: grid;
}
.invoice-fact-strip > div {
  background: #f8f6f1;
  min-width: 0;
  padding: 12px 14px;
}
.invoice-fact-strip strong {
  overflow-wrap: anywhere;
  font-size: 11px;
  line-height: 1.45;
  display: block;
}
.milestone-invoice-project {
  background: #faf9f6;
  border-left: 3px solid #f5a623;
  margin-bottom: 18px;
  padding: 12px 14px;
}
.milestone-invoice-project strong {
  font-size: 12px;
}
.milestone-invoice-paper table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
}
.milestone-invoice-paper th {
  text-align: left;
  color: #6c675f;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #cec9bf;
  padding: 10px 8px;
  font-size: 10px;
}
.milestone-invoice-paper th:not(:first-child),
.milestone-invoice-paper td:not(:first-child) {
  text-align: right;
}
.milestone-invoice-paper td {
  vertical-align: top;
  border-bottom: 1px solid #ebe8e1;
  padding: 16px 8px;
}
.milestone-invoice-paper td small {
  color: #77736c;
  margin-top: 5px;
  display: block;
}
.milestone-invoice-total {
  justify-content: flex-end;
  align-items: baseline;
  gap: 30px;
  padding: 22px 8px;
  display: flex;
}
.milestone-invoice-total span {
  color: #6f6a62;
  font-size: 12px;
}
.milestone-invoice-total strong {
  font-size: 26px;
}
.milestone-invoice-paper footer {
  border-top: 1px solid #dedbd4;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  padding-top: 22px;
  display: grid;
}
.milestone-invoice-paper footer p {
  margin: 0;
  font-size: 11px;
  line-height: 1.6;
}
.milestone-preview-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  display: flex;
}
.milestone-invoice-dialog > .billing-warning {
  margin-bottom: 0;
}
.invoice-compose-dialog {
  max-width: 860px !important;
}
.invoice-compose-back {
  color: #71501f;
  cursor: pointer;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 7px;
  margin: 0 0 10px;
  padding: 0;
  font-size: 12px;
  display: inline-flex;
}
.invoice-send-layout {
  grid-template-columns: minmax(0, 1fr) 230px;
  align-items: start;
  gap: 16px;
  display: grid;
}
.invoice-email-card,
.invoice-send-summary {
  background: #fff;
  border: 1px solid #dedbd4;
  border-radius: 8px;
}
.invoice-email-card {
  padding: 20px;
}
.invoice-email-heading {
  border-bottom: 1px solid #ebe8e1;
  align-items: center;
  gap: 11px;
  padding-bottom: 16px;
  display: flex;
}
.invoice-email-heading > span {
  color: #76531f;
  background: #f6efe3;
  border-radius: 50%;
  place-items: center;
  width: 34px;
  height: 34px;
  display: grid;
}
.invoice-email-heading strong,
.invoice-email-heading small {
  display: block;
}
.invoice-email-heading strong {
  font-size: 14px;
}
.invoice-email-heading small {
  color: #77736c;
  margin-top: 2px;
  font-size: 11px;
}
.invoice-email-fields {
  gap: 13px;
  padding: 17px 0;
  display: grid;
}
.invoice-email-fields label {
  color: #615d56;
  font-size: 12px;
}
.invoice-email-fields input,
.invoice-email-fields textarea {
  color: #2d2926;
  background: #fff;
  border: 1px solid #d8d4cc;
  border-radius: 5px;
  width: 100%;
  margin-top: 6px;
  padding: 10px 11px;
  font:
    13px/1.5 Inter,
    Arial,
    sans-serif;
  display: block;
}
.invoice-email-fields input[readonly] {
  color: #77736c;
  background: #f7f6f3;
}
.invoice-attachment {
  background: #faf9f6;
  border: 1px solid #e2ded6;
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  display: flex;
}
.invoice-attachment svg {
  color: #8a642c;
  flex: none;
}
.invoice-attachment div {
  flex: 1;
  min-width: 0;
}
.invoice-attachment strong,
.invoice-attachment small {
  overflow-wrap: anywhere;
  display: block;
}
.invoice-attachment strong {
  font-size: 12px;
}
.invoice-attachment small {
  color: #77736c;
  margin-top: 2px;
  font-size: 10px;
}
.invoice-attachment a {
  font-size: 11px;
  font-weight: 600;
}
.invoice-send-summary {
  padding: 18px;
}
.invoice-send-summary > span {
  color: #77736c;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 10px;
  display: block;
}
.invoice-send-summary > strong {
  margin: 5px 0 18px;
  font-size: 24px;
  display: block;
}
.invoice-send-summary dl {
  margin: 0;
}
.invoice-send-summary dl > div {
  border-top: 1px solid #ebe8e1;
  padding: 11px 0;
}
.invoice-send-summary dt {
  color: #77736c;
  margin-bottom: 4px;
  font-size: 10px;
}
.invoice-send-summary dd {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}
@media (width<=1000px) {
  .billing-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .billing-plan-summary .section-heading {
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (width<=900px) {
  .milestone-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .milestone-summary > div:nth-child(2) {
    border-right: 0;
  }
  .milestone-automation {
    flex-direction: column;
    align-items: stretch;
  }
  .milestone-mode {
    align-self: flex-start;
  }
}
@media (width<=640px) {
  .billing-facts {
    grid-template-columns: 1fr;
  }
  .billing-project-picker {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  .billing-metrics {
    gap: 1rem;
  }
  .billing-metrics strong {
    font-size: 1.25rem;
  }
  .client-billing .queue-toolbar {
    flex-wrap: wrap;
    gap: 1rem;
  }
  .billing-dialog {
    width: calc(100vw - 1.5rem) !important;
  }
  .billing-invoice-editor .section-heading {
    flex-wrap: wrap;
    gap: 1rem;
  }
  .milestone-summary {
    grid-template-columns: 1fr;
  }
  .milestone-summary > div {
    border-right: 0;
  }
  .milestone-mode {
    grid-template-columns: 1fr;
    width: 100%;
    display: grid;
  }
  .milestone-hero .section-heading {
    flex-wrap: wrap;
  }
  .milestone-invoice-paper {
    padding: 0 20px 20px;
  }
  .invoice-brand-bar {
    margin: 0 -20px 24px;
  }
  .milestone-invoice-parties,
  .milestone-invoice-paper footer {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .milestone-invoice-paper > header {
    gap: 18px;
  }
  .invoice-brand img {
    width: 135px;
  }
  .invoice-number p {
    font-size: 21px;
  }
  .invoice-fact-strip {
    grid-template-columns: 1fr;
  }
  .milestone-invoice-paper {
    min-width: 620px;
    overflow-x: auto;
  }
  .invoice-send-layout {
    grid-template-columns: 1fr;
  }
  .invoice-send-summary {
    order: -1;
  }
  .invoice-compose-dialog {
    width: calc(100vw - 20px) !important;
  }
}
.client360-editor section + section {
  border-top: 1px solid var(--border);
  margin-top: 32px;
  padding-top: 28px;
}
.client360-editor h2 {
  margin-bottom: 10px;
  font-size: 21px;
}
.client360-edit-title {
  margin: 0 0 24px;
  font:
    700 28px Satoshi,
    Inter,
    sans-serif;
}
.website-field {
  border: 1px solid var(--input);
  background: #fff;
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  display: flex;
}
.website-field input {
  min-width: 0;
  border: 0 !important;
  margin: 0 !important;
}
.website-field svg {
  color: #707372;
  flex: none;
}
.website-enrichment-action {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
  display: flex;
}
.website-enrichment-action small {
  color: #777a77;
}
.website-enrichment-result {
  color: #4d6241;
  background: #f6f9f2;
  border: 1px solid #d7dfcf;
  border-radius: 4px;
  align-items: flex-start;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.55;
  display: flex;
}
.website-enrichment-result svg {
  flex: none;
  margin-top: 1px;
}
.internal-user-picker [data-slot="input-group"] {
  width: 100%;
  height: 44px;
  margin-top: 7px;
}
.internal-user-picker input {
  min-width: 0;
  box-shadow: none !important;
  border: 0 !important;
  height: 40px !important;
  margin: 0 !important;
}
.selected-internal-user {
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  display: flex;
}
.selected-internal-user strong,
[data-slot="combobox-item"] strong {
  font-size: 14px;
  font-weight: 600;
  display: block;
}
.selected-internal-user small,
[data-slot="combobox-item"] small {
  color: #707372;
  font-size: 12px;
  line-height: 1.6;
  display: block;
}
.client-status-controls {
  flex-wrap: wrap;
  gap: 12px;
  display: flex;
}
.client-status-controls > div > span {
  color: #707372;
  margin-bottom: 6px;
  font-size: 12px;
  display: block;
}
.client-status-controls .pick {
  border-radius: 20px !important;
  min-width: 140px !important;
}
.client360-billing {
  gap: 22px;
  display: grid;
}
.instruction-editor select,
.annual-estimate-editor select {
  border: 1px solid var(--input);
  background: #fff;
  border-radius: 5px;
  width: 100%;
  min-height: 42px;
  margin-top: 7px;
  padding: 8px 12px;
  display: block;
}
.instruction-status {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 15px 0;
  display: flex;
}
.instruction-status small {
  color: #707372;
  font-size: 13px;
}
.instruction-facts {
  grid-template-columns: 1fr 1fr;
  gap: 0 28px;
  display: grid;
}
.instruction-facts > div {
  border-bottom: 1px solid #eceae5;
  min-width: 0;
  padding: 14px 0;
}
.instruction-facts dt {
  color: #707372;
  margin-bottom: 6px;
  font-size: 13px;
}
.instruction-facts dd {
  white-space: pre-line;
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.6;
}
.billing-contact-grid {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin: 22px 0;
  display: grid;
}
.billing-contact-card {
  background: #faf9f6;
  border: 1px solid #e8e5de;
  border-radius: 9px;
  min-width: 0;
  padding: 18px;
}
.billing-contact-card > small {
  color: #707372;
  margin-bottom: 8px;
  font-size: 12px;
  display: block;
}
.billing-contact-card > strong {
  font-size: 16px;
  display: block;
}
.billing-contact-card p {
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.6;
}
.billing-contact-card > a {
  overflow-wrap: anywhere;
  align-items: center;
  gap: 7px;
  margin-top: 12px;
  font-size: 14px;
  display: flex;
}
.billing-contact-card svg {
  flex: none;
}
.client360-assignments .assignment-primary-filters {
  flex-wrap: wrap;
}
.assignment-primary-filters > .pick {
  flex: 170px;
  max-width: 280px;
}
.assignment-advanced {
  border-bottom: 1px solid var(--border);
  padding: 16px 24px;
}
.assignment-advanced summary {
  cursor: pointer;
  font-size: 14px;
}
.assignment-advanced .form-grid {
  margin: 18px 0 2px;
}
.assignment-advanced small {
  color: #707372;
  margin-top: 7px;
  font-size: 12px;
  display: block;
}
.assignment-filter-summary {
  color: #707372;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 14px 24px;
  font-size: 13px;
  display: flex;
}
.client360-assignments .core-table th,
.client360-assignments .core-table td {
  vertical-align: top;
  width: 25%;
}
.client360-assignments .core-table th:first-child,
.client360-assignments .core-table td:first-child {
  width: 22%;
}
.client360-assignments .core-table th:nth-child(3),
.client360-assignments .core-table td:nth-child(3) {
  width: 28%;
}
.assignment-rate {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin: 15px 0;
  font-size: 14px;
  display: flex;
}
.assignment-rate strong {
  color: #707372;
  font-size: 12px;
  font-weight: 500;
}
.assignment-rate small {
  color: #707372;
  font-size: 12px;
}
.assignment-row-actions {
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin-top: 18px;
  display: flex;
}
.assignment-coverage-note {
  background: #fff5df;
  border-left: 2px solid #d89b29;
  margin-top: 12px;
  padding: 12px;
  font-size: 13px;
  line-height: 1.6;
}
.assignment-change-dialog {
  max-height: 90vh;
  overflow: auto;
  max-width: 680px !important;
}
.project-value-stack {
  gap: 14px;
  font-size: 16px;
  display: grid;
}
.project-value-stack > div {
  gap: 7px;
  display: grid;
}
.project-value-stack strong {
  font-size: 13px;
  font-weight: 500;
}
.project-value-stack small,
.project-actual-summary small {
  color: #707372;
  font-size: 12px;
  line-height: 1.6;
  display: block;
}
.project-actual-summary {
  border-top: 1px solid var(--border);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px;
  padding-top: 24px;
  display: grid;
}
.project-actual-summary > div {
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  display: flex;
}
.project-actual-summary strong {
  font-size: 14px;
}
.project-actual-summary.compact {
  border: 0;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  padding: 0;
  display: flex;
}
.project-actual-summary.compact strong {
  color: #707372;
  font-size: 12px;
}
.project-actual-summary.compact > div {
  gap: 5px;
  font-size: 14px;
}
.annual-estimate-editor {
  border-top: 1px solid var(--border);
  margin-top: 26px;
  padding-top: 26px;
}
.annual-assignment-row {
  grid-template-columns: 1fr 170px;
  align-items: center;
  gap: 16px;
  margin-top: 12px;
  font-size: 14px;
  display: grid;
}
.project-portfolio .core-table {
  min-width: 1040px;
}
.project-portfolio .core-table td:nth-child(4) {
  min-width: 250px;
}
.birthday-field > div {
  grid-template-columns: minmax(95px, 1fr) 65px 120px;
}
.birthday-field input {
  min-width: 0;
  margin-top: 7px !important;
}
.birthday-field label {
  min-width: 0;
}
.contact-partner-editor {
  grid-template-columns: minmax(100px, 1fr) minmax(90px, 0.7fr) minmax(
      280px,
      1.5fr
    ) 32px;
}
.contact-personal-editor .form-grid > .birthday-field {
  grid-column: 1/-1;
  max-width: 460px;
}
.personal-fact > div > small {
  color: #707372;
  margin-top: 6px;
  font-size: 13px;
  display: block;
}
@media (width<=1000px) {
  .contact-partner-editor {
    grid-template-columns: 1fr 1fr;
  }
  .contact-partner-editor .birthday-field {
    grid-column: 1/-1;
  }
  .project-actual-summary {
    grid-template-columns: 1fr;
  }
  .client-status-controls {
    width: 100%;
  }
}
@media (width<=650px) {
  .instruction-facts {
    grid-template-columns: 1fr;
  }
  .client-status-controls .pick {
    min-width: 120px !important;
  }
  .annual-assignment-row,
  .contact-partner-editor {
    grid-template-columns: 1fr;
  }
  .birthday-field > div {
    grid-template-columns: minmax(90px, 1fr) 60px 100px;
  }
  .client360-assignments .commercial-heading,
  .assignment-filter-summary {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .client360-assignments .assignment-primary-filters > .pick {
    flex-basis: 100%;
    max-width: none;
  }
}
.client360-assignments.assignment-board .core-table th:first-child {
  width: 22%;
}
.client360-assignments.assignment-board .core-table th:nth-child(2) {
  width: 27%;
}
.client360-assignments.assignment-board .core-table th:nth-child(3) {
  width: 28%;
}
.client360-assignments.assignment-board .core-table th:nth-child(4) {
  width: 23%;
}
.instruction-group {
  border-top: 1px solid var(--border, #e3e7eb);
  margin-top: 22px;
  padding-top: 16px;
}
.instruction-group h3 {
  margin-bottom: 12px;
  font-size: 14px;
}
.agreement-terms {
  border-top: 1px solid var(--border, #e3e7eb);
}
.agreement-payment {
  background: var(--muted, #f6f8fa);
  border-radius: 10px;
  margin: 16px 0;
  padding: 16px;
}
.agreement-payment p {
  margin: 8px 0 0;
  line-height: 1.65;
}
.agreement-terms textarea {
  width: 100%;
  min-height: 130px;
}
.billing-contact-card .section-heading {
  margin-bottom: 6px;
}
.project-portfolio .project-value-stack {
  min-width: 150px;
}
.consultant-section-stack {
  gap: 24px;
  margin: 24px 0;
  display: grid;
}
.consultant-section-stack > .panel + .panel {
  margin-top: 0;
}
.consultant-context {
  margin-top: 24px;
}
.consultant-context > summary {
  cursor: pointer;
  padding: 22px 26px;
  font-size: 16px;
  font-weight: 600;
}
.consultant-context > div,
.consultant-context > section {
  margin: 0 20px 20px;
}
.consultant-attention {
  background: #fff;
  border: 1px solid #dedfdb;
  border-radius: 6px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
}
.consultant-attention > div {
  border-right: 1px solid #e8e9e6;
  flex-direction: column;
  gap: 8px;
  padding: 23px;
  display: flex;
}
.consultant-attention > div:last-child {
  border: 0;
}
.consultant-attention strong {
  font-size: 28px;
}
.consultant-attention span {
  color: #626665;
  font-size: 14px;
  line-height: 1.5;
}
.directory-result-count {
  color: #707372;
  padding: 14px 24px;
  font-size: 14px;
}
.hr-context-docs {
  border-top: 1px solid #e8e9e6;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 20px;
  padding-top: 20px;
  display: grid;
}
.review-evidence-checks {
  margin-top: 24px;
}
.consultant-section-stack .core-table,
.consultant-section-stack .core-muted,
.person-profile-content .core-muted {
  font-size: 14px;
}
.consultant-section-stack .panel h2,
.person-profile-content .panel h2 {
  font-size: 17px;
}
.hr-section-stack,
.person-profile-content,
.profile-hr-details {
  gap: 24px;
}
.table-caption {
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.65;
}
.consultant-section-stack .source-link,
.person-profile-content .source-link {
  font-size: 14px !important;
}
@media (width<=1000px) {
  .review-columns {
    grid-template-columns: 1fr;
    overflow: visible;
  }
  .review-pane {
    height: auto;
    min-height: 440px;
  }
  .review-pane .document-viewer {
    min-height: 500px;
  }
  .review-workspace .page-heading .lead:after {
    content: none;
  }
  .consultant-attention {
    grid-template-columns: 1fr 1fr;
  }
  .hr-context-docs {
    grid-template-columns: 1fr;
  }
}
@media (width<=600px) {
  .consultant-attention {
    grid-template-columns: 1fr;
  }
  .consultant-attention > div {
    border-bottom: 1px solid #e8e9e6;
    border-right: 0;
  }
  .consultant-context > summary {
    padding: 18px;
  }
  .consultant-context > div,
  .consultant-context > section {
    margin: 0 10px 15px;
  }
}
.payroll-support-dialog {
  max-height: 90vh;
  overflow: auto;
  max-width: 720px !important;
}
.payroll-record-options {
  max-height: 220px;
  margin: 20px 0;
  overflow: auto;
}
.payroll-evidence-entry {
  margin: 15px 0 22px;
}
.payroll-evidence-entry p {
  font-size: 14px;
  line-height: 1.6;
}
.payroll-record-options label {
  margin: 12px 0;
}
.payroll-document-frame {
  border: 1px solid #e8e9e6;
  width: 100%;
  height: 380px;
  margin-top: 16px;
}
.review-evidence-checks .core-table-wrap {
  margin-top: 16px;
}
.submission-review .review-decision {
  margin-top: 24px;
  position: static;
}
.agreement-reader-heading {
  align-items: center;
  gap: 20px;
  margin: 0 0 24px;
  display: flex;
}
.agreement-reader-heading > div {
  flex: 1;
  min-width: 0;
}
.agreement-reader-heading h1 {
  overflow-wrap: anywhere;
  font-size: clamp(22px, 2.3vw, 30px);
  line-height: 1.25;
}
.agreement-reader-grid {
  grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.35fr);
  align-items: start;
  gap: 24px;
  display: grid;
}
.agreement-reader-grid > div > .panel + .panel {
  margin-top: 20px;
}
.agreement-document {
  min-width: 0;
  position: sticky;
  top: 24px;
  overflow: hidden;
}
.agreement-document .commercial-heading {
  align-items: flex-start;
  padding: 20px;
}
.agreement-document .commercial-heading > div {
  flex: 1;
  min-width: 0;
}
.agreement-document p {
  overflow-wrap: anywhere;
}
.agreement-document iframe {
  background: #edf0f3;
  border: 0;
  width: 100%;
  height: 78vh;
  min-height: 500px;
  display: block;
}
.agreement-document-caption,
.agreement-drive-note {
  color: var(--muted-foreground);
  padding: 12px 20px;
  font-size: 13px;
}
.agreement-value {
  background: #f5f6f7;
  border-radius: 8px;
  gap: 6px;
  margin: 18px 0;
  padding: 18px;
  display: grid;
}
.agreement-value strong {
  font-size: 22px;
  line-height: 1.3;
}
.agreement-value small {
  font-size: 13px;
  line-height: 1.5;
}
.agreement-facts {
  margin: 0;
}
.agreement-facts > div {
  border-bottom: 1px solid #e6e6e6;
  padding: 14px 0;
}
.agreement-facts dt {
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
}
.agreement-facts dd {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
}
.agreement-milestone {
  border-bottom: 1px solid #e6e6e6;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding: 16px 0;
  display: flex;
}
.agreement-milestone > div {
  min-width: 0;
}
.agreement-milestone small {
  margin-top: 6px;
  font-size: 13px;
  display: block;
}
.record-source-review {
  margin: 0 0 20px;
}
.record-source-review summary {
  cursor: pointer;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 22px;
  font-size: 14px;
  display: flex;
}
.record-source-review summary > span:first-child {
  align-items: center;
  gap: 10px;
  font-weight: 600;
  display: flex;
}
.source-review-body {
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  padding: 4px 22px 22px;
  font-size: 14px;
  line-height: 1.6;
  display: grid;
}
.source-review-body ul {
  padding-left: 20px;
}
.source-review-body h3 {
  font-size: 15px;
}
.review-totals {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  padding: 0 24px 24px;
  display: grid;
}
.review-totals > div {
  gap: 6px;
  display: grid;
}
.review-totals strong {
  font-size: 26px;
}
.review-totals span {
  font-size: 14px;
}
.management-review-summary {
  margin-bottom: 24px;
}
.management-review-summary > .commercial-heading {
  padding: 24px;
}
.review-outcome-list > div {
  border-top: 1px solid #e6e6e6;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 24px;
  display: flex;
}
.review-outcome-list > div > div {
  flex: 1;
  min-width: 0;
}
.review-outcome-list h3 {
  font-size: 15px;
}
.review-outcome-list p {
  overflow-wrap: anywhere;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.55;
}
.review-outcome-list .text-button {
  white-space: nowrap;
}
.review-outcome-list {
  max-height: 620px;
  overflow: auto;
}
@media (width<=1000px) {
  .agreement-reader-grid {
    grid-template-columns: 1fr;
  }
  .agreement-document {
    position: static;
  }
  .agreement-document iframe {
    height: 75vh;
  }
  .agreement-reader-heading {
    flex-wrap: wrap;
  }
  .agreement-reader-heading > div {
    min-width: calc(100% - 120px);
  }
}
@media (width<=640px) {
  .source-review-body {
    grid-template-columns: 1fr;
  }
  .record-source-review summary {
    flex-direction: column;
    gap: 6px;
  }
  .review-totals {
    grid-template-columns: 1fr 1fr;
  }
  .review-outcome-list > div {
    flex-wrap: wrap;
  }
  .review-outcome-list > div > div {
    flex-basis: 100%;
  }
  .agreement-document .commercial-heading {
    flex-wrap: wrap;
  }
  .agreement-document iframe {
    min-height: 440px;
  }
  .agreement-reader-heading > div {
    flex-basis: 100%;
    order: -1;
  }
  .agreement-milestone {
    flex-wrap: wrap;
  }
}
.agreement-rate-schedule > div {
  border-top: 1px solid var(--line, #ddd);
  justify-content: space-between;
  gap: 20px;
  padding: 16px 0;
  display: flex;
}
.agreement-rate-schedule > div > div {
  gap: 5px;
  min-width: 0;
  display: grid;
}
.agreement-rate-schedule span,
.agreement-rate-schedule small {
  color: var(--muted, #68707b);
  font-size: 12px;
}
.agreement-rate-schedule > div > strong {
  white-space: nowrap;
}
.agreement-external-document {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 280px;
  padding: 30px;
  display: flex;
}
.agreement-external-document p {
  max-width: 42ch;
  line-height: 1.6;
}
.agreement-table-panel table {
  table-layout: auto;
  min-width: 900px;
}
.agreement-table-panel td:nth-child(2) {
  white-space: nowrap;
  min-width: 160px;
}
.agreement-table-panel td:nth-child(2) small {
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  min-width: 140px;
}
.agreement-table-panel td:nth-child(3) {
  min-width: 155px;
}
.agreement-table-panel td:last-child {
  min-width: 145px;
}
.agreement-table-panel td:first-child {
  min-width: 260px;
}
.contact-editor-actions .contact-delete {
  margin-right: auto;
}
.btn.danger {
  color: #9d3636;
  background: #fff;
  border: 1px solid #e5b9b9;
}
.btn.danger:hover {
  background: #fff3f3;
  border-color: #d98f8f;
}
.btn.danger:disabled {
  opacity: 0.55;
}
.profile-photo-trigger {
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 16px;
  padding: 0;
}
.profile-photo-trigger:focus-visible {
  outline: 3px solid var(--brand, #335dca);
  outline-offset: 4px;
}
.profile-title {
  color: var(--text, #243451) !important;
  font-size: 1rem !important;
}
.profile-editor-layout {
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 32px;
  margin-top: 24px;
  display: grid;
}
.profile-editor-layout nav {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.profile-editor-layout nav button {
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 14px;
}
.profile-editor-layout nav button.active {
  color: #20479f;
  background: #eaf0fc;
  font-weight: 650;
}
.profile-editor-layout fieldset {
  border: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
}
.profile-editor-layout h3 {
  margin-bottom: 20px;
}
.person-photo-editor {
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
  display: flex;
}
.person-photo-editor input[type="file"] {
  max-width: 220px;
  font-size: 14px;
}
.photo-preview {
  object-fit: cover;
  border-radius: 16px;
  width: 88px;
  height: 88px;
}
.employment-effective {
  border-top: 1px solid #e1e6ee;
  margin-top: 24px;
  padding-top: 24px;
}
.hr-archive-dialog {
  max-height: 90vh;
  overflow-y: auto;
  width: calc(100vw - 32px) !important;
  max-width: 1100px !important;
}
.work-kpis button {
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  flex-direction: column;
  gap: 8px;
  padding: 8px;
  display: flex;
}
.work-kpis button[aria-pressed="true"] {
  background: #eaf0fc;
  border-radius: 8px;
  outline: 2px solid #4265b8;
}
.work-kpis button strong {
  font-size: 28px;
}
.work-kpis button span {
  color: #536176;
  font-size: 14px;
}
.client360-assignments .core-table {
  table-layout: fixed;
  min-width: 0;
}
.client360-assignments .core-table th,
.client360-assignments .core-table td {
  vertical-align: top;
  overflow-wrap: anywhere;
  width: 25%;
}
.client360-assignments .assignment-project {
  white-space: normal;
  text-align: left;
  margin: 8px 0;
  display: block;
}
.client360-assignments .assignment-rate {
  margin-top: 16px;
}
.client360-assignments .tag {
  margin-bottom: 8px;
}
.client360-assignments .row-person {
  margin: 12px 0;
}
.client360-assignments .assignment-row-actions {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 16px;
  display: flex;
}
@media (width<=900px) {
  .client360-assignments .core-table thead {
    display: none;
  }
  .client360-assignments .core-table,
  .client360-assignments .core-table tbody {
    display: block;
  }
  .client360-assignments .core-table tr {
    border-bottom: 2px solid #dce3ed;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: grid;
  }
  .client360-assignments .core-table td {
    border: 0;
    display: block;
    width: auto !important;
  }
  .client360-assignments .core-table td:before {
    content: attr(data-label);
    color: #617189;
    margin-bottom: 14px;
    font-size: 14px;
    font-weight: 650;
    display: block;
  }
  .profile-editor-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .profile-editor-layout nav {
    flex-flow: wrap;
  }
}
@media (width<=600px) {
  .client360-assignments .core-table tr {
    grid-template-columns: 1fr;
  }
  .work-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .person-editor {
    padding: 16px;
  }
  .person-photo-editor {
    gap: 12px;
  }
  .profile-editor-layout .form-grid {
    grid-template-columns: 1fr;
  }
  .person-editor .form-actions {
    background: #fff;
    padding: 16px 0;
    position: sticky;
    bottom: 0;
  }
  .core-tabs [role="tablist"] {
    justify-content: flex-start;
    max-width: 100%;
    overflow-x: auto;
  }
  .profile-photo-trigger .avatar.portrait {
    width: 64px;
    height: 64px;
  }
}
.employment-history .core-table th:last-child,
.employment-history .core-table td:last-child {
  width: 100px;
}
.employment-history .text-button {
  white-space: nowrap;
}
.client360-assignments .assignment-rate strong {
  white-space: normal;
  display: block;
}
.client360-assignments .core-table td .assignment-project {
  display: block !important;
}
.person-photo-editor label.btn {
  cursor: pointer;
  position: relative;
}
.person-photo-editor label.btn:focus-within {
  outline: 2px solid #4167bb;
}
.table-caption {
  display: block;
}
.work-kpis button {
  padding: 20px 22px;
}
.employment-history .queue-toolbar {
  justify-content: space-between;
}
.person-work-records,
.person-work-records > .panel {
  min-width: 0;
}
.person-work-records .core-table th:last-child,
.person-work-records .core-table td:last-child {
  min-width: 150px;
  width: 150px !important;
}
.person-work-records .core-table td:last-child .text-button {
  white-space: nowrap;
  margin: 8px 0;
  display: flex;
}
.person-work-records .core-table {
  min-width: 780px;
}
.person-work-records .core-table-wrap {
  max-width: 100%;
  overflow-x: auto;
}
.receivables-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}
.receivables-kpis > button {
  text-align: left;
  color: inherit;
  background: #fff;
  border: 1px solid #e7e4dd;
  border-radius: 8px;
  min-width: 0;
  padding: 20px;
}
.receivables-kpis span {
  color: #69655d;
  min-height: 32px;
  font-size: 12px;
  line-height: 1.4;
  display: block;
}
.receivables-kpis strong {
  font-variant-numeric: tabular-nums;
  margin-top: 8px;
  font-size: clamp(18px, 2vw, 26px);
  display: block;
}
.receivables-exceptions {
  color: #795d22;
  flex-wrap: wrap;
  gap: 10px 20px;
  padding: 14px 0;
  font-size: 12px;
  display: flex;
}
.receivables-summary > .commercial-method {
  margin-top: 12px;
}
.client-invoice-register td,
.engagement-portfolio td {
  white-space: normal;
  overflow-wrap: anywhere;
  vertical-align: top;
  line-height: 1.6;
}
.engagement-portfolio td:first-child {
  min-width: 205px;
  max-width: 280px;
}
.engagement-portfolio td:nth-child(2) {
  min-width: 145px;
}
.engagement-portfolio td:nth-child(3) {
  min-width: 180px;
}
.engagement-portfolio td:nth-child(4),
.engagement-portfolio td:nth-child(5) {
  min-width: 145px;
}
.assignment-engagement {
  margin-top: 10px;
  display: block;
}
.assignment-period {
  margin-top: 10px;
  line-height: 1.5;
}
.client360-assignments td {
  white-space: normal;
  min-width: 185px;
}
.client360-assignments td:last-child {
  min-width: 200px;
}
.contact-mailing-address {
  border-top: 1px solid #e9e6de;
  border-bottom: 1px solid #e9e6de;
  margin: 24px 0;
  padding: 20px 0;
}
.contact-personal-card address {
  margin-top: 6px;
  font-style: normal;
  line-height: 1.8;
}
.client360-editor h2 {
  margin-bottom: 18px;
}
.client360-editor > form > fieldset > section + section {
  border-top: 1px solid #e7e4dd;
  margin-top: 26px;
  padding-top: 24px;
}
.client-status-controls {
  min-width: 210px;
}
.agreement-table-panel td {
  white-space: normal;
  line-height: 1.6;
}
.client-invoice-register .queue-toolbar {
  flex-wrap: wrap;
}
.client-invoice-register td:first-child {
  min-width: 190px;
}
.client-invoice-register td:nth-child(2) {
  min-width: 160px;
}
.client-invoice-register td:nth-child(3),
.client-invoice-register td:nth-child(4),
.client-invoice-register td:nth-child(5) {
  min-width: 105px;
}
@media (width<=1050px) {
  .receivables-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width<=550px) {
  .receivables-kpis {
    gap: 8px;
  }
  .receivables-kpis > button {
    padding: 13px;
  }
  .receivables-kpis strong {
    font-size: 19px;
  }
  .receivables-kpis span {
    font-size: 11px;
  }
  .client-status-controls {
    width: 100%;
    min-width: 0;
  }
}
.client360-editor select {
  color: #45423d;
  background: #fff;
  border: 1px solid #d7d4cd;
  border-radius: 4px;
  width: 100%;
  height: 44px;
  margin-top: 6px;
  padding: 10px 12px;
  display: block;
}
.client360-assignments td[data-label="Commercial\ Terms"] > .text-button {
  margin-top: 10px;
  display: flex;
}
.engagement-value-stack small {
  color: #76716b;
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.65;
  display: block;
}
.engagement-value-stack > div > strong {
  margin-bottom: 5px;
  font-size: 12px;
  display: block;
}
.engagement-value-stack > span {
  display: block;
}
.receivables-kpis > button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #bd8310;
}
.client360-assignments .assignment-period {
  gap: 7px;
  min-width: 0;
  margin: 16px 0 20px;
  display: grid;
}
.client360-assignments .assignment-period > strong,
.client360-assignments .assignment-rate > strong {
  color: #626665;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
}
.client360-assignments .assignment-period > span {
  font-variant-numeric: tabular-nums;
  overflow-wrap: normal;
  font-size: 0.9375rem;
  font-weight: 550;
  line-height: 1.6;
  display: block;
}
.client360-assignments .assignment-rate > span {
  font-size: 0.9375rem;
  line-height: 1.5;
}
.client360-assignments .core-table td {
  padding-block: 24px;
}
.engagement-overview {
  gap: 22px;
  margin-top: 22px;
  display: grid;
}
.core-main .engagement-overview > .panel + .panel {
  margin-top: 0;
}
.engagement-financial-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px;
  display: grid;
}
.engagement-financial-grid > .engagement-value-stack {
  border-right: 1px solid #e5e6e2;
  padding-right: 24px;
}
.engagement-financial-grid .engagement-actual-summary {
  display: contents;
}
.engagement-financial-grid .engagement-actual-summary > div {
  min-width: 0;
}
.engagement-financial-grid .engagement-actual-summary > div:first-child {
  border-right: 1px solid #e5e6e2;
  padding-right: 24px;
}
.engagement-financial-grid .engagement-value-stack > div > strong,
.engagement-financial-grid .engagement-actual-summary > div > strong {
  color: #626665;
  margin-bottom: 12px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.55;
  display: block;
}
.engagement-financial-grid .engagement-value-stack {
  font-variant-numeric: tabular-nums;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
}
.engagement-financial-grid .engagement-value-stack small {
  color: #626665;
  margin-top: 8px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  display: block;
}
.engagement-financial-grid .engagement-value-stack > span {
  font-size: 1rem;
  font-weight: 400;
}
.engagement-detail-groups {
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-top: 24px;
  display: grid;
}
.engagement-detail-groups h3,
.record-field-section h3 {
  margin: 0 0 16px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}
.engagement-detail-groups dl {
  gap: 20px;
  display: grid;
}
.engagement-detail-groups dl > div {
  min-width: 0;
}
.engagement-detail-groups dt {
  color: #626665;
  margin-bottom: 6px;
  font-size: 0.875rem;
}
.engagement-detail-groups dd {
  overflow-wrap: anywhere;
  font-size: 1rem;
  line-height: 1.6;
}
.engagement-detail-groups .text-button {
  font-size: inherit;
  text-align: left;
  white-space: normal;
}
.engagement-archive {
  margin-top: 22px;
}
.engagement-archive > summary {
  cursor: pointer;
  padding: 20px 26px;
  font-size: 0.9375rem;
  font-weight: 550;
}
.engagement-archive > section.panel {
  box-shadow: none;
  border: 0;
  margin: 0 22px 22px !important;
}
.engagement-terms-text {
  white-space: pre-line;
  margin: 18px 0;
  font-size: 1rem;
  line-height: 1.7;
}
.record-field-section {
  border-bottom: 1px solid #e5e6e2;
  padding-block: 24px;
}
.record-field-section:last-child {
  border: 0;
}
.record-field-section .form-grid {
  margin: 0;
}
.engagement-editor fieldset {
  min-width: 0;
}
@media (width<=900px) {
  .engagement-financial-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .engagement-financial-grid > .engagement-value-stack,
  .engagement-financial-grid .engagement-actual-summary > div:first-child {
    border-bottom: 1px solid #e5e6e2;
    border-right: 0;
    padding: 0 0 20px;
  }
  .engagement-detail-groups {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}
@media (width<=760px) {
  .client360-assignments .core-table,
  .client360-assignments .core-table tbody {
    width: 100%;
    min-width: 0;
    display: block;
  }
  .client360-assignments .core-table thead {
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    position: absolute;
    overflow: hidden;
  }
  .client360-assignments .core-table tr {
    border-bottom: 1px solid #dedfdb;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    padding: 18px;
    display: grid;
  }
  .client360-assignments .core-table td {
    border: 0;
    padding: 0;
    display: block;
    width: auto !important;
    min-width: 0 !important;
  }
  .client360-assignments .core-table td:first-child,
  .client360-assignments .core-table td:last-child {
    grid-column: 1/-1;
  }
  .client360-assignments .core-table td:before {
    content: attr(data-label);
    color: #626665;
    margin-bottom: 12px;
    font-size: 0.875rem;
    font-weight: 600;
    display: block;
  }
  .client360-assignments .assignment-row-actions {
    flex-flow: wrap;
  }
  .client360-assignments .core-table-wrap {
    overflow: visible;
  }
}
@media (width<=480px) {
  .client360-assignments .core-table tr {
    grid-template-columns: 1fr;
  }
  .client360-assignments .assignment-period {
    margin-block: 12px;
  }
  .engagement-archive > section.panel {
    margin-inline: 8px !important;
  }
}
.client360-assignments .assignment-link-slot .assignment-engagement {
  margin: 0;
}
.client360-assignments .assignment-link-slot .text-button {
  text-align: left;
  white-space: normal;
  line-height: 1.6;
}
@media (width>=761px) {
  .client360-assignments .core-table,
  .client360-assignments .core-table thead,
  .client360-assignments .core-table tbody {
    width: 100%;
    display: block;
  }
  .client360-assignments .core-table tr {
    grid-template-columns: 22% 27% 28% 23%;
    display: grid;
  }
  .client360-assignments .core-table thead tr {
    grid-template-rows: auto;
  }
  .client360-assignments .core-table tbody tr {
    border-bottom: 1px solid #e5e6e2;
    grid-template-rows: auto auto auto auto;
    row-gap: 16px;
    padding-block: 24px;
  }
  .client360-assignments.assignment-board .core-table th,
  .client360-assignments.assignment-board .core-table td {
    box-sizing: border-box;
    max-width: none;
    width: auto !important;
    min-width: 0 !important;
  }
  .client360-assignments .core-table tbody td {
    border-bottom: 0;
    padding-block: 0;
  }
  .client360-assignments .core-table tbody td:first-child {
    grid-area: 1/1 / span 4;
  }
  .client360-assignments .core-table tbody td:last-child {
    grid-area: 1/4 / span 4;
  }
  .client360-assignments .core-table tbody td:nth-child(2) {
    grid-column: 2;
  }
  .client360-assignments .core-table tbody td:nth-child(3) {
    grid-column: 3;
  }
  .client360-assignments .assignment-aligned-terms {
    grid-template-rows: subgrid;
    grid-row: 1 / span 4;
    align-items: start;
    display: grid;
  }
  .client360-assignments .assignment-aligned-terms .tag {
    margin: 0;
  }
  .client360-assignments .assignment-aligned-terms .assignment-period,
  .client360-assignments .assignment-aligned-terms .assignment-rate {
    gap: 7px;
    margin: 0;
  }
  .client360-assignments .assignment-aligned-terms .assignment-period > strong,
  .client360-assignments .assignment-aligned-terms .assignment-rate > strong {
    line-height: 1.5;
  }
}
.engagement-value-stack .labor-cost-amount {
  font: inherit !important;
  color: inherit !important;
  margin: 0 !important;
  display: block !important;
}
.labor-cost-summary small {
  display: block;
}
.labor-cost-link {
  width: fit-content;
  margin-top: 8px;
  font-size: 0.8125rem;
  font-weight: 500;
  display: block;
}
.labor-cost-dialog {
  width: calc(100vw - 32px);
  max-height: 90vh;
  overflow-y: auto;
  max-width: 1000px !important;
}
.labor-cost-totals {
  flex-wrap: wrap;
  gap: 24px;
  display: flex;
}
.labor-cost-totals dl {
  background: #f7f8f6;
  border-radius: 10px;
  flex: 1;
  min-width: 260px;
  margin: 0;
  padding: 16px;
}
.labor-cost-totals dl > div {
  justify-content: space-between;
  gap: 16px;
  padding: 7px 0;
  display: flex;
}
.labor-cost-totals dd {
  font-variant-numeric: tabular-nums;
  margin: 0;
}
.labor-cost-total {
  border-top: 1px solid #dedfd9;
  font-weight: 600;
}
.labor-cost-note {
  color: #626665;
  font-size: 0.875rem;
  line-height: 1.6;
}
.labor-cost-person > summary {
  cursor: pointer;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 8px 0;
  display: flex;
}
.labor-cost-person > summary > span {
  gap: 10px;
  font-size: 0.8125rem;
  display: flex;
}
.labor-cost-person > summary > strong:before {
  content: "▸";
  margin-right: 8px;
  display: inline-block;
}
.labor-cost-person[open] > summary > strong:before {
  transform: rotate(90deg);
}
.labor-cost-person table {
  margin-top: 12px;
}
.engagement-value-stack small.financial-amount-label {
  color: #4c514f;
  margin: 0 0 4px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
}
.employer-cost-value {
  border-top: 1px solid #e5e6e2;
  margin-top: 14px;
  padding-top: 12px;
}
.billing-payment-totals {
  font-variant-numeric: tabular-nums;
  margin: 12px 0 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
}
.billing-payment-totals > div {
  justify-content: space-between;
  gap: 16px;
  padding: 3px 0;
  display: flex;
}
.billing-payment-totals dt {
  color: #626665;
}
.billing-payment-totals dd {
  text-align: right;
  white-space: nowrap;
  margin: 0;
}
.billing-payment-totals .billing-outstanding {
  border-top: 1px solid #e5e6e2;
  margin-top: 6px;
  padding-top: 8px;
  font-weight: 600;
}
.billing-payment-totals .billing-overdue dd {
  color: #a34032;
}
.labor-cost-people > .labor-cost-person {
  border-top: 1px solid #e5e6e2;
  padding: 8px 0;
}
.ob-shell {
  color: #2d2926;
  background: #f6f6f5;
  min-height: 100vh;
}
.ob-header {
  background: #2d2926;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  height: 88px;
  padding: 0 max(28px, 50vw - 640px);
  display: flex;
}
.ob-header > .core-brand {
  flex-shrink: 0;
}
.ob-header > div,
.ob-header > span {
  color: #d5d5cf;
  align-items: center;
  gap: 22px;
  font-size: 12px;
  display: flex;
}
.ob-header span:has(> svg) {
  align-items: center;
  gap: 7px;
  display: flex;
}
.ob-header a:not(.core-brand) {
  color: #e8d6ad;
  font-size: 12px;
  text-decoration: none;
}
.ob-demo-label {
  letter-spacing: 0.08em;
  color: #80570e;
  white-space: nowrap;
  background: #fff4dc;
  border: 1px solid #c19b535e;
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 10px;
  font-weight: 650;
  display: inline-flex;
}
.ob-demo-bar {
  color: #716147;
  background: #fff4df;
  border-bottom: 1px solid #e8d8b9;
  justify-content: center;
  align-items: center;
  gap: 24px;
  padding: 8px 28px;
  font-size: 11px;
  display: flex;
}
.ob-steps {
  scrollbar-width: thin;
  gap: 0;
  max-width: 1280px;
  margin: auto;
  padding: 23px 24px 0;
  display: flex;
  overflow-x: auto;
}
.ob-steps button {
  white-space: nowrap;
  color: #858681;
  text-align: left;
  background: 0 0;
  border: 0;
  border-bottom: 2px solid #e0e1dc;
  flex: 1;
  align-items: center;
  gap: 8px;
  padding: 11px 12px 18px;
  font-size: 11px;
  display: flex;
}
.ob-steps button > span {
  border: 1px solid #dedfd9;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 23px;
  height: 23px;
  font-size: 10px;
  display: grid;
}
.ob-steps strong {
  font-weight: 500;
}
.ob-steps .current {
  color: #2d2926;
  border-bottom-color: #ffa400;
}
.ob-steps .current > span {
  background: #ffa400;
  border-color: #ffa400;
  font-weight: 650;
}
.ob-steps .visited {
  color: #515c4c;
}
.ob-steps .visited > span {
  background: #eef1e9;
  border-color: #d8decf;
}
.ob-body {
  max-width: 1280px;
  margin: auto;
  padding: 32px 36px 0;
}
.ob-overline {
  letter-spacing: 0.14em;
  color: #7c7e77;
  font-weight: 650;
  line-height: 1.5;
  margin: 0 0 12px !important;
  font-size: 10px !important;
}
.ob-section-heading {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 1px 0 26px;
  display: flex;
}
.ob-section-heading h1 {
  letter-spacing: -0.035em;
  margin: 0 0 8px;
  line-height: 1.25;
  font-size: 30px !important;
}
.ob-section-heading p:last-child {
  color: #707372;
  font-size: 13px;
  line-height: 1.6;
}
.ob-form-panel {
  background: #fff;
  border: 1px solid #e1e2dd;
  border-radius: 7px;
  padding: 27px 30px;
}
.ob-form-panel h2 {
  margin: 0 0 19px;
  font-size: 15px;
  font-weight: 550;
}
.ob-form-panel h3 {
  margin: 0 0 12px;
  font-size: 13px;
  font-weight: 550;
}
.ob-step-form {
  border: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
}
.ob-step-form:disabled {
  opacity: 0.85;
}
.ob-form-grid {
  gap: 20px 24px;
  display: grid;
}
.ob-form-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ob-form-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ob-full {
  grid-column: 1/-1;
}
.ob-field {
  min-width: 0;
}
.ob-field > label,
.ob-found-field > label,
.ob-textarea {
  color: #52564e;
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 550;
  display: block;
}
.ob-field > label > span {
  color: #ad8c52;
}
.ob-field input,
.ob-field select,
.ob-found-field input,
.ob-ssn-row input,
.ob-link-dialog input,
.ob-textarea textarea {
  color: #2d2926;
  background: #fff;
  border: 1px solid #d4d7cf;
  border-radius: 4px;
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 8px 10px;
  font-size: 13px;
  box-shadow: 0 1px 2px #2d292602;
}
.ob-field input:focus,
.ob-field select:focus,
.ob-found-field input:focus,
.ob-textarea textarea:focus {
  outline-offset: 1px;
  border-color: #d7aa5e;
  outline: 2px solid #ffa40066;
}
.ob-field > small {
  color: #81857d;
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.6;
  display: block;
}
.ob-address {
  border: 0;
  border-top: 1px solid #eeefe9;
  min-width: 0;
  margin: 26px 0 0;
  padding: 22px 0 0;
}
.ob-address legend {
  padding: 0 12px 0 0;
  font-size: 13px;
  font-weight: 600;
}
.ob-address-line {
  grid-template-columns: 3fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
  display: grid;
}
.ob-address-locality {
  grid-template-columns: 1fr 1fr 0.8fr 1fr;
  gap: 20px;
  display: grid;
}
.ob-profile-layout {
  grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr);
  align-items: start;
  gap: 42px;
  display: grid;
}
.ob-profile-card > .ob-overline {
  text-align: center;
  margin: 0 0 16px !important;
}
.ob-headshot-upload {
  border-top: 1px solid #eceee7;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 27px;
  padding-top: 25px;
  display: flex;
}
.ob-headshot-upload p {
  color: #777b72;
  font-size: 12px;
  line-height: 1.7;
}
.ob-upload {
  cursor: pointer;
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  display: inline-flex;
  position: relative;
}
.ob-upload input {
  opacity: 0;
  cursor: pointer;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.ob-region-options {
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 28px;
  display: grid;
}
.ob-region-options button {
  text-align: left;
  color: #70776a;
  background: #fff;
  border: 1px solid #dce0d6;
  border-radius: 6px;
  align-items: center;
  gap: 18px;
  padding: 21px 24px;
  display: flex;
}
.ob-region-options button.selected {
  background: #fffbf2;
  border-color: #d9ae5d;
  box-shadow: inset 0 0 0 1px #d9ae5d33;
}
.ob-region-options img {
  object-fit: contain;
  width: 35px;
  height: 35px;
}
.ob-region-options button > span {
  flex: 1;
}
.ob-region-options strong {
  color: #2d2926;
  font-size: 14px;
  font-weight: 550;
  display: block;
}
.ob-region-options small {
  color: #777b72;
  margin-top: 4px;
  font-size: 11px;
  display: block;
}
.ob-auth-options {
  flex-wrap: wrap;
  gap: 9px;
  display: flex;
}
.ob-auth-options button {
  background: #fff;
  border: 1px solid #dce0d6;
  border-radius: 5px;
  align-items: center;
  gap: 9px;
  padding: 12px 14px;
  font-size: 12px;
  display: flex;
}
.ob-auth-options .selected {
  background: #fffbf2;
  border-color: #d9ae5d;
}
.ob-radio {
  border: 1px solid #c3c8bc;
  border-radius: 50%;
  place-items: center;
  width: 14px;
  height: 14px;
  display: grid;
}
.ob-radio i {
  background: #b88220;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}
.ob-auth-details {
  max-width: 650px;
  margin-top: 24px;
}
.ob-context-note {
  color: #777b72;
  align-items: flex-start;
  gap: 9px;
  margin: 22px 0 0;
  font-size: 11px;
  line-height: 1.8;
  display: flex;
}
.ob-context-note svg {
  flex: none;
  margin-top: 3px;
}
.ob-context-note a {
  color: #876421;
  text-decoration: underline;
}
.ob-document-count {
  color: #656f5c;
  white-space: nowrap;
  background: #ecefe7;
  border-radius: 5px;
  padding: 8px 11px;
  font-size: 11px;
}
.ob-identity-choice {
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 19px;
  display: flex;
}
.ob-identity-choice .ob-field {
  flex: 1;
  min-width: 220px;
  max-width: 320px;
}
.ob-identity-choice p {
  color: #777b72;
  max-width: 340px;
  margin-top: 25px;
  font-size: 11px;
  line-height: 1.7;
}
.ob-doc-workspace {
  background: #fff;
  border: 1px solid #dfe2d9;
  border-radius: 7px;
  grid-template-columns: 190px minmax(260px, 1fr) 280px;
  min-height: 450px;
  display: grid;
  overflow: hidden;
}
.ob-doc-list {
  background: #fafbf8;
  border-right: 1px solid #e5e7df;
  min-width: 0;
  padding: 17px 10px;
}
.ob-doc-list > .ob-overline {
  justify-content: space-between;
  padding: 0 6px;
  display: flex;
  font-size: 9px !important;
}
.ob-doc-list > button {
  text-align: left;
  background: 0 0;
  border: 1px solid #0000;
  border-radius: 5px;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 63px;
  margin-bottom: 3px;
  padding: 8px 5px;
  display: flex;
}
.ob-doc-list > button.selected {
  background: #fff5e0;
  border-color: #ebd7b0;
}
.ob-doc-list strong {
  color: #4c5147;
  font-size: 11px;
  font-weight: 550;
  line-height: 1.35;
  display: block;
}
.ob-doc-list small {
  color: #8a8f81;
  margin-top: 4px;
  font-size: 9px;
  display: block;
}
.ob-doc-list button > svg {
  color: #4c7956;
  flex: none;
  margin-left: auto;
}
.ob-doc-thumb {
  background: #fff;
  border: 1px solid #e3e6dc;
  border-radius: 3px;
  place-items: center;
  width: 38px;
  min-width: 38px;
  height: 32px;
  display: grid;
  overflow: hidden;
}
.ob-doc-thumb .ob-doc-art {
  width: 38px;
  height: 19px;
  min-height: 0;
}
.ob-doc-thumb .ob-private-doc {
  padding: 0;
  font-size: 0;
}
.ob-doc-thumb .ob-private-doc svg {
  width: 18px;
  height: 18px;
}
.ob-doc-thumb
  :is(.ob-private-doc strong, .ob-private-doc p, .ob-private-doc span) {
  display: none;
}
.ob-doc-thumb img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.ob-doc-stage {
  background: #f0f1ed;
  border-right: 1px solid #e1e4da;
  flex-direction: column;
  min-width: 0;
  display: flex;
}
.ob-doc-stage-bar {
  color: #686f5f;
  background: #f8f9f5;
  border-bottom: 1px solid #e0e2d9;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 15px 18px;
  font-size: 11px;
  display: flex;
}
.ob-doc-canvas {
  flex: 1;
  justify-content: center;
  align-items: center;
  min-height: 260px;
  padding: 25px 20px;
  display: flex;
}
.ob-doc-art {
  aspect-ratio: 2;
  background-image: url(/onboarding/documents.png);
  background-repeat: no-repeat;
  background-size: 200% 400%;
  border-radius: 3px;
  width: 100%;
  box-shadow: 0 4px 16px #2d292610;
}
.ob-doc-stage-foot {
  color: #7c8374;
  letter-spacing: 0.03em;
  border-top: 1px solid #dee2d5;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 12px 15px;
  font-size: 8px;
  display: flex;
}
.ob-doc-stage-foot .btn {
  min-height: 31px;
  padding: 5px 10px;
  font-size: 10px;
}
.ob-doc-canvas iframe {
  border: 0;
  width: 100%;
  height: 390px;
}
.ob-uploaded-doc {
  object-fit: contain;
  width: 100%;
  max-height: 450px;
}
.ob-found {
  flex-direction: column;
  min-width: 0;
  padding: 19px 18px;
  display: flex;
}
.ob-found > div > h3 {
  margin: 0 0 6px;
  font-size: 14px;
  font-weight: 600;
}
.ob-found > div > p:not(.ob-overline) {
  color: #8a8e82;
  margin-bottom: 14px;
  font-size: 10px;
  line-height: 1.65;
}
.ob-found-fields {
  flex: 1;
  max-height: 340px;
  padding-right: 4px;
  overflow: auto;
}
.ob-found-field {
  margin-bottom: 12px;
}
.ob-found-field > label {
  margin-bottom: 5px;
  font-size: 10px;
}
.ob-found-field input {
  height: 34px;
  padding: 7px 9px;
  font-size: 12px;
}
.ob-found-field small {
  color: #777f6e;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  font-size: 9px;
  display: flex;
}
.ob-field-meta {
  color: #909788;
  margin-top: 4px;
  font-size: 9px;
  display: block;
}
.ob-confirm {
  color: #4f5547;
  align-items: flex-start;
  gap: 10px;
  margin-top: 22px;
  font-size: 12px;
  line-height: 1.7;
  display: flex;
}
.ob-confirm input[type="checkbox"] {
  accent-color: #b98121;
  cursor: pointer;
  width: 16px;
  min-width: 16px;
  height: 16px;
  margin-top: 3px;
}
.ob-found .ob-confirm {
  border-top: 1px solid #e9ece2;
  margin-top: 13px;
  padding-top: 15px;
  font-size: 10px;
}
.ob-ssn-row {
  align-items: center;
  gap: 9px;
  display: flex;
}
.ob-ssn-row input {
  flex: 1;
  min-width: 0;
}
.ob-ssn-row button {
  font-size: 10px;
}
.ob-private-doc {
  text-align: center;
  color: #79806f;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  padding: 25px;
  font-size: 12px;
  display: flex;
}
.ob-private-doc p {
  max-width: 220px;
  font-size: 11px;
  line-height: 1.7;
}
.ob-private-doc > span {
  letter-spacing: 0.06em;
  font-size: 20px;
}
.ob-warning {
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  font-size: 11px;
  display: flex;
  color: #996c25 !important;
}
.ob-voluntary-intro {
  background: #f7f9f3;
  border: 1px solid #e3e8d9;
  border-radius: 5px;
  align-items: center;
  gap: 18px;
  margin-bottom: 27px;
  padding: 19px 23px;
  display: flex;
}
.ob-voluntary-intro svg {
  color: #838c70;
  flex: none;
}
.ob-voluntary-intro p {
  color: #6f7763;
  font-size: 12px;
  line-height: 1.8;
}
.ob-field-explanation {
  color: #818877;
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.7;
}
.ob-review-grid {
  background: #fff;
  border: 1px solid #e0e3d9;
  border-radius: 7px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  display: grid;
  overflow: hidden;
}
.ob-review-grid section {
  border-bottom: 1px solid #eceee6;
  border-right: 1px solid #eceee6;
  min-width: 0;
  padding: 17px 18px;
}
.ob-review-grid section > div {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 9px;
  display: flex;
}
.ob-review-grid h3 {
  color: #818877;
  font-size: 10px;
  font-weight: 550;
}
.ob-review-grid button {
  font-size: 9px;
}
.ob-review-grid strong {
  overflow-wrap: anywhere;
  font-size: 11px;
  font-weight: 550;
  line-height: 1.6;
  display: block;
}
.ob-review-grid p {
  color: #858c7b;
  overflow-wrap: anywhere;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.7;
}
.ob-review-docs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin: 17px 0;
  display: grid;
}
.ob-review-docs > button {
  text-align: left;
  background: #fff;
  border: 1px solid #e1e5d8;
  border-radius: 5px;
  align-items: center;
  gap: 11px;
  min-width: 0;
  padding: 10px;
  display: flex;
}
.ob-review-docs > button > span {
  flex: 1;
  min-width: 0;
}
.ob-review-docs strong {
  font-size: 10px;
  font-weight: 550;
  line-height: 1.6;
  display: block;
}
.ob-review-docs small {
  color: #7d8870;
  font-size: 9px;
  line-height: 1.6;
  display: block;
}
.ob-review-docs > button > svg {
  color: #929984;
  flex: none;
}
.ob-review-thumb {
  background: #fff;
  border: 1px solid #eaede3;
  place-items: center;
  width: 70px;
  min-width: 70px;
  height: 45px;
  display: grid;
  overflow: hidden;
}
.ob-review-thumb .ob-doc-art {
  width: 70px;
  height: 35px;
}
.ob-review-thumb .ob-private-doc {
  padding: 0;
}
.ob-review-thumb .ob-private-doc :not(svg) {
  display: none;
}
.ob-review-thumb .ob-private-doc svg {
  width: 20px;
}
.ob-review-thumb iframe {
  pointer-events: none;
  height: 40px;
}
.ob-certification {
  background: #faf9f3;
  border: 1px solid #dfdfd4;
  border-radius: 6px;
  grid-template-columns: 1.3fr 1fr;
  gap: 35px;
  margin-top: 18px;
  padding: 23px 25px;
  display: grid;
}
.ob-certification h2 {
  margin: 0 0 10px;
  font-size: 15px;
  font-weight: 600;
}
.ob-certification p:not(.ob-overline) {
  color: #747865;
  margin-bottom: 8px;
  font-size: 11px;
  line-height: 1.85;
}
.ob-certification .text-button {
  margin-top: 4px;
  font-size: 10px;
}
.ob-certification small {
  color: #929580;
  margin-top: 12px;
  font-size: 9px;
  line-height: 1.8;
  display: block;
}
.ob-certification .ob-confirm {
  margin-top: 12px;
  font-size: 11px;
  font-weight: 550;
}
.ob-footer {
  border-top: 1px solid #dedfd6;
  align-items: center;
  gap: 20px;
  margin-top: 28px;
  padding: 20px 0;
  display: flex;
}
.ob-footer > .btn {
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-width: 93px;
  min-height: 42px;
  display: inline-flex;
}
.ob-footer > span {
  color: #969b8a;
  flex: 1;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  display: flex;
}
.ob-footer > .btn.primary {
  margin-left: auto;
  padding-inline: 19px;
}
.ob-bottom {
  letter-spacing: 0.06em;
  color: #a4a999;
  justify-content: space-between;
  max-width: 1280px;
  margin: auto;
  padding: 13px 36px 23px;
  font-size: 9px;
  display: flex;
}
.ob-error,
.ob-missing,
.ob-action-note {
  color: #966a24;
  background: #fff8ec;
  border: 1px solid #edd7b5;
  border-radius: 5px;
  align-items: flex-start;
  gap: 10px;
  margin: 17px 0;
  padding: 13px 16px;
  font-size: 12px;
  line-height: 1.7;
  display: flex;
}
.ob-error svg,
.ob-action-note svg,
.ob-missing svg {
  flex: none;
  margin-top: 3px;
}
.ob-missing button {
  text-align: left;
  align-items: center;
  gap: 6px;
  margin-top: 5px;
  font-size: 11px;
  display: flex;
}
.ob-notice {
  color: #5c7950;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  line-height: 1.6;
  display: flex;
}
.ob-complete {
  text-align: center;
  max-width: 1000px;
  margin: 50px auto 38px;
  padding: 0 28px;
}
.ob-complete-check {
  color: #6e8459;
  background: #ecf0e5;
  border: 1px solid #d8e3ca;
  border-radius: 50%;
  place-items: center;
  width: 60px;
  height: 60px;
  margin: 0 auto 25px;
  display: grid;
}
.ob-complete h1 {
  letter-spacing: -0.035em;
  margin: 14px 0;
  font-size: 43px !important;
}
.ob-complete > p:not(.ob-overline) {
  color: #818675;
  font-size: 14px;
  line-height: 1.8;
}
.ob-next-steps {
  text-align: left;
  background: #fff;
  border: 1px solid #dce1d1;
  border-radius: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 37px 0 19px;
  display: grid;
}
.ob-next-steps section {
  border-right: 1px solid #e9ecdf;
  padding: 28px;
}
.ob-next-steps section:last-child {
  border: 0;
}
.ob-next-steps section > span {
  color: #b08634;
  font-size: 10px;
  font-weight: 600;
}
.ob-next-steps h2 {
  margin: 14px 0 10px;
  font-size: 14px;
  font-weight: 600;
}
.ob-next-steps p {
  color: #868d7a;
  font-size: 12px;
  line-height: 1.8;
}
.ob-complete-footer {
  color: #939c84;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin: 0 0 35px;
  font-size: 10px;
  display: flex;
}
.ob-complete-footer > span:first-child {
  align-items: center;
  gap: 7px;
  display: flex;
}
.ob-access {
  text-align: center;
  max-width: 650px;
  margin: 100px auto;
  padding: 30px;
}
.ob-access > svg {
  color: #b38a42;
  margin: auto;
}
.ob-access h1 {
  margin: 22px 0;
  font-size: 30px;
}
.ob-access p {
  color: #848d77;
  margin: 22px 0;
  font-size: 14px;
  line-height: 1.8;
}
.ob-access .btn {
  padding: 12px 20px;
  display: inline-flex;
}
.ob-document-modal {
  width: min(90vw, 850px) !important;
  max-width: 850px !important;
  padding: 25px !important;
}
.ob-document-modal iframe {
  border: 0;
  width: 100%;
  height: 65vh;
}
.ob-document-modal .ob-uploaded-doc {
  max-height: 65vh;
}
.ob-confetti {
  pointer-events: none;
  z-index: 60;
  position: fixed;
  inset: 0;
  overflow: hidden;
}
.ob-confetti i {
  opacity: 0;
  width: 5px;
  height: 9px;
  animation: 2.8s ease-out forwards ob-fall;
  position: absolute;
  top: -15px;
}
@keyframes ob-fall {
  0% {
    opacity: 0.7;
    translate: 0 -10px;
  }
  80% {
    opacity: 0.5;
  }
  to {
    opacity: 0;
    translate: 80px 90vh;
    rotate: 450deg;
  }
}
.ob-manager-top {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 25px;
  display: flex;
}
.ob-manager-top > div {
  margin-right: auto;
}
.ob-manager-top h2 {
  letter-spacing: -0.02em;
  font-size: 19px;
  font-weight: 600;
}
.ob-manager-top p {
  color: #7f8771;
  margin-top: 7px;
  font-size: 12px;
}
.ob-status-filters {
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 20px;
  display: flex;
}
.ob-status-filters button {
  color: #7b846c;
  background: #fff;
  border: 1px solid #dfe3d6;
  border-radius: 5px;
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  font-size: 11px;
  display: flex;
}
.ob-status-filters .active {
  color: #79571e;
  background: #fff5dc;
  border-color: #e3c998;
}
.ob-status-filters span {
  opacity: 0.75;
  font-size: 10px;
}
.ob-queue-tools {
  align-items: center;
  gap: 19px;
  padding: 16px 20px;
  display: flex;
}
.ob-queue-tools > .searchbox {
  margin-right: auto;
}
.ob-progress {
  background: #e5e9db;
  border-radius: 2px;
  width: 100px;
  height: 4px;
  overflow: hidden;
}
.ob-progress i {
  background: #b9ad7a;
  height: 4px;
  display: block;
}
.ob-review-sheet {
  overflow-y: auto;
  width: min(1150px, 96vw) !important;
  max-width: 1150px !important;
  padding: 0 !important;
}
.ob-review-sheet [data-slot="sheet-header"] {
  border-bottom: 1px solid #e1e6d6;
  padding: 27px 30px 20px;
}
.ob-review-sheet [data-slot="sheet-title"] {
  align-items: center;
  gap: 13px;
  font-size: 21px;
  display: flex;
}
.ob-review-content {
  padding: 0 26px 30px;
}
.ob-case-links {
  color: #8e977d;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 15px 0;
  font-size: 10px;
  display: flex;
}
.ob-review-sheet .core-tabs {
  margin: 0 0 23px;
}
.ob-system-status {
  margin-top: 24px;
}
.ob-hr-actions {
  border-top: 1px solid #e1e5d6;
  margin-top: 25px;
  padding-top: 23px;
}
.ob-hr-actions > div:last-child {
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
  display: flex;
}
.ob-hr-actions .btn {
  align-items: center;
  gap: 7px;
  display: flex;
}
.ob-review-facts {
  background: #f9faf6;
  border: 1px solid #e6ebdc;
  border-radius: 6px;
  margin: 25px 0;
  padding: 20px;
}
.ob-review-facts h3 {
  margin-bottom: 12px;
  font-size: 13px;
  font-weight: 600;
}
.ob-review-facts p {
  overflow-wrap: anywhere;
  font-size: 12px;
  line-height: 1.8;
}
.ob-audit > div {
  border-bottom: 1px solid #e9ede0;
  grid-template-columns: 155px 1fr;
  gap: 5px 17px;
  padding: 14px 0;
  font-size: 11px;
  display: grid;
}
.ob-audit small {
  color: #8e967e;
  grid-column: 2;
}
.ob-audit span {
  color: #8e967e;
}
.ob-link-dialog,
.ob-create-dialog,
.ob-config-dialog {
  max-height: 90vh;
  overflow-y: auto;
}
.ob-link-dialog {
  width: min(94vw, 600px) !important;
  max-width: 600px !important;
}
.ob-link-dialog p {
  color: #838a75;
  font-size: 12px;
  line-height: 1.8;
}
.ob-create-dialog,
.ob-config-dialog {
  width: min(94vw, 850px) !important;
  max-width: 850px !important;
}
.ob-create-dialog form,
.ob-config-dialog form {
  margin-top: 14px;
}
.ob-create-dialog fieldset {
  border: 0;
}
.ob-config-dialog .ob-field,
.ob-textarea {
  margin-top: 18px;
}
.ob-textarea textarea {
  resize: vertical;
  height: 130px;
  margin-top: 8px;
  line-height: 1.7;
  display: block;
}
.ob-config-rule {
  border-top: 1px solid #e1e7d6;
  margin-top: 24px;
  padding-top: 3px;
}
.ob-config-rule > small {
  color: #9c7e37;
  font-size: 11px;
}
.ob-config-dialog .btn {
  margin-top: 23px;
}
@media (width>=1440px) {
  .ob-body {
    padding-top: 39px;
  }
  .ob-section-heading {
    margin-bottom: 30px;
  }
}
@media (width<=1100px) {
  .ob-steps strong {
    font-size: 10px;
  }
  .ob-steps button {
    gap: 5px;
    padding-inline: 8px;
  }
  .ob-body {
    padding-inline: 24px;
  }
  .ob-doc-workspace {
    grid-template-columns: 155px minmax(190px, 1fr) 255px;
  }
  .ob-doc-thumb {
    display: none;
  }
  .ob-found {
    padding: 17px 13px;
  }
  .ob-doc-list strong {
    font-size: 10px;
  }
  .ob-review-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ob-queue-tools {
    flex-wrap: wrap;
  }
}
@media (width<=800px) {
  .ob-header {
    height: 78px;
    padding-inline: 22px;
  }
  .ob-header > div {
    gap: 12px;
  }
  .ob-header > div > span:first-child {
    display: none;
  }
  .ob-demo-bar {
    justify-content: space-between;
    gap: 12px;
    padding: 9px 20px;
    font-size: 10px;
  }
  .ob-steps button {
    flex: none;
    min-width: 116px;
  }
  .ob-steps {
    padding-inline: 19px;
  }
  .ob-profile-layout {
    grid-template-columns: minmax(0, 1fr) 270px;
    gap: 20px;
  }
  .ob-form-grid.three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ob-address-locality,
  .ob-doc-workspace {
    grid-template-columns: 1fr 1fr;
  }
  .ob-doc-list {
    border-bottom: 1px solid #dfe5d3;
    border-right: 0;
    grid-column: 1/-1;
    gap: 5px;
    display: flex;
    overflow-x: auto;
  }
  .ob-doc-list > .ob-overline {
    display: none;
  }
  .ob-doc-list > button {
    flex: none;
    width: 145px;
    min-height: 55px;
    margin: 0;
    padding: 8px;
  }
  .ob-doc-thumb {
    display: none;
  }
  .ob-found-fields {
    max-height: 360px;
  }
  .ob-review-docs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ob-certification {
    gap: 22px;
  }
  .ob-complete h1 {
    font-size: 35px !important;
  }
  .ob-next-steps section {
    padding: 23px 19px;
  }
}
@media (width<=600px) {
  .ob-header {
    height: 75px;
    padding: 0 18px;
  }
  .ob-header .core-mark {
    width: 29px;
    height: 29px;
  }
  .ob-header .core-brand-lockup > strong {
    font-size: 24px;
  }
  .ob-header .core-brand-by .vekend-wordmark {
    width: 67px;
  }
  .ob-header > div {
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
  }
  .ob-header a:not(.core-brand) {
    font-size: 10px;
  }
  .ob-demo-label {
    font-size: 8px;
  }
  .ob-body {
    padding: 25px 17px 0;
  }
  .ob-demo-bar span {
    max-width: 250px;
  }
  .ob-demo-bar button {
    white-space: nowrap;
    font-size: 10px;
  }
  .ob-steps {
    padding-top: 12px;
  }
  .ob-steps button {
    min-width: 117px;
  }
  .ob-section-heading h1 {
    font-size: 25px !important;
  }
  .ob-section-heading p:last-child {
    font-size: 12px;
  }
  .ob-section-heading {
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 20px;
  }
  .ob-document-count {
    white-space: normal;
    text-align: center;
    min-width: 70px;
    padding: 6px;
    font-size: 9px;
  }
  .ob-overline {
    font-size: 9px !important;
  }
  .ob-form-panel {
    padding: 22px 18px;
  }
  .ob-form-grid.three,
  .ob-form-grid.two {
    grid-template-columns: 1fr;
    gap: 17px;
  }
  .ob-address-line,
  .ob-address-locality {
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
  .ob-address-line > .ob-field:first-child,
  .ob-address-line > .ob-field:last-child {
    grid-column: 1/-1;
  }
  .ob-address {
    margin-top: 21px;
    padding-top: 18px;
  }
  .ob-field input,
  .ob-field select {
    font-size: 14px;
  }
  .ob-profile-layout {
    grid-template-columns: 1fr;
  }
  .ob-profile-card {
    width: 100%;
    max-width: 290px;
    margin: auto;
  }
  .ob-headshot-upload {
    align-items: flex-start;
    gap: 11px;
  }
  .ob-headshot-upload p,
  .ob-headshot-upload .btn {
    font-size: 10px;
  }
  .ob-region-options {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 23px;
  }
  .ob-region-options button {
    padding: 16px;
  }
  .ob-region-options strong {
    font-size: 13px;
  }
  .ob-auth-options {
    grid-template-columns: 1fr 1fr;
    display: grid;
  }
  .ob-auth-options button {
    text-align: left;
    padding: 12px 10px;
    font-size: 11px;
  }
  .ob-auth-options button:last-child {
    grid-column: 1/-1;
  }
  .ob-radio {
    flex: none;
  }
  .ob-context-note {
    font-size: 10px;
  }
  .ob-identity-choice {
    flex-wrap: wrap;
    gap: 13px;
  }
  .ob-identity-choice .ob-field {
    min-width: 160px;
    max-width: none;
  }
  .ob-identity-choice p {
    max-width: none;
    margin: 0;
    font-size: 10px;
  }
  .ob-doc-workspace {
    grid-template-columns: 1fr;
  }
  .ob-doc-list {
    grid-column: auto;
    padding: 10px;
  }
  .ob-doc-stage {
    border-right: 0;
  }
  .ob-doc-canvas {
    min-height: 190px;
    padding: 20px 14px;
  }
  .ob-doc-stage-foot {
    font-size: 8px;
  }
  .ob-found {
    border-top: 1px solid #e0e5d6;
    padding: 20px 17px;
  }
  .ob-found-fields {
    grid-template-columns: 1fr 1fr;
    gap: 0 13px;
    max-height: none;
    display: grid;
  }
  .ob-found-field input {
    font-size: 12px;
  }
  .ob-found-field:has(.ob-ssn-row) {
    grid-column: 1/-1;
  }
  .ob-found-field .ob-field > label {
    font-size: 10px;
  }
  .ob-found-field .ob-field select {
    font-size: 12px;
  }
  .ob-found .ob-confirm {
    font-size: 11px;
  }
  .ob-review-grid {
    grid-template-columns: 1fr 1fr;
  }
  .ob-review-grid section {
    padding: 13px 12px;
  }
  .ob-review-grid strong {
    font-size: 10px;
  }
  .ob-review-grid p {
    font-size: 9px;
  }
  .ob-review-docs {
    grid-template-columns: 1fr 1fr;
    gap: 7px;
  }
  .ob-review-docs > button {
    padding: 9px;
    display: block;
  }
  .ob-review-docs > button > svg {
    display: none;
  }
  .ob-review-thumb {
    border: 0;
    width: 100%;
    height: 50px;
    margin-bottom: 7px;
  }
  .ob-review-thumb .ob-doc-art {
    width: 100px;
    height: 50px;
  }
  .ob-review-docs strong {
    font-size: 9px;
  }
  .ob-review-docs small {
    font-size: 8px;
  }
  .ob-certification {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 20px 17px;
  }
  .ob-voluntary-intro {
    align-items: flex-start;
    gap: 12px;
    padding: 17px 14px;
  }
  .ob-voluntary-intro p {
    font-size: 11px;
  }
  .ob-footer {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 21px;
    padding-top: 17px;
  }
  .ob-footer > span {
    flex-basis: 100%;
    order: 3;
    justify-content: center;
    margin-top: 5px;
    font-size: 9px;
  }
  .ob-footer > .btn {
    min-width: 75px;
    min-height: 40px;
    font-size: 11px;
  }
  .ob-footer > .btn.primary {
    padding-inline: 12px;
  }
  .ob-bottom {
    padding: 10px 17px 21px;
    font-size: 8px;
  }
  .ob-complete {
    margin-top: 37px;
    padding: 0 18px;
  }
  .ob-complete h1 {
    font-size: 31px !important;
  }
  .ob-complete > p:not(.ob-overline) {
    font-size: 12px;
  }
  .ob-next-steps {
    grid-template-columns: 1fr;
    margin-top: 26px;
  }
  .ob-next-steps section {
    border-bottom: 1px solid #e9ecdf;
    border-right: 0;
    padding: 21px;
  }
  .ob-next-steps h2 {
    margin: 8px 0;
  }
  .ob-complete-footer {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 23px;
    font-size: 9px;
  }
  .ob-review-sheet {
    width: 100vw !important;
    max-width: 100vw !important;
  }
  .ob-review-sheet [data-slot="sheet-header"] {
    padding: 22px 20px;
  }
  .ob-review-sheet [data-slot="sheet-title"] {
    flex-wrap: wrap;
    gap: 8px;
    font-size: 19px;
  }
  .ob-review-content {
    padding: 0 16px 25px;
  }
  .ob-case-links {
    flex-wrap: wrap;
    line-height: 1.7;
  }
  .ob-hr-actions > div:last-child {
    flex-wrap: wrap;
  }
  .ob-queue-tools {
    gap: 13px;
    padding: 15px;
  }
  .ob-status-filters button {
    font-size: 10px;
  }
  .ob-manager-top h2 {
    font-size: 17px;
  }
  .ob-manager-top > .btn {
    font-size: 10px;
  }
  .ob-audit > div {
    grid-template-columns: 1fr;
  }
  .ob-audit small {
    grid-column: auto;
  }
  .ob-review-facts {
    padding: 16px;
  }
  .ob-review-facts p {
    font-size: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ob-confetti {
    display: none;
  }
}
.ob-role-summary {
  border-bottom: 1px solid #e5e6df;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin-bottom: 24px;
  padding-bottom: 22px;
  display: grid;
}
.ob-role-summary span {
  color: #777b72;
  margin-bottom: 7px;
  font-size: 13px;
  display: block;
}
.ob-role-summary strong {
  font-size: 16px;
  font-weight: 550;
  line-height: 1.5;
}
.ob-document-choices {
  grid-template-columns: minmax(250px, 1fr) 1fr;
  align-items: center;
  gap: 12px 24px;
  margin-bottom: 18px;
  display: grid;
}
.ob-document-choices > p {
  color: #686d63;
  font-size: 13px;
  line-height: 1.7;
}
.ob-document-choices a {
  color: #89631e;
  text-decoration: underline;
}
.ob-supporting-choice {
  grid-column: 1/-1;
  margin-top: 0;
  font-size: 13px;
}
.ob-ssn-choice {
  border-top: 1px solid #e1e4d8;
  margin-bottom: 20px;
  padding-top: 12px;
}
.ob-ssn-choice > .ob-confirm {
  margin: 0;
  font-size: 13px;
}
.ob-ssn-choice .ob-identity-choice {
  margin-top: 14px;
}
.ob-certification > div > p,
.ob-voluntary-intro p {
  white-space: pre-line;
}
@media (width<=600px) {
  .ob-document-choices {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .ob-role-summary {
    gap: 15px;
  }
  .ob-role-summary strong {
    font-size: 14px;
  }
}
.ob-id-preview {
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  container-type: inline-size;
}
.ob-id-card {
  aspect-ratio: 54/85.6;
  isolation: isolate;
  color: #fff;
  background: #ff9f00 url(/brand/vekend-id-background.png) 50%/100% 100%
    no-repeat;
  border-radius: 12px;
  flex-direction: column;
  align-items: center;
  width: 100%;
  font-family: Arial, Helvetica, sans-serif;
  display: flex;
  overflow: hidden;
  box-shadow: 0 12px 30px #2d29261a;
}
.ob-id-logo {
  object-fit: contain;
  flex: none;
  width: 70%;
  height: auto;
  margin: 17% auto 5%;
  display: block;
}
.ob-id-identity {
  text-align: center;
  color: #fff;
  overflow-wrap: anywhere;
  flex: none;
  width: 100%;
  padding: 0 8%;
}
.ob-id-name {
  letter-spacing: 0;
  color: #fff;
  font-size: clamp(1.5rem, 10.7cqi, 2.1rem);
  font-weight: 700;
  line-height: 1.08;
  display: block;
}
.ob-id-surname {
  color: #fff;
  margin-top: 2px;
  font-size: clamp(1.25rem, 9.3cqi, 1.8rem);
  font-weight: 400;
  line-height: 1.12;
  display: block;
}
.ob-id-name-long {
  font-size: clamp(1.25rem, 8.5cqi, 1.65rem);
}
.ob-id-surname-long {
  font-size: clamp(1.125rem, 7.7cqi, 1.5rem);
}
.ob-id-assignment {
  color: #fff;
  margin-top: 4.5%;
}
.ob-id-assignment > p {
  color: #fff;
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1rem, 6.2cqi, 1.2rem);
  font-weight: 400;
  line-height: 1.25;
}
.ob-id-portrait {
  flex: 1 1 0;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  min-height: 40cqi;
  margin-top: 3.5%;
  display: flex;
  position: relative;
  overflow: hidden;
}
.ob-id-portrait > img {
  object-fit: contain;
  object-position: center bottom;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}
.ob-id-awaiting {
  color: #fff;
  background: #ffffff12;
  border: 1px dashed #ffffff6b;
  border-bottom: 0;
  border-radius: 70px 70px 0 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  width: 76%;
  height: 100%;
  min-height: 40cqi;
  display: flex;
}
.ob-id-awaiting span {
  font-size: 14px;
}
.ob-id-preview > figcaption {
  color: #73776e;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
  margin-top: 13px;
  font-size: 12px;
  line-height: 1.5;
  display: flex;
}
.ob-id-preview > figcaption strong {
  color: #4b5045;
  font-weight: 550;
}
.ob-welcome-page {
  background: #faf8f4;
}
.ob-welcome-page .ob-body {
  max-width: 1240px;
  padding: clamp(28px, 5vh, 60px) 44px 24px;
}
.ob-welcome-page .ob-welcome {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(40px, 6vw, 88px);
  min-height: 0;
  padding: 16px 0 40px;
  display: grid;
}
.ob-welcome-intro {
  min-width: 0;
}
.ob-welcome-page .ob-welcome .ob-overline {
  letter-spacing: 0.12em;
  color: #746b5e;
  line-height: 1.5;
  margin: 0 0 20px !important;
  font-size: 0.75rem !important;
}
.ob-welcome-page .ob-welcome h1 {
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
  margin: 0 0 24px;
  font-weight: 600;
  line-height: 1.07;
  font-size: clamp(2.75rem, 4.7vw, 4.15rem) !important;
}
.ob-welcome-page .ob-welcome h1 em {
  color: #98610a;
  font-style: normal;
}
.ob-welcome-page .ob-welcome-copy {
  color: #68625b;
  max-width: 490px;
  margin: 0;
  font-size: 1.0625rem;
  line-height: 1.75;
}
.ob-welcome-action {
  margin-top: 30px;
}
.ob-welcome-start.btn.primary {
  color: #fff;
  cursor: pointer;
  background: #2d2926;
  border: 1px solid #2d2926;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 22px;
  min-height: 52px;
  padding: 14px 23px;
  font-size: 1rem;
  font-weight: 550;
  display: inline-flex;
  box-shadow: 0 3px 7px #2d29260d;
}
.ob-welcome-start.btn.primary:hover {
  background: #463d34;
  border-color: #463d34;
}
.ob-welcome-start.btn.primary:focus-visible {
  outline-offset: 4px;
  outline: 3px solid #dc981c;
}
.ob-welcome-start.btn.primary:disabled {
  opacity: 0.6;
  cursor: wait;
}
.ob-welcome-page .ob-welcome-note {
  color: #787166;
  align-items: flex-start;
  gap: 8px;
  max-width: 400px;
  margin: 15px 0 0;
  font-size: 0.75rem;
  line-height: 1.6;
  display: flex;
}
.ob-welcome-page .ob-welcome-note svg {
  flex: none;
  margin-top: 2px;
}
.ob-welcome-invitation {
  background: #fff;
  border-radius: 15px;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  box-shadow:
    0 12px 40px #5f43210e,
    0 0 0 1px #e9e2d7;
}
.ob-welcome-art {
  background: #ffa400 url(/brand/vekend-id-background.png) 50% 40% / cover
    no-repeat;
  align-items: center;
  min-height: 160px;
  padding: 34px;
  display: flex;
}
.ob-welcome-art img {
  width: 205px;
  max-width: 75%;
  height: auto;
  display: block;
}
.ob-welcome-placement {
  padding: 30px 30px 32px;
}
.ob-welcome-page .ob-welcome-placement .ob-overline {
  color: #817566;
  margin-bottom: 12px !important;
}
.ob-welcome-invitation h2 {
  letter-spacing: -0.025em;
  color: #2d2926;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 1.65rem;
  font-weight: 600;
  line-height: 1.22;
}
.ob-welcome-team {
  color: #71695e;
  overflow-wrap: anywhere;
  margin: 9px 0 0;
  font-size: 0.9375rem;
  line-height: 1.5;
}
.ob-welcome-details {
  border-top: 1px solid #eee8df;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin: 26px 0 0;
  padding-top: 23px;
  display: grid;
}
.ob-welcome-details > div {
  min-width: 0;
}
.ob-welcome-details dt {
  color: #786e60;
  align-items: center;
  gap: 7px;
  font-size: 0.8125rem;
  line-height: 1.5;
  display: flex;
}
.ob-welcome-details dt svg {
  color: #a57931;
  flex: none;
}
.ob-welcome-details dd {
  color: #39332c;
  overflow-wrap: anywhere;
  margin: 8px 0 0;
  font-size: 0.9375rem;
  font-weight: 550;
  line-height: 1.55;
}
.ob-welcome-references {
  color: #8a8277;
  border-top: 1px solid #e9e3d8;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 30px;
  padding: 20px 0 0;
  font-size: 0.75rem;
  line-height: 1.5;
  display: flex;
}
.ob-welcome-references > span {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  display: flex;
}
.ob-welcome-references strong {
  color: #635c51;
  overflow-wrap: anywhere;
  font-weight: 500;
}
@media (width<=1000px) {
  .ob-welcome-page .ob-body {
    padding: 32px 28px 24px;
  }
  .ob-welcome-page .ob-welcome {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
    gap: 35px;
    padding-top: 10px;
  }
  .ob-welcome-page .ob-welcome h1 {
    font-size: clamp(2.75rem, 4.8vw, 3.75rem) !important;
  }
  .ob-welcome-art {
    min-height: 145px;
    padding: 28px;
  }
  .ob-welcome-placement {
    padding: 25px;
  }
  .ob-welcome-details {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 22px;
    padding-top: 20px;
  }
  .ob-welcome-details dd {
    margin-top: 4px;
  }
}
@media (width<=700px) {
  .ob-welcome-page .ob-body {
    padding: 30px 22px 24px;
  }
  .ob-welcome-page .ob-welcome {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 0 0 27px;
  }
  .ob-welcome-page .ob-welcome h1 {
    max-width: 580px;
    margin-bottom: 20px;
    font-size: clamp(2.5rem, 9.8vw, 3.4rem) !important;
  }
  .ob-welcome-page .ob-welcome .ob-overline {
    margin-bottom: 16px !important;
    font-size: 0.75rem !important;
  }
  .ob-welcome-page .ob-welcome-copy {
    max-width: 540px;
    font-size: 1rem;
    line-height: 1.7;
  }
  .ob-welcome-action {
    margin-top: 24px;
  }
  .ob-welcome-page .ob-welcome-note {
    margin-top: 13px;
  }
  .ob-welcome-art {
    min-height: 112px;
    padding: 24px;
  }
  .ob-welcome-art img {
    width: 165px;
  }
  .ob-welcome-placement {
    padding: 24px;
  }
  .ob-welcome-invitation h2 {
    font-size: 1.5rem;
  }
  .ob-welcome-details {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 21px;
    padding-top: 19px;
  }
  .ob-welcome-page .ob-welcome-placement .ob-overline {
    margin-bottom: 10px !important;
  }
  .ob-welcome-references {
    gap: 10px 20px;
    padding-top: 17px;
  }
}
@media (width<=370px) {
  .ob-welcome-details {
    grid-template-columns: 1fr;
  }
  .ob-welcome-page .ob-body {
    padding-inline: 18px;
  }
}
.ob-checklist-heading {
  align-items: center;
  gap: 12px;
  display: flex;
}
.ob-checklist-heading > svg {
  color: #ba7400;
  flex-shrink: 0;
}
.ob-checklist-heading > div {
  flex: 1;
  gap: 4px;
  display: grid;
}
.ob-checklist-heading small {
  letter-spacing: 0.1em;
  color: #786c5b;
  font-size: 10px;
}
.ob-checklist-heading strong {
  font-size: 14px;
}
.ob-checklist-heading .btn {
  flex-shrink: 0;
}
.ob-document-options {
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 15px 0;
  display: grid;
}
.ob-document-options button {
  text-align: left;
  color: #2d2926;
  background: #fff;
  border: 1px solid #e0dcd5;
  border-radius: 8px;
  gap: 6px;
  padding: 12px;
  display: grid;
  position: relative;
}
.ob-document-options button.selected {
  background: #fff5df;
  border-color: #c97d00;
}
.ob-document-options button span {
  padding-right: 16px;
  font-size: 13px;
  font-weight: 600;
}
.ob-document-options button small,
.ob-supporting-choice small {
  color: #706a61;
  font-size: 11px;
  line-height: 1.5;
  display: block;
}
.ob-document-options button svg {
  position: absolute;
  top: 12px;
  right: 8px;
}
.ob-extraction-note {
  padding-top: 8px;
  color: #736452 !important;
  font-size: 11px !important;
}
.ob-found-field input {
  width: 100%;
  min-width: 0;
}
.ob-document-choices a {
  text-decoration: underline;
}
.ob-footer > span {
  max-width: 60%;
  line-height: 1.5;
}
@media (width<=760px) {
  .ob-checklist-heading {
    flex-wrap: wrap;
  }
  .ob-checklist-heading > .btn {
    margin-left: 34px;
  }
  .ob-document-options {
    grid-template-columns: 1fr 1fr;
  }
  .ob-footer > span {
    max-width: 40%;
    font-size: 10px;
  }
}
@media (width<=440px) {
  .ob-document-options {
    grid-template-columns: 1fr;
  }
}
.ob-checklist-heading > div {
  flex: 1;
  min-width: 0;
}
.ob-checklist-heading p {
  margin: 4px 0 0;
  font-size: 14px;
  line-height: 1.5;
}
.ob-document-sides {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  gap: 6px;
  padding: 10px 14px;
  display: flex;
}
.ob-document-sides button {
  border: 1px solid #d7d9dc;
  border-radius: 7px;
  padding: 7px 16px;
  font-size: 14px;
}
.ob-document-sides button[aria-pressed="true"] {
  color: #fff;
  background: #2d2926;
  border-color: #2d2926;
}
.ob-document-findings {
  background: #fff8e9;
  border: 1px solid #dfc386;
  border-radius: 10px;
  margin: 12px 0;
  padding: 10px 12px;
}
.ob-document-findings details + details {
  margin-top: 8px;
}
.ob-document-findings summary {
  cursor: pointer;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}
.ob-document-findings p {
  margin: 8px 0;
  font-size: 14px;
}
.ob-routing-suggestion {
  background: #f2f5f8;
  border: 1px solid #d8e0e6;
  border-radius: 10px;
  margin: 12px 0;
  padding: 14px;
}
.ob-routing-suggestion p {
  font-size: 14px;
  line-height: 1.5;
}
.ob-requirement-settings {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  gap: 10px;
  margin: 16px 0;
  padding: 16px;
  display: grid;
}
.ob-requirement-settings label {
  gap: 10px;
  font-size: 14px;
  display: flex;
}
.ob-requirement-settings h3 {
  margin: 0;
  font-size: 16px;
}
.ob-hr-document-stats {
  flex-wrap: wrap;
  gap: 20px;
  padding: 14px 0;
  display: flex;
}
.ob-hr-document-stats strong {
  font-size: 18px;
  display: block;
}
.ob-hr-document-stats span {
  color: #666;
  font-size: 14px;
}
.ob-checklist-heading .text-button {
  white-space: normal;
  text-align: left;
  font-size: 14px;
}
@media (width<=700px) {
  .ob-checklist-heading {
    flex-wrap: wrap;
  }
  .ob-checklist-heading .text-button {
    margin-left: 30px;
  }
  .ob-document-sides {
    justify-content: center;
  }
}
