/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
@font-face {
  font-family: "Marmelad";
  src: url(/assets/Marmelad-Regular-C_1aI1IW.ttf) format("truetype");
}

:root {
  /* =========================================
     PRIMITIVE COLORS (PALETTE)
     ========================================= */

  --palette-primary: #10b874;

  --palette-accent: #fef9c3;
  --palette-accent-light: #fefbdb;

  --palette-error: #b82c11;

  --palette-grey-50: #f4f4f4;
  --palette-grey-100: #dedede;
  --palette-grey-200: #bcbcbc;
  --palette-grey-300: #a6a6a6;
  --palette-grey-400: #909090;
  --palette-grey-500: #7a7a7a;
  --palette-grey-600: #646464;
  --palette-grey-700: #4d4d4d;
  --palette-grey-800: #373737;
  --palette-grey-900: #212121;

  --palette-white: #ffffff;
  --palette-white-30: rgba(255, 255, 255, 0.3);
  --palette-white-60: rgba(255, 255, 255, 0.7);

  /* =========================================
     SEMANTIC COLORS
     ========================================= */

  /* Background */
  --color-background: var(--palette-white);
  --color-background-subtle: var(--palette-grey-50);
  --color-background-muted: var(--palette-grey-100);
  --color-background-brand: var(--palette-primary);
  --color-background-accent: var(--palette-accent-light);

  /* Text */
  --color-text: var(--palette-grey-900);
  --color-text-muted: var(--palette-grey-600);
  --color-text-subtle: var(--palette-grey-200);
  --color-text-brand: var(--palette-primary);
  --color-text-on-brand: var(--palette-white);
  --color-text-danger: var(--palette-error);

  /* Borders */
  --color-border: var(--palette-grey-200);
  --color-border-subtle: var(--palette-grey-100);
  --color-border-brand: var(--palette-primary);
  --color-border-danger: var(--palette-error);

  /* =========================================
     SPACING SCALE
     Named tokens for the SpacingSize scale (see utils/getSpacing.ts).
     Each step is a multiple of 4px (SPACING_STEP).
     ========================================= */

  --spacing-none: 0px;
  --spacing-extra-small: 4px;
  --spacing-small: 8px;
  --spacing-normal: 16px;
  --spacing-large: 24px;
  --spacing-extra-large: 32px;

  /* =========================================
     TYPOGRAPHY
     ========================================= */

  --font-family-body: "Marmelad", -apple-system, system-ui, BlinkMacSystemFont,
    "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  --font-hero: 400 36px/38px var(--font-family-body);
  --font-header: 400 22px/24px var(--font-family-body);
  --font-header-large: 400 26px/32px var(--font-family-body);
  --font-header-small: 400 20px/24px var(--font-family-body);
  --font-body-1: 400 16px/18px var(--font-family-body);
  --font-body-2: 400 14px/16px var(--font-family-body);
  --font-body-3: 400 11px/13px var(--font-family-body);

  /* =========================================
     SHADOWS
     ========================================= */

  --shadow-light: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px;
  --shadow-medium: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px;
  --shadow-large: rgba(0, 0, 0, 0.15) 0px 1px 8px 0px;

  /* =========================================
     Z-INDEXES
     ========================================= */
  --z-index-ui-fab: 100;
  --z-index-ui-modal: 20001;
  --z-index-ui-dropdown-list: 20002;

  /* =========================================
     SAFE-AREAS
   ========================================= */
  --sat: env(safe-area-inset-top);
  --sar: env(safe-area-inset-right);
  --sab: env(safe-area-inset-bottom);
  --sal: env(safe-area-inset-left);

  /* =========================================
     DIMENSIONS
   ========================================= */
  --height-control: 64px;

  /* =========================================
     SPACING
   ========================================= */
  --space-base: 4px;

  --space-1: calc(var(--space-base) * 1); /*  4px */
  --space-2: calc(var(--space-base) * 2); /*  8px */
  --space-3: calc(var(--space-base) * 3); /* 12px */
  --space-4: calc(var(--space-base) * 4); /* 16px */
  --space-5: calc(var(--space-base) * 5); /* 20px */
  --space-6: calc(var(--space-base) * 6); /* 24px */
  --space-8: calc(var(--space-base) * 8); /* 32px */
  --space-10: calc(var(--space-base) * 10); /* 40px */
  --space-12: calc(var(--space-base) * 12); /* 48px */
  --space-14: calc(var(--space-base) * 14); /* 56px */
  --space-16: calc(var(--space-base) * 16); /* 64px */
  --space-20: calc(var(--space-base) * 20); /* 80px */
}

html,
body {
  height: 100lvh;
  /* Full width is required so the body keeps filling the viewport while
     scrolling is locked. body-scroll-lock sets `position: fixed` on <body>
     on iOS, and a fixed element with no width shrinks to its content width,
     which otherwise makes scroll-locked screens render too narrow. */
  width: 100%;
  overscroll-behavior: none;
}

body {
  font: var(--font-body-1);

  background-color: var(--color-background);
  color: var(--color-text);

  scrollbar-width: none;
  -ms-overflow-style: none;
  &::-webkit-scrollbar {
    display: none;
  }
}

* {
  user-select: none !important;
  -webkit-user-select: none !important;
  -webkit-tap-highlight-color: transparent;
}

/* Honour the OS-level prefers-reduced-motion: reduce setting. Collapses
   CSS transitions/animations to ~instant for users who request it (an
   accessibility win) and for CI runs where Playwright sets the media
   query (so actionability/visibility waits don't race CSS animations). */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
    animation-duration: 0.01ms !important;
    animation-delay: 0ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
._box_320f9_1 {
  position: static;
  box-sizing: border-box;
  transition: padding-bottom 0.325s;

  --box-padding-top: 0px;
  --box-padding-bottom: 0px;
  --box-padding-left: 0px;
  --box-padding-right: 0px;

  padding-top: var(--box-padding-top);
  padding-bottom: var(--box-padding-bottom);
  padding-left: var(--box-padding-left);
  padding-right: var(--box-padding-right);

  &[data-padding-top="extra-small"] {
    --box-padding-top: var(--spacing-extra-small);
  }
  &[data-padding-top="small"] {
    --box-padding-top: var(--spacing-small);
  }
  &[data-padding-top="normal"] {
    --box-padding-top: var(--spacing-normal);
  }
  &[data-padding-top="large"] {
    --box-padding-top: var(--spacing-large);
  }
  &[data-padding-top="extra-large"] {
    --box-padding-top: var(--spacing-extra-large);
  }

  &[data-padding-bottom="extra-small"] {
    --box-padding-bottom: var(--spacing-extra-small);
  }
  &[data-padding-bottom="small"] {
    --box-padding-bottom: var(--spacing-small);
  }
  &[data-padding-bottom="normal"] {
    --box-padding-bottom: var(--spacing-normal);
  }
  &[data-padding-bottom="large"] {
    --box-padding-bottom: var(--spacing-large);
  }
  &[data-padding-bottom="extra-large"] {
    --box-padding-bottom: var(--spacing-extra-large);
  }

  &[data-padding-left="extra-small"] {
    --box-padding-left: var(--spacing-extra-small);
  }
  &[data-padding-left="small"] {
    --box-padding-left: var(--spacing-small);
  }
  &[data-padding-left="normal"] {
    --box-padding-left: var(--spacing-normal);
  }
  &[data-padding-left="large"] {
    --box-padding-left: var(--spacing-large);
  }
  &[data-padding-left="extra-large"] {
    --box-padding-left: var(--spacing-extra-large);
  }

  &[data-padding-right="extra-small"] {
    --box-padding-right: var(--spacing-extra-small);
  }
  &[data-padding-right="small"] {
    --box-padding-right: var(--spacing-small);
  }
  &[data-padding-right="normal"] {
    --box-padding-right: var(--spacing-normal);
  }
  &[data-padding-right="large"] {
    --box-padding-right: var(--spacing-large);
  }
  &[data-padding-right="extra-large"] {
    --box-padding-right: var(--spacing-extra-large);
  }

  &[data-relative] {
    position: relative;
  }

  &[data-safe-area-top] {
    padding-top: calc(var(--sat) + var(--box-padding-top));
  }

  &[data-safe-area-bottom] {
    padding-bottom: calc(var(--sab) + var(--box-padding-bottom));
  }

  /* A surface sets its background and the matching foreground color
     together, so descendants inherit the right text/icon color. */
  &[data-background="default"] {
    background: var(--color-background);
    color: var(--color-text);
  }
  &[data-background="primary"] {
    background: var(--color-background-brand);
    color: var(--color-text-on-brand);
  }
  &[data-background="secondary"] {
    background: var(--color-background-muted);
    color: var(--color-text);
  }
  &[data-background="tertiary"] {
    background: var(--color-background-subtle);
    color: var(--color-text);
  }
  &[data-background="accent"] {
    background: var(--color-background-accent);
    color: var(--color-text);
  }
}
._stack_v9opn_1 {
  display: flex;
  flex-direction: row;

  --stack-gap: 0px;
  gap: var(--stack-gap);

  &[data-spacing="extra-small"] {
    --stack-gap: var(--spacing-extra-small);
  }
  &[data-spacing="small"] {
    --stack-gap: var(--spacing-small);
  }
  &[data-spacing="normal"] {
    --stack-gap: var(--spacing-normal);
  }
  &[data-spacing="large"] {
    --stack-gap: var(--spacing-large);
  }
  &[data-spacing="extra-large"] {
    --stack-gap: var(--spacing-extra-large);
  }

  &[data-align-items="start"] {
    align-items: flex-start;
  }
  &[data-align-items="end"] {
    align-items: flex-end;
  }
  &[data-align-items="center"] {
    align-items: center;
  }
  &[data-align-items="stretch"] {
    align-items: stretch;
  }
  &[data-align-items="baseline"] {
    align-items: baseline;
  }

  &[data-full-width] {
    flex-grow: 1;
    justify-content: space-between;
  }

  &[data-justify-content="start"] {
    justify-content: flex-start;
  }
  &[data-justify-content="end"] {
    justify-content: flex-end;
  }
  &[data-justify-content="center"] {
    justify-content: center;
  }
  &[data-justify-content="space-between"] {
    justify-content: space-between;
  }
  &[data-justify-content="space-around"] {
    justify-content: space-around;
  }

  &[data-wrap] {
    flex-wrap: wrap;
  }
}
/* Icons render their glyph with `fill: currentColor`, so setting `color`
   here (or inheriting it from a colored surface) drives the icon color.
   This mirrors the text-color tokens used by Typography. */
._icon_13bf9_4[data-color="default"] {
  color: var(--color-text);
}
._icon_13bf9_4[data-color="primary"] {
  color: var(--color-text-brand);
}
._icon_13bf9_4[data-color="secondary"] {
  color: var(--color-text-muted);
}
._icon_13bf9_4[data-color="tertiary"] {
  color: var(--color-text-subtle);
}
._icon_13bf9_4[data-color="accent"] {
  color: var(--color-text);
}
._icon_13bf9_4[data-color="error"] {
  color: var(--color-text-danger);
}
._icon_13bf9_4[data-color="inherit"] {
  color: inherit;
}
._dot_eab95_1 {
  color: var(--color-text-tertiary);
  user-select: none;
}
._stack_crxuy_1 {
  display: flex;
  flex-direction: column;

  --stack-gap: 0px;
  gap: var(--stack-gap);
  flex-grow: 0;

  &[data-spacing="extra-small"] {
    --stack-gap: var(--spacing-extra-small);
  }
  &[data-spacing="small"] {
    --stack-gap: var(--spacing-small);
  }
  &[data-spacing="normal"] {
    --stack-gap: var(--spacing-normal);
  }
  &[data-spacing="large"] {
    --stack-gap: var(--spacing-large);
  }
  &[data-spacing="extra-large"] {
    --stack-gap: var(--spacing-extra-large);
  }

  &[data-align-items="start"] {
    align-items: flex-start;
  }
  &[data-align-items="end"] {
    align-items: flex-end;
  }
  &[data-align-items="center"] {
    align-items: center;
  }
  &[data-align-items="stretch"] {
    align-items: stretch;
  }
  &[data-align-items="baseline"] {
    align-items: baseline;
  }

  &[data-justify-content="start"] {
    justify-content: flex-start;
  }
  &[data-justify-content="end"] {
    justify-content: flex-end;
  }
  &[data-justify-content="center"] {
    justify-content: center;
  }
  &[data-justify-content="space-between"] {
    justify-content: space-between;
  }
  &[data-justify-content="space-around"] {
    justify-content: space-around;
  }

  &[data-flex-grow] {
    flex-grow: 1;
  }

  &[data-full-height] {
    height: 100%;
  }
}
._root_vdoqt_1 {
  position: absolute;
  inset: 0;
  pointer-events: none;

  z-index: var(--z-index-ui-modal);

  /* When mounted into a Portal (the default), anchor to the viewport
     instead of the closest positioned ancestor. iOS body-scroll-lock puts
     body in `position: fixed` without setting an explicit width, so body
     can collapse to its min-content width and drag the sheet down with it;
     position: fixed here guarantees the sheet spans the viewport regardless
     of body width. For inline (disablePortal) consumers like
     CompletedItemsBottomSheet we keep position: absolute so the sheet
     stays within its local layout context. */
  &[data-portaled="true"] {
    position: fixed;
  }
}

._overlay_vdoqt_21 {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);

  pointer-events: none;
  opacity: 0;
  transition: opacity 200ms ease;

  ._root_vdoqt_1[data-open="true"][aria-modal="true"] > & {
    pointer-events: all;
    opacity: 1;
  }
}

._content_vdoqt_36 {
  position: absolute;
  bottom: 0;
  width: 100%;
  max-height: 100%;

  border-top-left-radius: var(--space-3);
  border-top-right-radius: var(--space-3);
  box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.1);

  background: var(--color-background);
  transform: translateY(100%);

  touch-action: none;
  pointer-events: all;

  /* The sheet receives focus on open (to seed the focus trap and dismiss the
     keyboard); it is not an interactive control, so it should not paint a
     focus ring on itself. */
  outline: none;

  && > div {
    height: auto;
  }

  ._root_vdoqt_1[data-open="true"] > & {
    transform: translateY(0);
  }

  display: flex;
  flex-direction: column;

  &[data-handle="true"]:before {
    border-radius: 2px;
    display: block;
    content: "";
    top: var(--space-2);
    left: 50%;
    margin-left: -25px;
    height: 4px;
    width: 50px;
    position: absolute;
    background: var(--color-text-subtle);
  }

  /* "full" sheets fill the parent. Drag-handler inline `height: <px>`
     overrides this rule (inline beats stylesheet), so dismiss-drag and
     multi-snap shrinking work without any extra handler bookkeeping. */
  &[data-snap="full"] {
    height: 100%;
  }
}
._inner_4d6zv_1 ._stepper_4d6zv_1 {
  padding: 0 var(--space-2);
}

._inner_4d6zv_1 ._input_4d6zv_5 {
  unset: all;
  text-align: center;
  width: 100%;
  border: none;
  background: transparent;
  color: var(--color-text);
  font: var(--font-header-large);

  &::placeholder {
    font: var(--font-header);
    line-height: var(--space-12);
    color: var(--color-text-subtle);
  }

  /* Hide number input controls */
  &::-webkit-inner-spin-button,
  &::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  /* Firefox */
  &[type="number"] {
    -moz-appearance: textfield;
  }

  /* All browsers */
  appearance: textfield;

  &:focus {
    outline: none;
  }
}

._inner_4d6zv_1 {
  position: relative;
  height: 144px;
  padding: var(--space-8) var(--space-2) var(--space-2) var(--space-2);
}

._inner_4d6zv_1 ._unitsSelect_4d6zv_46 {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 8px;

  ._inner_4d6zv_1[data-visible="false"] & {
    translate: -50% 52px;
  }
}

._inner_4d6zv_1 ._slider_4d6zv_57 {
  position: absolute;
  left: var(--space-2);
  right: var(--space-2);
  bottom: var(--space-2);
  opacity: 0;
  /* Hidden layers must not intercept clicks (incl. during the fade
     transition), otherwise they occlude the visible controls. */
  pointer-events: none;
  transition: opacity 0.2s;

  ._inner_4d6zv_1[data-centered="false"][data-visible="true"] & {
    opacity: 1;
    pointer-events: auto;
  }
}

._inner_4d6zv_1 ._quantityControls_4d6zv_74 {
  position: absolute;
  top: 0;
  left: var(--space-2);
  right: var(--space-2);
  transform: translateY(40px);
  opacity: 0;
  /* Hidden layers must not intercept clicks (incl. during the fade
     transition), otherwise they occlude the visible controls. */
  pointer-events: none;
  transition:
    opacity 0.2s,
    transform 0.2s;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);

  ._inner_4d6zv_1[data-centered="true"] & {
    transform: translateY(52px);
  }

  ._inner_4d6zv_1[data-visible="true"] & {
    opacity: 1;
    pointer-events: auto;
  }
}

._suggestionsContainer_4d6zv_101 {
  border-top: 2px solid var(--color-border-subtle);
  padding: var(--space-3) var(--space-4);
  display: flex;
  justify-content: flex-start;
  gap: var(--space-2);
  width: 100%;
}

._suggestionsContainer_4d6zv_101 ._suggestionButton_4d6zv_110 {
  flex-shrink: 0;
  flex-grow: 0;
  flex-basis: calc((100% - 24px) / 4);
  justify-content: center;
  text-align: center;
}

._container_4d6zv_118 {
  font: var(--font-body-1);
  color: var(--color-text-muted);
  background: var(--color-background-subtle);
  border-radius: var(--space-3);
  display: flex;
  flex-direction: column;
}
._container_zy57i_1 {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  z-index: 0;
  padding-top: var(--sat);
}

._activeItemsArea_zy57i_10 {
  flex: 1;
  overflow: auto;
  background-color: var(--color-background);
  transition: padding-bottom 300ms ease-out;
  padding-bottom: calc(
    var(--completed-items-sheet-base-height) + var(--app-layout-bottom-inset) +
      16px
  );
  scrollbar-width: none;
  -ms-overflow-style: none;
}

._activeItemsArea_zy57i_10::-webkit-scrollbar {
  display: none;
}
._item_i33wb_1 {
  height: 64px;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: stretch;
  padding: 0 var(--space-4);
  overflow: hidden;
}

._item_i33wb_1 > * {
  flex-grow: 1;
  height: 64px;
}
._wrapper_1r7j0_1 {
  position: absolute;
  width: 100%;
  bottom: 0;

  opacity: 0;
  transform: translateY(25%);
  pointer-events: none;

  padding: var(--completed-items-sheet-footer-padding);
  padding-bottom: var(--completed-items-sheet-footer-padding-bottom);

  background: var(--color-background);

  transition:
    opacity var(--sheet-animation-duration) ease,
    transform var(--sheet-animation-duration) ease;

  display: flex;
  flex-direction: column;

  &[data-visible="true"] {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
}
._root_ivny1_1 {
  --completed-items-sheet-footer-padding: var(--space-4);
  --completed-items-sheet-footer-padding-bottom: calc(
    max(var(--sab), var(--completed-items-sheet-footer-padding))
  );
  --completed-items-sheet-footer-height: calc(
    var(--height-control) + var(--completed-items-sheet-footer-padding) +
      var(--completed-items-sheet-footer-padding-bottom)
  );
}
._root_mgl1m_1._root_mgl1m_1 {
  padding-bottom: var(--completed-items-sheet-footer-height);
}
._container_sbbhx_1 {
  overflow: hidden;
}
._item_nxo7w_1 {
  padding: 0 16px;
}
._iconCircle_bdxep_1 {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-background-muted);
  color: var(--color-text-muted);
  flex-shrink: 0;
}
