/* [next]/internal/font/google/instrument_sans_64bf3bc2.module.css [app-client] (css) */
@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/c7f47671e39f7787-s.06cvo47x4w1en.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/f06bf9da926bae75-s.p.0pz0x0eczp58u.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/c7f47671e39f7787-s.06cvo47x4w1en.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/f06bf9da926bae75-s.p.0pz0x0eczp58u.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/c7f47671e39f7787-s.06cvo47x4w1en.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/f06bf9da926bae75-s.p.0pz0x0eczp58u.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/c7f47671e39f7787-s.06cvo47x4w1en.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Instrument Sans;
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/f06bf9da926bae75-s.p.0pz0x0eczp58u.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Instrument Sans Fallback;
  src: local(Arial);
  ascent-override: 94.42%;
  descent-override: 24.33%;
  line-gap-override: 0.0%;
  size-adjust: 102.74%;
}

.instrument_sans_64bf3bc2-module__kMvudW__className {
  font-family: Instrument Sans, Instrument Sans Fallback;
  font-style: normal;
}

.instrument_sans_64bf3bc2-module__kMvudW__variable {
  --font-sans: "Instrument Sans", "Instrument Sans Fallback";
}

/* [next]/internal/font/google/ibm_plex_mono_e06d9437.module.css [app-client] (css) */
@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e390973e931a41c5-s.08hd0g.321csk.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/59b15b4bcd7b1eb5-s.0x08jh8vondwt.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e532fa1b9921e1cd-s.0~wrfy7sm-h4g.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/2fe89d53234c61d4-s.0k_.i63k_i_qa.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/99e609270109b47d-s.p.16-z~2sp29ex6.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/5e05ae5b48faa55e-s.0m9hhkgdlzukj.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/a7afbb44bec2bb18-s.0juuwbcf7uz~t.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/02263ebadd758ea4-s.0qg7j5o.yrclm.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/68757d6cddeff913-s.0hkrq11n-dhos.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/effe91970fc4db64-s.p.07ig5l8azj~hy.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/6ff74e33ebd7bca3-s.0_n_qwbzcushi.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/1a69062cfe6f77f8-s.07r2ragk8ph~z.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/9a4838fcda0d1bca-s.0787d67~10694.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/2e95a7d252b9825a-s.0dgq8lqrj3gc_.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/23b7a97ae3b5c134-s.p.0o14nraug8u5s.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono Fallback;
  src: local(Arial);
  ascent-override: 76.16%;
  descent-override: 20.43%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.ibm_plex_mono_e06d9437-module__v8ILfq__className {
  font-family: IBM Plex Mono, IBM Plex Mono Fallback;
  font-style: normal;
}

.ibm_plex_mono_e06d9437-module__v8ILfq__variable {
  --font-mono: "IBM Plex Mono", "IBM Plex Mono Fallback";
}

/* [project]/packages/ui/src/tokens.css [app-client] (css) */
:root {
  --bg: #fff;
  --bg-2: #fff;
  --fg: #101418;
  --muted: #5b6774;
  --stroke: #10141833;
  --accent: #f8b014;
  --focus: #377df7;
  --ok: #1f883d;
  --warn: #b35a00;
  --danger: #d1252f;
  --calendar-absence-base: #994654;
  --calendar-absence-fill: #f2e7e9;
  --calendar-absence-border: var(--calendar-absence-base);
  --calendar-absence-text: #7d3542;
  --calendar-day-off-base: #6659d4;
  --calendar-day-off-fill: #ebe9f9;
  --calendar-day-off-border: var(--calendar-day-off-base);
  --calendar-day-off-text: #4e43a8;
  --calendar-holiday-base: #2f91c5;
  --calendar-holiday-fill: #e4f1f7;
  --calendar-holiday-border: var(--calendar-holiday-base);
  --calendar-holiday-text: #246c91;
  --radius: 10px;
  --shadow: 0 1px 2px #10141814;
  --shadow-2: 0 8px 24px #10141829;
  --cm-grid: #1014180f;
  --cm-blob-warm: #f8b0140e;
  --cm-blob-cool: #0000;
}

/* [project]/node_modules/.pnpm/pdfjs-dist@5.7.284/node_modules/pdfjs-dist/web/pdf_viewer.css [app-client] (css) */
.messageBar {
  --closing-button-icon: url("../media/messageBar_closingButton.15rqkmbgrfbfy.svg");
  --message-bar-close-button-color: var(--text-primary-color);
  --message-bar-close-button-color-hover: var(--text-primary-color);
  --message-bar-close-button-border-radius: 4px;
  --message-bar-close-button-border: none;
  --csstools-light-dark-toggle--0: var(--csstools-color-scheme--light) #fbfbfe24;
  --message-bar-close-button-hover-bg-color: var(--csstools-light-dark-toggle--0, #15141a24);
  --csstools-light-dark-toggle--1: var(--csstools-color-scheme--light) #fbfbfe36;
  --message-bar-close-button-active-bg-color: var(--csstools-light-dark-toggle--1, #15141a36);
  --csstools-light-dark-toggle--2: var(--csstools-color-scheme--light) #fbfbfe12;
  --message-bar-close-button-focus-bg-color: var(--csstools-light-dark-toggle--2, #15141a12);
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .messageBar {
    --message-bar-close-button-hover-bg-color: light-dark(#15141a24, #fbfbfe24);
    --message-bar-close-button-active-bg-color: light-dark(#15141a36, #fbfbfe36);
    --message-bar-close-button-focus-bg-color: light-dark(#15141a12, #fbfbfe12);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .messageBar * {
    --csstools-light-dark-toggle--0: var(--csstools-color-scheme--light) #fbfbfe24;
    --message-bar-close-button-hover-bg-color: var(--csstools-light-dark-toggle--0, #15141a24);
    --csstools-light-dark-toggle--1: var(--csstools-color-scheme--light) #fbfbfe36;
    --message-bar-close-button-active-bg-color: var(--csstools-light-dark-toggle--1, #15141a36);
    --csstools-light-dark-toggle--2: var(--csstools-color-scheme--light) #fbfbfe12;
    --message-bar-close-button-focus-bg-color: var(--csstools-light-dark-toggle--2, #15141a12);
  }
}

@media screen and (forced-colors: active) {
  .messageBar {
    --message-bar-close-button-color: ButtonText;
    --message-bar-close-button-border: 1px solid ButtonText;
    --message-bar-close-button-hover-bg-color: ButtonText;
    --message-bar-close-button-active-bg-color: ButtonText;
    --message-bar-close-button-focus-bg-color: ButtonText;
    --message-bar-close-button-color-hover: HighlightText;
  }
}

.messageBar {
  -webkit-user-select: none;
  user-select: none;
  border: 1px solid var(--message-bar-border-color);
  background: var(--message-bar-bg-color);
  color: var(--message-bar-fg-color);
  border-radius: 4px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 8px 8px 8px 16px;
  display: flex;
  position: relative;
}

.messageBar > div {
  align-self: stretch;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

:is(.messageBar > div):before {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--message-bar-icon);
  -webkit-mask-image: var(--message-bar-icon);
  mask-image: var(--message-bar-icon);
  background-color: var(--message-bar-icon-color);
  flex-shrink: 0;
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

.messageBar button {
  cursor: pointer;
}

:is(.messageBar button):focus-visible {
  outline: var(--focus-ring-outline);
  outline-offset: 2px;
}

.messageBar .closeButton {
  border-radius: var(--message-bar-close-button-border-radius);
  border: var(--message-bar-close-button-border);
  background: none;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

:is(.messageBar .closeButton):before {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--closing-button-icon);
  -webkit-mask-image: var(--closing-button-icon);
  mask-image: var(--closing-button-icon);
  background-color: var(--message-bar-close-button-color);
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(.messageBar .closeButton):is(:hover, :active, :focus):before {
  background-color: var(--message-bar-close-button-color-hover);
}

:is(.messageBar .closeButton):hover {
  background-color: var(--message-bar-close-button-hover-bg-color);
}

:is(.messageBar .closeButton):active {
  background-color: var(--message-bar-close-button-active-bg-color);
}

:is(.messageBar .closeButton):focus {
  background-color: var(--message-bar-close-button-focus-bg-color);
}

:is(.messageBar .closeButton) > span {
  width: 0;
  height: 0;
  display: inline-block;
  overflow: hidden;
}

#editorUndoBar {
  --csstools-light-dark-toggle--3: var(--csstools-color-scheme--light) #fbfbfe;
  --text-primary-color: var(--csstools-light-dark-toggle--3, #15141a);
  --message-bar-icon: url("../media/messageBar_info.17crwltyl6qk5.svg");
  --csstools-light-dark-toggle--4: var(--csstools-color-scheme--light) #73a7f3;
  --message-bar-icon-color: var(--csstools-light-dark-toggle--4, #0060df);
  --csstools-light-dark-toggle--5: var(--csstools-color-scheme--light) #003070;
  --message-bar-bg-color: var(--csstools-light-dark-toggle--5, #deeafc);
  --message-bar-fg-color: var(--text-primary-color);
  --csstools-light-dark-toggle--6: var(--csstools-color-scheme--light) #ffffff14;
  --message-bar-border-color: var(--csstools-light-dark-toggle--6, #00000014);
  --csstools-light-dark-toggle--7: var(--csstools-color-scheme--light) #ffffff14;
  --undo-button-bg-color: var(--csstools-light-dark-toggle--7, #15141a12);
  --csstools-light-dark-toggle--8: var(--csstools-color-scheme--light) #ffffff24;
  --undo-button-bg-color-hover: var(--csstools-light-dark-toggle--8, #15141a24);
  --csstools-light-dark-toggle--9: var(--csstools-color-scheme--light) #ffffff36;
  --undo-button-bg-color-active: var(--csstools-light-dark-toggle--9, #15141a36);
  --csstools-light-dark-toggle--10: var(--csstools-color-scheme--light) #0df;
  --undo-button-border: 1px solid var(--csstools-light-dark-toggle--10, #0060df);
  --undo-button-fg-color: var(--message-bar-fg-color);
  --undo-button-fg-color-hover: var(--undo-button-fg-color);
  --undo-button-fg-color-active: var(--undo-button-fg-color);
}

@supports (color: light-dark(red, red)) {
  #editorUndoBar {
    --text-primary-color: light-dark(#15141a, #fbfbfe);
    --message-bar-icon-color: light-dark(#0060df, #73a7f3);
    --message-bar-bg-color: light-dark(#deeafc, #003070);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #editorUndoBar {
    --message-bar-border-color: light-dark(#00000014, #ffffff14);
    --undo-button-bg-color: light-dark(#15141a12, #ffffff14);
    --undo-button-bg-color-hover: light-dark(#15141a24, #ffffff24);
    --undo-button-bg-color-active: light-dark(#15141a36, #ffffff36);
  }
}

@supports (color: light-dark(red, red)) {
  #editorUndoBar {
    --undo-button-border: 1px solid light-dark(#0060df, #0df);
  }
}

@supports not (color: light-dark(tan, tan)) {
  #editorUndoBar * {
    --csstools-light-dark-toggle--3: var(--csstools-color-scheme--light) #fbfbfe;
    --text-primary-color: var(--csstools-light-dark-toggle--3, #15141a);
    --csstools-light-dark-toggle--4: var(--csstools-color-scheme--light) #73a7f3;
    --message-bar-icon-color: var(--csstools-light-dark-toggle--4, #0060df);
    --csstools-light-dark-toggle--5: var(--csstools-color-scheme--light) #003070;
    --message-bar-bg-color: var(--csstools-light-dark-toggle--5, #deeafc);
    --csstools-light-dark-toggle--6: var(--csstools-color-scheme--light) #ffffff14;
    --message-bar-border-color: var(--csstools-light-dark-toggle--6, #00000014);
    --csstools-light-dark-toggle--7: var(--csstools-color-scheme--light) #ffffff14;
    --undo-button-bg-color: var(--csstools-light-dark-toggle--7, #15141a12);
    --csstools-light-dark-toggle--8: var(--csstools-color-scheme--light) #ffffff24;
    --undo-button-bg-color-hover: var(--csstools-light-dark-toggle--8, #15141a24);
    --csstools-light-dark-toggle--9: var(--csstools-color-scheme--light) #ffffff36;
    --undo-button-bg-color-active: var(--csstools-light-dark-toggle--9, #15141a36);
    --csstools-light-dark-toggle--10: var(--csstools-color-scheme--light) #0df;
    --undo-button-border: 1px solid var(--csstools-light-dark-toggle--10, #0060df);
  }
}

@media screen and (forced-colors: active) {
  #editorUndoBar {
    --text-primary-color: CanvasText;
    --message-bar-icon-color: CanvasText;
    --message-bar-bg-color: Canvas;
    --message-bar-border-color: CanvasText;
    --undo-button-bg-color: ButtonText;
    --undo-button-bg-color-hover: SelectedItem;
    --undo-button-bg-color-active: SelectedItem;
    --undo-button-fg-color: ButtonFace;
    --undo-button-fg-color-hover: SelectedItemText;
    --undo-button-fg-color-active: SelectedItemText;
    --undo-button-border: none;
  }
}

#editorUndoBar {
  z-index: 10;
  font: menu;
  cursor: default;
  padding-block: 8px;
  padding-inline: 16px 8px;
  font-size: 15px;
  position: fixed;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}

#editorUndoBar button {
  cursor: pointer;
}

#editorUndoBar #editorUndoBarUndoButton {
  color: var(--undo-button-fg-color);
  border: var(--undo-button-border);
  background-color: var(--undo-button-bg-color);
  border-radius: 4px;
  height: 32px;
  margin-inline-start: 8px;
  padding: 4px 16px;
  font-weight: 590;
  line-height: 19.5px;
}

:is(#editorUndoBar #editorUndoBarUndoButton):hover {
  background-color: var(--undo-button-bg-color-hover);
  color: var(--undo-button-fg-color-hover);
}

:is(#editorUndoBar #editorUndoBarUndoButton):active {
  background-color: var(--undo-button-bg-color-active);
  color: var(--undo-button-fg-color-active);
}

#editorUndoBar > div {
  align-items: center;
}

.dialog {
  --csstools-light-dark-toggle--11: var(--csstools-color-scheme--light) #1c1b22;
  --dialog-bg-color: var(--csstools-light-dark-toggle--11, white);
  --csstools-light-dark-toggle--12: var(--csstools-color-scheme--light) #1c1b22;
  --dialog-border-color: var(--csstools-light-dark-toggle--12, white);
  --csstools-light-dark-toggle--13: var(--csstools-color-scheme--light) #15141a;
  --dialog-shadow: 0 2px 14px 0 var(--csstools-light-dark-toggle--13, #3a394433);
  --csstools-light-dark-toggle--14: var(--csstools-color-scheme--light) #fbfbfe;
  --text-primary-color: var(--csstools-light-dark-toggle--14, #15141a);
  --csstools-light-dark-toggle--15: var(--csstools-color-scheme--light) #cfcfd8;
  --text-secondary-color: var(--csstools-light-dark-toggle--15, #5b5b66);
  --hover-filter: brightness(.9);
  --csstools-light-dark-toggle--16: var(--csstools-color-scheme--light) #0df;
  --link-fg-color: var(--csstools-light-dark-toggle--16, #0060df);
  --csstools-light-dark-toggle--17: var(--csstools-color-scheme--light) #80ebff;
  --link-hover-fg-color: var(--csstools-light-dark-toggle--17, #0250bb);
  --csstools-light-dark-toggle--18: var(--csstools-color-scheme--light) #52525e;
  --separator-color: var(--csstools-light-dark-toggle--18, #f0f0f4);
  --textarea-border-color: #8f8f9d;
  --csstools-light-dark-toggle--19: var(--csstools-color-scheme--light) #42414d;
  --textarea-bg-color: var(--csstools-light-dark-toggle--19, white);
  --textarea-fg-color: var(--text-secondary-color);
  --csstools-light-dark-toggle--20: var(--csstools-color-scheme--light) #2b2a33;
  --radio-bg-color: var(--csstools-light-dark-toggle--20, #f0f0f4);
  --csstools-light-dark-toggle--21: var(--csstools-color-scheme--light) #15141a;
  --radio-checked-bg-color: var(--csstools-light-dark-toggle--21, #fbfbfe);
  --radio-border-color: #8f8f9d;
  --csstools-light-dark-toggle--22: var(--csstools-color-scheme--light) #0df;
  --radio-checked-border-color: var(--csstools-light-dark-toggle--22, #0060df);
  --csstools-light-dark-toggle--23: var(--csstools-color-scheme--light) #fbfbfe12;
  --button-secondary-bg-color: var(--csstools-light-dark-toggle--23, #15141a12);
  --button-secondary-fg-color: var(--text-primary-color);
  --button-secondary-border-color: var(--button-secondary-bg-color);
  --csstools-light-dark-toggle--24: var(--csstools-color-scheme--light) #fbfbfe36;
  --button-secondary-active-bg-color: var(--csstools-light-dark-toggle--24, #15141a36);
  --button-secondary-active-fg-color: var(--button-secondary-fg-color);
  --button-secondary-active-border-color: var(--button-secondary-bg-color);
  --csstools-light-dark-toggle--25: var(--csstools-color-scheme--light) #fbfbfe24;
  --button-secondary-hover-bg-color: var(--csstools-light-dark-toggle--25, #15141a24);
  --button-secondary-hover-fg-color: var(--button-secondary-fg-color);
  --button-secondary-hover-border-color: var(--button-secondary-hover-bg-color);
  --button-secondary-disabled-bg-color: var(--button-secondary-bg-color);
  --button-secondary-disabled-border-color: var(--button-secondary-border-color);
  --button-secondary-disabled-fg-color: var(--button-secondary-fg-color);
  --csstools-light-dark-toggle--26: var(--csstools-color-scheme--light) #0df;
  --button-primary-bg-color: var(--csstools-light-dark-toggle--26, #0060df);
  --csstools-light-dark-toggle--27: var(--csstools-color-scheme--light) #15141a;
  --button-primary-fg-color: var(--csstools-light-dark-toggle--27, #fbfbfe);
  --button-primary-border-color: var(--button-primary-bg-color);
  --csstools-light-dark-toggle--28: var(--csstools-color-scheme--light) #aaf2ff;
  --button-primary-active-bg-color: var(--csstools-light-dark-toggle--28, #054096);
  --button-primary-active-fg-color: var(--button-primary-fg-color);
  --button-primary-active-border-color: var(--button-primary-active-bg-color);
  --csstools-light-dark-toggle--29: var(--csstools-color-scheme--light) #80ebff;
  --button-primary-hover-bg-color: var(--csstools-light-dark-toggle--29, #0250bb);
  --button-primary-hover-fg-color: var(--button-primary-fg-color);
  --button-primary-hover-border-color: var(--button-primary-hover-bg-color);
  --button-primary-disabled-bg-color: var(--button-primary-bg-color);
  --button-primary-disabled-border-color: var(--button-primary-border-color);
  --button-primary-disabled-fg-color: var(--button-primary-fg-color);
  --button-disabled-opacity: .4;
  --csstools-light-dark-toggle--30: var(--csstools-color-scheme--light) #42414d;
  --input-text-bg-color: var(--csstools-light-dark-toggle--30, white);
  --input-text-fg-color: var(--text-primary-color);
}

@supports (color: light-dark(red, red)) {
  .dialog {
    --dialog-bg-color: light-dark(#fff, #1c1b22);
    --dialog-border-color: light-dark(#fff, #1c1b22);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .dialog {
    --dialog-shadow: 0 2px 14px 0 light-dark(#3a394433, #15141a);
  }
}

@supports (color: light-dark(red, red)) {
  .dialog {
    --text-primary-color: light-dark(#15141a, #fbfbfe);
    --text-secondary-color: light-dark(#5b5b66, #cfcfd8);
    --link-fg-color: light-dark(#0060df, #0df);
    --link-hover-fg-color: light-dark(#0250bb, #80ebff);
    --separator-color: light-dark(#f0f0f4, #52525e);
    --textarea-bg-color: light-dark(#fff, #42414d);
    --radio-bg-color: light-dark(#f0f0f4, #2b2a33);
    --radio-checked-bg-color: light-dark(#fbfbfe, #15141a);
    --radio-checked-border-color: light-dark(#0060df, #0df);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .dialog {
    --button-secondary-bg-color: light-dark(#15141a12, #fbfbfe12);
    --button-secondary-active-bg-color: light-dark(#15141a36, #fbfbfe36);
    --button-secondary-hover-bg-color: light-dark(#15141a24, #fbfbfe24);
  }
}

@supports (color: light-dark(red, red)) {
  .dialog {
    --button-primary-bg-color: light-dark(#0060df, #0df);
    --button-primary-fg-color: light-dark(#fbfbfe, #15141a);
    --button-primary-active-bg-color: light-dark(#054096, #aaf2ff);
    --button-primary-hover-bg-color: light-dark(#0250bb, #80ebff);
    --input-text-bg-color: light-dark(#fff, #42414d);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .dialog * {
    --csstools-light-dark-toggle--11: var(--csstools-color-scheme--light) #1c1b22;
    --dialog-bg-color: var(--csstools-light-dark-toggle--11, white);
    --csstools-light-dark-toggle--12: var(--csstools-color-scheme--light) #1c1b22;
    --dialog-border-color: var(--csstools-light-dark-toggle--12, white);
    --csstools-light-dark-toggle--13: var(--csstools-color-scheme--light) #15141a;
    --dialog-shadow: 0 2px 14px 0 var(--csstools-light-dark-toggle--13, #3a394433);
    --csstools-light-dark-toggle--14: var(--csstools-color-scheme--light) #fbfbfe;
    --text-primary-color: var(--csstools-light-dark-toggle--14, #15141a);
    --csstools-light-dark-toggle--15: var(--csstools-color-scheme--light) #cfcfd8;
    --text-secondary-color: var(--csstools-light-dark-toggle--15, #5b5b66);
    --csstools-light-dark-toggle--16: var(--csstools-color-scheme--light) #0df;
    --link-fg-color: var(--csstools-light-dark-toggle--16, #0060df);
    --csstools-light-dark-toggle--17: var(--csstools-color-scheme--light) #80ebff;
    --link-hover-fg-color: var(--csstools-light-dark-toggle--17, #0250bb);
    --csstools-light-dark-toggle--18: var(--csstools-color-scheme--light) #52525e;
    --separator-color: var(--csstools-light-dark-toggle--18, #f0f0f4);
    --csstools-light-dark-toggle--19: var(--csstools-color-scheme--light) #42414d;
    --textarea-bg-color: var(--csstools-light-dark-toggle--19, white);
    --csstools-light-dark-toggle--20: var(--csstools-color-scheme--light) #2b2a33;
    --radio-bg-color: var(--csstools-light-dark-toggle--20, #f0f0f4);
    --csstools-light-dark-toggle--21: var(--csstools-color-scheme--light) #15141a;
    --radio-checked-bg-color: var(--csstools-light-dark-toggle--21, #fbfbfe);
    --csstools-light-dark-toggle--22: var(--csstools-color-scheme--light) #0df;
    --radio-checked-border-color: var(--csstools-light-dark-toggle--22, #0060df);
    --csstools-light-dark-toggle--23: var(--csstools-color-scheme--light) #fbfbfe12;
    --button-secondary-bg-color: var(--csstools-light-dark-toggle--23, #15141a12);
    --csstools-light-dark-toggle--24: var(--csstools-color-scheme--light) #fbfbfe36;
    --button-secondary-active-bg-color: var(--csstools-light-dark-toggle--24, #15141a36);
    --csstools-light-dark-toggle--25: var(--csstools-color-scheme--light) #fbfbfe24;
    --button-secondary-hover-bg-color: var(--csstools-light-dark-toggle--25, #15141a24);
    --csstools-light-dark-toggle--26: var(--csstools-color-scheme--light) #0df;
    --button-primary-bg-color: var(--csstools-light-dark-toggle--26, #0060df);
    --csstools-light-dark-toggle--27: var(--csstools-color-scheme--light) #15141a;
    --button-primary-fg-color: var(--csstools-light-dark-toggle--27, #fbfbfe);
    --csstools-light-dark-toggle--28: var(--csstools-color-scheme--light) #aaf2ff;
    --button-primary-active-bg-color: var(--csstools-light-dark-toggle--28, #054096);
    --csstools-light-dark-toggle--29: var(--csstools-color-scheme--light) #80ebff;
    --button-primary-hover-bg-color: var(--csstools-light-dark-toggle--29, #0250bb);
    --csstools-light-dark-toggle--30: var(--csstools-color-scheme--light) #42414d;
    --input-text-bg-color: var(--csstools-light-dark-toggle--30, white);
  }
}

@media (prefers-color-scheme: dark) {
  .dialog {
    --hover-filter: brightness(1.4);
    --button-disabled-opacity: .6;
  }
}

@media screen and (forced-colors: active) {
  .dialog {
    --dialog-bg-color: Canvas;
    --dialog-border-color: CanvasText;
    --dialog-shadow: none;
    --text-primary-color: CanvasText;
    --text-secondary-color: CanvasText;
    --hover-filter: none;
    --link-fg-color: LinkText;
    --link-hover-fg-color: LinkText;
    --separator-color: CanvasText;
    --textarea-border-color: ButtonBorder;
    --textarea-bg-color: Field;
    --textarea-fg-color: ButtonText;
    --radio-bg-color: ButtonFace;
    --radio-checked-bg-color: ButtonFace;
    --radio-border-color: ButtonText;
    --radio-checked-border-color: ButtonText;
    --button-secondary-bg-color: ButtonFace;
    --button-secondary-fg-color: ButtonText;
    --button-secondary-border-color: ButtonText;
    --button-secondary-active-bg-color: HighlightText;
    --button-secondary-active-fg-color: SelectedItem;
    --button-secondary-active-border-color: ButtonText;
    --button-secondary-hover-bg-color: HighlightText;
    --button-secondary-hover-fg-color: SelectedItem;
    --button-secondary-hover-border-color: SelectedItem;
    --button-secondary-disabled-fg-color: GrayText;
    --button-secondary-disabled-border-color: GrayText;
    --button-primary-bg-color: ButtonText;
    --button-primary-fg-color: ButtonFace;
    --button-primary-border-color: ButtonText;
    --button-primary-active-bg-color: SelectedItem;
    --button-primary-active-fg-color: HighlightText;
    --button-primary-active-border-color: ButtonText;
    --button-primary-hover-bg-color: SelectedItem;
    --button-primary-hover-fg-color: HighlightText;
    --button-primary-hover-border-color: SelectedItem;
    --button-primary-disabled-bg-color: GrayText;
    --button-primary-disabled-fg-color: ButtonFace;
    --button-primary-disabled-border-color: GrayText;
    --button-disabled-opacity: 1;
    --input-text-bg-color: Field;
    --input-text-fg-color: FieldText;
  }
}

.dialog {
  font: message-box;
  border: 1px solid var(--dialog-border-color);
  background: var(--dialog-bg-color);
  color: var(--text-primary-color);
  box-shadow: var(--dialog-shadow);
  border-radius: 4px;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 400;
  line-height: 150%;
}

:is(.dialog .mainContainer) :focus-visible {
  outline: var(--focus-ring-outline);
  outline-offset: 2px;
}

:is(.dialog .mainContainer) .title {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  display: flex;
}

:is(:is(.dialog .mainContainer) .title) > span {
  font-size: 13px;
  font-style: normal;
  font-weight: 590;
  line-height: 150%;
}

:is(.dialog .mainContainer) .dialogSeparator {
  border-top: 1px solid var(--separator-color);
  border-bottom: none;
  width: 100%;
  height: 0;
  margin-block: 4px;
}

:is(.dialog .mainContainer) .dialogButtonsGroup {
  align-self: flex-end;
  gap: 12px;
  display: flex;
}

:is(.dialog .mainContainer) .radio {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}

:is(:is(.dialog .mainContainer) .radio) > .radioButton {
  align-self: stretch;
  align-items: center;
  gap: 8px;
  display: flex;
}

:is(:is(:is(.dialog .mainContainer) .radio) > .radioButton) input {
  appearance: none;
  box-sizing: border-box;
  background-color: var(--radio-bg-color);
  border: 1px solid var(--radio-border-color);
  border-radius: 50%;
  width: 16px;
  height: 16px;
}

:is(:is(:is(:is(.dialog .mainContainer) .radio) > .radioButton) input):hover {
  filter: var(--hover-filter);
}

:is(:is(:is(:is(.dialog .mainContainer) .radio) > .radioButton) input):checked {
  background-color: var(--radio-checked-bg-color);
  border: 4px solid var(--radio-checked-border-color);
}

:is(:is(.dialog .mainContainer) .radio) > .radioLabel {
  align-self: stretch;
  align-items: flex-start;
  gap: 10px;
  padding-inline-start: 24px;
  display: flex;
}

:is(:is(:is(.dialog .mainContainer) .radio) > .radioLabel) > span {
  color: var(--text-secondary-color);
  flex: 1 0 0;
  font-size: 11px;
}

:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton)) {
  font: menu;
  border: 1px solid;
  border-radius: 4px;
  width: auto;
  height: 32px;
  padding: 4px 16px;
  font-size: 13px;
  font-weight: 590;
}

:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):hover {
  cursor: pointer;
  filter: var(--hover-filter);
}

:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))) > span {
  color: inherit;
  font: inherit;
}

.secondaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))) {
  color: var(--button-secondary-fg-color);
  background-color: var(--button-secondary-bg-color);
  border-color: var(--button-secondary-border-color);
}

.secondaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):hover {
  color: var(--button-secondary-hover-fg-color);
  background-color: var(--button-secondary-hover-bg-color);
  border-color: var(--button-secondary-hover-border-color);
}

.secondaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):active {
  color: var(--button-secondary-active-fg-color);
  background-color: var(--button-secondary-active-bg-color);
  border-color: var(--button-secondary-active-border-color);
}

.secondaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):disabled {
  background-color: var(--button-secondary-disabled-bg-color);
  border-color: var(--button-secondary-disabled-border-color);
  color: var(--button-secondary-disabled-fg-color);
  opacity: var(--button-disabled-opacity);
}

.primaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))) {
  color: var(--button-primary-fg-color);
  background-color: var(--button-primary-bg-color);
  border-color: var(--button-primary-border-color);
  opacity: 1;
}

.primaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):hover {
  color: var(--button-primary-hover-fg-color);
  background-color: var(--button-primary-hover-bg-color);
  border-color: var(--button-primary-hover-border-color);
}

.primaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):active {
  color: var(--button-primary-active-fg-color);
  background-color: var(--button-primary-active-bg-color);
  border-color: var(--button-primary-active-border-color);
}

.primaryButton:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):disabled {
  background-color: var(--button-primary-disabled-bg-color);
  border-color: var(--button-primary-disabled-border-color);
  color: var(--button-primary-disabled-fg-color);
  opacity: var(--button-disabled-opacity);
}

:is(:is(.dialog .mainContainer) button:not(:is(.toggle-button, .closeButton, .clearInputButton))):disabled {
  pointer-events: none;
}

:is(.dialog .mainContainer) a {
  color: var(--link-fg-color);
}

:is(:is(.dialog .mainContainer) a):hover {
  color: var(--link-hover-fg-color);
}

:is(.dialog .mainContainer) textarea {
  font: inherit;
  resize: none;
  box-sizing: border-box;
  border: 1px solid var(--textarea-border-color);
  background: var(--textarea-bg-color);
  color: var(--textarea-fg-color);
  border-radius: 4px;
  margin: 0;
  padding: 8px;
}

:is(:is(.dialog .mainContainer) textarea):focus {
  outline-offset: 0;
  border-color: #0000;
}

:is(:is(.dialog .mainContainer) textarea):disabled {
  pointer-events: none;
  opacity: .4;
}

:is(.dialog .mainContainer) input[type="text"] {
  background-color: var(--input-text-bg-color);
  color: var(--input-text-fg-color);
}

:is(.dialog .mainContainer) .messageBar {
  --csstools-light-dark-toggle--31: var(--csstools-color-scheme--light) #5a3100;
  --message-bar-bg-color: var(--csstools-light-dark-toggle--31, #ffebcd);
  --csstools-light-dark-toggle--32: var(--csstools-color-scheme--light) #fbfbfe;
  --message-bar-fg-color: var(--csstools-light-dark-toggle--32, #15141a);
  --csstools-light-dark-toggle--33: var(--csstools-color-scheme--light) #ffffff14;
  --message-bar-border-color: var(--csstools-light-dark-toggle--33, #00000014);
  --message-bar-icon: url("../media/messageBar_warning.0zri3991i~s-j.svg");
  --csstools-light-dark-toggle--34: var(--csstools-color-scheme--light) #e49c49;
  --message-bar-icon-color: var(--csstools-light-dark-toggle--34, #cd411e);
}

@supports (color: light-dark(red, red)) {
  :is(.dialog .mainContainer) .messageBar {
    --message-bar-bg-color: light-dark(#ffebcd, #5a3100);
    --message-bar-fg-color: light-dark(#15141a, #fbfbfe);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  :is(.dialog .mainContainer) .messageBar {
    --message-bar-border-color: light-dark(#00000014, #ffffff14);
  }
}

@supports (color: light-dark(red, red)) {
  :is(.dialog .mainContainer) .messageBar {
    --message-bar-icon-color: light-dark(#cd411e, #e49c49);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(.dialog .mainContainer) .messageBar) * {
    --csstools-light-dark-toggle--31: var(--csstools-color-scheme--light) #5a3100;
    --message-bar-bg-color: var(--csstools-light-dark-toggle--31, #ffebcd);
    --csstools-light-dark-toggle--32: var(--csstools-color-scheme--light) #fbfbfe;
    --message-bar-fg-color: var(--csstools-light-dark-toggle--32, #15141a);
    --csstools-light-dark-toggle--33: var(--csstools-color-scheme--light) #ffffff14;
    --message-bar-border-color: var(--csstools-light-dark-toggle--33, #00000014);
    --csstools-light-dark-toggle--34: var(--csstools-color-scheme--light) #e49c49;
    --message-bar-icon-color: var(--csstools-light-dark-toggle--34, #cd411e);
  }
}

@media screen and (forced-colors: active) {
  :is(.dialog .mainContainer) .messageBar {
    --message-bar-bg-color: HighlightText;
    --message-bar-fg-color: CanvasText;
    --message-bar-border-color: CanvasText;
    --message-bar-icon-color: CanvasText;
  }
}

:is(.dialog .mainContainer) .messageBar {
  align-self: stretch;
}

:is(:is(:is(.dialog .mainContainer) .messageBar) > div):before, :is(:is(:is(.dialog .mainContainer) .messageBar) > div) > div {
  margin-block: 4px;
}

:is(:is(:is(.dialog .mainContainer) .messageBar) > div) > div {
  flex-direction: column;
  flex: 1 0 0;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

:is(:is(:is(:is(.dialog .mainContainer) .messageBar) > div) > div) .title {
  font-size: 13px;
  font-weight: 590;
}

:is(:is(:is(:is(.dialog .mainContainer) .messageBar) > div) > div) .description {
  font-size: 13px;
}

:is(.dialog .mainContainer) .toggler {
  align-self: stretch;
  align-items: center;
  gap: 8px;
  display: flex;
}

:is(:is(.dialog .mainContainer) .toggler) > .togglerLabel {
  -webkit-user-select: none;
  user-select: none;
}

.textLayer {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light only;
  text-align: initial;
  opacity: 1;
  -moz-text-size-adjust: none;
  text-size-adjust: none;
  forced-color-adjust: none;
  transform-origin: 0 0;
  caret-color: canvastext;
  z-index: 0;
  line-height: 1;
  position: absolute;
  inset: 0;
  overflow: clip;
}

.textLayer.highlighting {
  touch-action: none;
}

.textLayer :is(span, br) {
  color: #0000;
  white-space: pre;
  cursor: text;
  transform-origin: 0 0;
  position: absolute;
}

.textLayer {
  --min-font-size: 1;
  --text-scale-factor: calc(var(--total-scale-factor) * var(--min-font-size));
  --min-font-size-inv: calc(1 / var(--min-font-size));
}

.textLayer > :not(.markedContent), .textLayer .markedContent span:not(.markedContent) {
  z-index: 1;
  --font-height: 0;
  font-size: calc(var(--text-scale-factor) * var(--font-height));
  --scale-x: 1;
  --rotate: 0deg;
  transform: rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv));
}

.textLayer .markedContent {
  display: contents;
}

.textLayer span[role="img"] {
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}

.textLayer .highlight {
  --highlight-bg-color: #b400aa40;
  --highlight-selected-bg-color: #00640040;
  --highlight-backdrop-filter: none;
  --highlight-selected-backdrop-filter: none;
}

@media screen and (forced-colors: active) {
  .textLayer .highlight {
    --highlight-bg-color: transparent;
    --highlight-selected-bg-color: transparent;
    --highlight-backdrop-filter: var(--hcm-highlight-filter);
    --highlight-selected-backdrop-filter: var(--hcm-highlight-selected-filter);
  }
}

.textLayer .highlight {
  background-color: var(--highlight-bg-color);
  -webkit-backdrop-filter: var(--highlight-backdrop-filter);
  backdrop-filter: var(--highlight-backdrop-filter);
  border-radius: 4px;
  margin: -1px;
  padding: 1px;
}

.appended:is(.textLayer .highlight) {
  position: initial;
}

.begin:is(.textLayer .highlight) {
  border-radius: 4px 0 0 4px;
}

.end:is(.textLayer .highlight) {
  border-radius: 0 4px 4px 0;
}

.middle:is(.textLayer .highlight) {
  border-radius: 0;
}

.selected:is(.textLayer .highlight) {
  background-color: var(--highlight-selected-bg-color);
  -webkit-backdrop-filter: var(--highlight-selected-backdrop-filter);
  backdrop-filter: var(--highlight-selected-backdrop-filter);
  scroll-margin-top: 50px;
}

.textLayer ::selection {
  background: #0000ff40;
  background: color-mix(in srgb, AccentColor, transparent 75%);
}

.textLayer br::selection {
  background: none;
}

.textLayer .endOfContent {
  z-index: 0;
  cursor: default;
  -webkit-user-select: none;
  user-select: none;
  display: block;
  position: absolute;
  inset: 100% 0 0;
}

.textLayer.selecting .endOfContent {
  top: 0;
}

.textLayerImages {
  -webkit-user-select: none;
  user-select: none;
  position: absolute;
  inset: 0;
}

.textLayerImages canvas {
  transform-origin: 0 0;
  position: absolute;
}

.annotationLayer {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light only;
  --annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");
  --input-focus-border-color: Highlight;
  --input-focus-outline: 1px solid Canvas;
  --input-unfocused-border-color: transparent;
  --input-disabled-border-color: transparent;
  --input-hover-border-color: black;
  --link-outline: none;
}

@media screen and (forced-colors: active) {
  .annotationLayer {
    --input-focus-border-color: CanvasText;
    --input-unfocused-border-color: ActiveText;
    --input-disabled-border-color: GrayText;
    --input-hover-border-color: Highlight;
    --link-outline: 1.5px solid LinkText;
  }

  .annotationLayer .textWidgetAnnotation :is(input, textarea):required, .annotationLayer .choiceWidgetAnnotation select:required, .annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:required {
    outline: 1.5px solid selecteditem;
  }

  .annotationLayer .linkAnnotation {
    outline: var(--link-outline);
  }

  :is(.annotationLayer .linkAnnotation):hover {
    -webkit-backdrop-filter: var(--hcm-highlight-filter);
    backdrop-filter: var(--hcm-highlight-filter);
  }

  :is(.annotationLayer .linkAnnotation) > a:hover {
    box-shadow: none;
    opacity: 0 !important;
    background: none !important;
  }

  .annotationLayer .popupAnnotation .popup {
    outline: calc(1.5px * var(--total-scale-factor)) solid CanvasText !important;
    color: buttontext !important;
    background-color: buttonface !important;
  }

  .annotationLayer .highlightArea:hover:after {
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: var(--hcm-highlight-filter);
    backdrop-filter: var(--hcm-highlight-filter);
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
  }

  .annotationLayer .popupAnnotation.focused .popup {
    outline: calc(3px * var(--total-scale-factor)) solid Highlight !important;
  }
}

.annotationLayer {
  pointer-events: none;
  transform-origin: 0 0;
  position: absolute;
  top: 0;
  left: 0;
}

.annotationLayer[data-main-rotation="90"] .norotate {
  transform: rotate(270deg)translateX(-100%);
}

.annotationLayer[data-main-rotation="180"] .norotate {
  transform: rotate(180deg)translate(-100%, -100%);
}

.annotationLayer[data-main-rotation="270"] .norotate {
  transform: rotate(90deg)translateY(-100%);
}

.annotationLayer.disabled section, .annotationLayer.disabled .popup {
  pointer-events: none;
}

.annotationLayer .annotationContent {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
}

.freetext:is(.annotationLayer .annotationContent) {
  white-space: nowrap;
  background: none;
  border: none;
  font: 10px / 1.35 sans-serif;
  inset: 0;
  overflow: visible;
}

.annotationLayer section {
  text-align: initial;
  pointer-events: auto;
  box-sizing: border-box;
  transform-origin: 0 0;
  -webkit-user-select: none;
  user-select: none;
  position: absolute;
}

:is(.annotationLayer section):has(div.annotationContent) canvas.annotationContent {
  display: none;
}

:is(.annotationLayer section) .overlaidText {
  width: 0;
  height: 0;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.textLayer.selecting ~ .annotationLayer section {
  pointer-events: none;
}

.annotationLayer :is(.linkAnnotation, .buttonWidgetAnnotation.pushButton) > a {
  width: 100%;
  height: 100%;
  font-size: 1em;
  position: absolute;
  top: 0;
  left: 0;
}

.annotationLayer :is(.linkAnnotation, .buttonWidgetAnnotation.pushButton):not(.hasBorder) > a:hover {
  opacity: .2;
  background-color: #ff0;
}

.annotationLayer .linkAnnotation.hasBorder:hover {
  background-color: #ff03;
}

.annotationLayer .hasBorder {
  background-size: 100% 100%;
}

.annotationLayer .textAnnotation img {
  cursor: pointer;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.annotationLayer .textWidgetAnnotation :is(input, textarea), .annotationLayer .choiceWidgetAnnotation select, .annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input {
  background-image: var(--annotation-unfocused-field-background);
  border: 2px solid var(--input-unfocused-border-color);
  box-sizing: border-box;
  font: calc(9px * var(--total-scale-factor)) sans-serif;
  vertical-align: top;
  width: 100%;
  height: 100%;
  margin: 0;
}

.annotationLayer .textWidgetAnnotation :is(input, textarea):required, .annotationLayer .choiceWidgetAnnotation select:required, .annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:required {
  outline: 1.5px solid red;
}

.annotationLayer .choiceWidgetAnnotation select option {
  padding: 0;
}

.annotationLayer .buttonWidgetAnnotation.radioButton input {
  border-radius: 50%;
}

.annotationLayer .textWidgetAnnotation textarea {
  resize: none;
}

.annotationLayer .textWidgetAnnotation [disabled]:is(input, textarea), .annotationLayer .choiceWidgetAnnotation select[disabled], .annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input[disabled] {
  border: 2px solid var(--input-disabled-border-color);
  cursor: not-allowed;
  background: none;
}

.annotationLayer .textWidgetAnnotation :is(input, textarea):hover, .annotationLayer .choiceWidgetAnnotation select:hover, .annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:hover {
  border: 2px solid var(--input-hover-border-color);
}

.annotationLayer .textWidgetAnnotation :is(input, textarea):hover, .annotationLayer .choiceWidgetAnnotation select:hover, .annotationLayer .buttonWidgetAnnotation.checkBox input:hover {
  border-radius: 2px;
}

.annotationLayer .textWidgetAnnotation :is(input, textarea):focus, .annotationLayer .choiceWidgetAnnotation select:focus {
  border: 2px solid var(--input-focus-border-color);
  outline: var(--input-focus-outline);
  background: none;
  border-radius: 2px;
}

.annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) :focus {
  background-color: #0000;
  background-image: none;
}

.annotationLayer .buttonWidgetAnnotation.checkBox :focus {
  border: 2px solid var(--input-focus-border-color);
  outline: var(--input-focus-outline);
  border-radius: 2px;
}

.annotationLayer .buttonWidgetAnnotation.radioButton :focus {
  border: 2px solid var(--input-focus-border-color);
  outline: var(--input-focus-outline);
}

.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before, .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after, .annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before {
  content: "";
  background-color: canvastext;
  display: block;
  position: absolute;
}

.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before, .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after {
  width: 1px;
  height: 80%;
  left: 45%;
}

.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before {
  transform: rotate(45deg);
}

.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after {
  transform: rotate(-45deg);
}

.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before {
  border-radius: 50%;
  width: 50%;
  height: 50%;
  top: 25%;
  left: 25%;
}

.annotationLayer .textWidgetAnnotation input.comb {
  padding-left: 2px;
  padding-right: 0;
  font-family: monospace;
}

.annotationLayer .textWidgetAnnotation input.comb:focus {
  width: 103%;
}

.annotationLayer .buttonWidgetAnnotation:is(.checkBox, .radioButton) input {
  appearance: none;
}

.annotationLayer .fileAttachmentAnnotation .popupTriggerArea {
  width: 100%;
  height: 100%;
}

.annotationLayer .popupAnnotation {
  font-size: calc(9px * var(--total-scale-factor));
  pointer-events: none;
  width: max-content;
  max-width: 45%;
  height: auto;
  position: absolute;
}

.annotationLayer .popup {
  color: #000;
  box-shadow: 0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;
  border-radius: calc(2px * var(--total-scale-factor));
  padding: calc(6px * var(--total-scale-factor));
  cursor: pointer;
  font: message-box;
  white-space: normal;
  word-wrap: break-word;
  pointer-events: auto;
  -webkit-user-select: text;
  user-select: text;
  background-color: #ff9;
  outline: 1.5px solid #ffff4a;
}

.annotationLayer .popupAnnotation.focused .popup {
  outline-width: 3px;
}

.annotationLayer .popup * {
  font-size: calc(9px * var(--total-scale-factor));
}

.annotationLayer .popup > .header {
  display: inline-block;
}

.annotationLayer .popup > .header > .title {
  font-weight: bold;
  display: inline;
}

.annotationLayer .popup > .header .popupDate {
  margin-left: calc(5px * var(--total-scale-factor));
  width: fit-content;
  display: inline-block;
}

.annotationLayer .popupContent {
  margin-top: calc(2px * var(--total-scale-factor));
  padding-top: calc(2px * var(--total-scale-factor));
  border-top: 1px solid #333;
}

.annotationLayer .richText > * {
  white-space: pre-wrap;
  font-size: calc(9px * var(--total-scale-factor));
}

.annotationLayer .popupTriggerArea {
  cursor: pointer;
}

:is(.annotationLayer .popupTriggerArea):hover {
  -webkit-backdrop-filter: var(--hcm-highlight-filter);
  backdrop-filter: var(--hcm-highlight-filter);
}

.annotationLayer section svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.annotationLayer .annotationTextContent {
  opacity: 0;
  color: #0000;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
}

:is(.annotationLayer .annotationTextContent) span {
  width: 100%;
  display: inline-block;
}

.annotationLayer svg.quadrilateralsContainer {
  contain: strict;
  z-index: -1;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
}

:root {
  --xfa-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");
  --xfa-focus-outline: auto;
}

@media screen and (forced-colors: active) {
  :root {
    --xfa-focus-outline: 2px solid CanvasText;
  }

  .xfaLayer :required {
    outline: 1.5px solid selecteditem;
  }
}

.xfaLayer {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light only;
  background-color: #0000;
}

.xfaLayer .highlight {
  background-color: #efcbed;
  border-radius: 4px;
  margin: -1px;
  padding: 1px;
}

.xfaLayer .highlight.appended {
  position: initial;
}

.xfaLayer .highlight.begin {
  border-radius: 4px 0 0 4px;
}

.xfaLayer .highlight.end {
  border-radius: 0 4px 4px 0;
}

.xfaLayer .highlight.middle {
  border-radius: 0;
}

.xfaLayer .highlight.selected {
  background-color: #cbdfcb;
}

.xfaPage {
  position: relative;
  overflow: hidden;
}

.xfaContentarea {
  position: absolute;
}

.xfaPrintOnly {
  display: none;
}

.xfaLayer {
  text-align: initial;
  transform-origin: 0 0;
  line-height: 1.2;
  position: absolute;
  top: 0;
  left: 0;
}

.xfaLayer * {
  color: inherit;
  font: inherit;
  font-style: inherit;
  font-weight: inherit;
  font-kerning: inherit;
  letter-spacing: -.01px;
  text-align: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
  box-sizing: border-box;
  pointer-events: auto;
  line-height: inherit;
  background-color: #0000;
  margin: 0;
  padding: 0;
}

.xfaLayer :required {
  outline: 1.5px solid red;
}

.xfaLayer div, .xfaLayer svg, .xfaLayer svg * {
  pointer-events: none;
}

.xfaLayer a {
  color: #00f;
}

.xfaRich li {
  margin-left: 3em;
}

.xfaFont {
  color: #000;
  font-kerning: none;
  letter-spacing: 0;
  vertical-align: 0;
  font-size: 10px;
  font-style: normal;
  font-weight: normal;
  text-decoration: none;
}

.xfaCaption {
  flex: none;
  overflow: hidden;
}

.xfaCaptionForCheckButton {
  flex: auto;
  overflow: hidden;
}

.xfaLabel {
  width: 100%;
  height: 100%;
}

.xfaLeft {
  flex-direction: row;
  align-items: center;
  display: flex;
}

.xfaRight {
  flex-direction: row-reverse;
  align-items: center;
  display: flex;
}

:is(.xfaLeft, .xfaRight) > :is(.xfaCaption, .xfaCaptionForCheckButton) {
  max-height: 100%;
}

.xfaTop {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.xfaBottom {
  flex-direction: column-reverse;
  align-items: flex-start;
  display: flex;
}

:is(.xfaTop, .xfaBottom) > :is(.xfaCaption, .xfaCaptionForCheckButton) {
  width: 100%;
}

.xfaBorder {
  pointer-events: none;
  background-color: #0000;
  position: absolute;
}

.xfaWrapped {
  width: 100%;
  height: 100%;
}

:is(.xfaTextfield, .xfaSelect):focus {
  outline: var(--xfa-focus-outline);
  outline-offset: -1px;
  background-color: #0000;
  background-image: none;
}

:is(.xfaCheckbox, .xfaRadio):focus {
  outline: var(--xfa-focus-outline);
}

.xfaTextfield, .xfaSelect {
  resize: none;
  background-image: var(--xfa-unfocused-field-background);
  border: none;
  flex: auto;
  width: 100%;
  height: 100%;
}

.xfaSelect {
  padding-inline: 2px;
}

:is(.xfaTop, .xfaBottom) > :is(.xfaTextfield, .xfaSelect) {
  flex: 0 auto;
}

.xfaButton {
  cursor: pointer;
  text-align: center;
  border: none;
  width: 100%;
  height: 100%;
}

.xfaLink {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.xfaCheckbox, .xfaRadio {
  border: none;
  flex: none;
  width: 100%;
  height: 100%;
}

.xfaRich {
  white-space: pre-wrap;
  width: 100%;
  height: 100%;
}

.xfaImage {
  -o-object-position: left top;
  object-position: left top;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.xfaLrTb, .xfaRlTb, .xfaTb {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.xfaLr {
  flex-direction: row;
  align-items: stretch;
  display: flex;
}

.xfaRl {
  flex-direction: row-reverse;
  align-items: stretch;
  display: flex;
}

.xfaTb > div {
  justify-content: left;
}

.xfaPosition, .xfaArea {
  position: relative;
}

.xfaValignMiddle {
  align-items: center;
  display: flex;
}

.xfaTable {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.xfaTable .xfaRow {
  flex-direction: row;
  align-items: stretch;
  display: flex;
}

.xfaTable .xfaRlRow {
  flex-direction: row-reverse;
  flex: 1;
  align-items: stretch;
  display: flex;
}

.xfaTable .xfaRlRow > div {
  flex: 1;
}

:is(.xfaNonInteractive, .xfaDisabled, .xfaReadOnly) :is(input, textarea) {
  background: initial;
}

@media print {
  .xfaTextfield, .xfaSelect {
    background: none;
  }

  .xfaSelect {
    appearance: none;
    text-indent: 1px;
    text-overflow: "";
  }
}

.canvasWrapper svg {
  transform: none;
}

.moving:is(.canvasWrapper svg) {
  z-index: 100000;
}

[data-main-rotation="90"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) mask, [data-main-rotation="90"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) use:not(.clip, .mask) {
  transform: matrix(0, 1, -1, 0, 1, 0);
}

[data-main-rotation="180"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) mask, [data-main-rotation="180"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) use:not(.clip, .mask) {
  transform: matrix(-1, 0, 0, -1, 1, 1);
}

[data-main-rotation="270"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) mask, [data-main-rotation="270"]:is(.highlight:is(.canvasWrapper svg), .highlightOutline:is(.canvasWrapper svg)) use:not(.clip, .mask) {
  transform: matrix(0, -1, 1, 0, 0, 1);
}

.draw:is(.canvasWrapper svg) {
  mix-blend-mode: normal;
  position: absolute;
}

.draw[data-draw-rotation="90"]:is(.canvasWrapper svg) {
  transform: rotate(90deg);
}

.draw[data-draw-rotation="180"]:is(.canvasWrapper svg) {
  transform: rotate(180deg);
}

.draw[data-draw-rotation="270"]:is(.canvasWrapper svg) {
  transform: rotate(270deg);
}

.highlight:is(.canvasWrapper svg) {
  --blend-mode: multiply;
}

@media screen and (forced-colors: active) {
  .highlight:is(.canvasWrapper svg) {
    --blend-mode: difference;
  }
}

.highlight:is(.canvasWrapper svg) {
  mix-blend-mode: var(--blend-mode);
  position: absolute;
}

.highlight:is(.canvasWrapper svg):not(.free) {
  fill-rule: evenodd;
}

.highlightOutline:is(.canvasWrapper svg) {
  mix-blend-mode: normal;
  fill-rule: evenodd;
  fill: none;
  position: absolute;
}

.highlightOutline.hovered:is(.canvasWrapper svg):not(.free):not(.selected) {
  stroke: var(--hover-outline-color);
  stroke-width: var(--outline-width);
}

.highlightOutline.selected:is(.canvasWrapper svg):not(.free) .mainOutline {
  stroke: var(--outline-around-color);
  stroke-width: calc(var(--outline-width) + 2 * var(--outline-around-width));
}

.highlightOutline.selected:is(.canvasWrapper svg):not(.free) .secondaryOutline {
  stroke: var(--outline-color);
  stroke-width: var(--outline-width);
}

.highlightOutline.free.hovered:is(.canvasWrapper svg):not(.selected) {
  stroke: var(--hover-outline-color);
  stroke-width: calc(2 * var(--outline-width));
}

.highlightOutline.free.selected:is(.canvasWrapper svg) .mainOutline {
  stroke: var(--outline-around-color);
  stroke-width: calc(2 * (var(--outline-width) + var(--outline-around-width)));
}

.highlightOutline.free.selected:is(.canvasWrapper svg) .secondaryOutline {
  stroke: var(--outline-color);
  stroke-width: calc(2 * var(--outline-width));
}

.toggle-button {
  --button-background-color: color-mix(in srgb, currentColor 7%, transparent);
  --button-background-color-hover: color-mix(in srgb,
    currentColor 14%,
    transparent);
  --button-background-color-active: color-mix(in srgb,
    currentColor 21%,
    transparent);
  --csstools-light-dark-toggle--35: var(--csstools-color-scheme--light) #0df;
  --color-accent-primary: var(--csstools-light-dark-toggle--35, #0060df);
  --csstools-light-dark-toggle--36: var(--csstools-color-scheme--light) #80ebff;
  --color-accent-primary-hover: var(--csstools-light-dark-toggle--36, #0250bb);
  --csstools-light-dark-toggle--37: var(--csstools-color-scheme--light) #aaf2ff;
  --color-accent-primary-active: var(--csstools-light-dark-toggle--37, #054096);
  --border-radius-circle: 9999px;
  --border-width: 1px;
  --size-item-small: 16px;
  --size-item-large: 32px;
  --csstools-light-dark-toggle--38: var(--csstools-color-scheme--light) #1c1b22;
  --color-canvas: var(--csstools-light-dark-toggle--38, white);
  --background-color-canvas: var(--color-canvas);
  --csstools-light-dark-toggle--39: var(--csstools-color-scheme--light) #f9f9fa;
  --border-color-interactive: var(--csstools-light-dark-toggle--39, #8f8f9d);
  --border-color-interactive-hover: var(--border-color-interactive);
  --border-color-interactive-active: var(--border-color-interactive);
  --focus-outline-offset: 2px;
}

@supports (color: light-dark(red, red)) {
  .toggle-button {
    --color-accent-primary: light-dark(#0060df, #0df);
    --color-accent-primary-hover: light-dark(#0250bb, #80ebff);
    --color-accent-primary-active: light-dark(#054096, #aaf2ff);
    --color-canvas: light-dark(#fff, #1c1b22);
    --border-color-interactive: light-dark(#8f8f9d, #f9f9fa);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .toggle-button * {
    --csstools-light-dark-toggle--35: var(--csstools-color-scheme--light) #0df;
    --color-accent-primary: var(--csstools-light-dark-toggle--35, #0060df);
    --csstools-light-dark-toggle--36: var(--csstools-color-scheme--light) #80ebff;
    --color-accent-primary-hover: var(--csstools-light-dark-toggle--36, #0250bb);
    --csstools-light-dark-toggle--37: var(--csstools-color-scheme--light) #aaf2ff;
    --color-accent-primary-active: var(--csstools-light-dark-toggle--37, #054096);
    --csstools-light-dark-toggle--38: var(--csstools-color-scheme--light) #1c1b22;
    --color-canvas: var(--csstools-light-dark-toggle--38, white);
    --csstools-light-dark-toggle--39: var(--csstools-color-scheme--light) #f9f9fa;
    --border-color-interactive: var(--csstools-light-dark-toggle--39, #8f8f9d);
  }
}

@media (forced-colors: active) {
  .toggle-button {
    --color-accent-primary: ButtonText;
    --color-accent-primary-hover: SelectedItem;
    --color-accent-primary-active: SelectedItem;
    --button-background-color: ButtonFace;
    --border-color-interactive: ButtonText;
    --border-color-interactive-hover: SelectedItem;
    --border-color-interactive-active: ButtonText;
    --color-canvas: ButtonText;
    --background-color-canvas: Canvas;
  }
}

.toggle-button {
  --toggle-background-color: var(--button-background-color);
  --toggle-background-color-hover: var(--button-background-color-hover);
  --toggle-background-color-active: var(--button-background-color-active);
  --toggle-background-color-pressed: var(--color-accent-primary);
  --toggle-background-color-pressed-hover: var(--color-accent-primary-hover);
  --toggle-background-color-pressed-active: var(--color-accent-primary-active);
  --toggle-border-color: var(--border-color-interactive);
  --toggle-border-color-hover: var(--toggle-border-color);
  --toggle-border-color-active: var(--toggle-border-color);
  --toggle-border-radius: var(--border-radius-circle);
  --toggle-border-width: var(--border-width);
  --toggle-height: var(--size-item-small);
  --toggle-width: var(--size-item-large);
  --toggle-dot-background-color: var(--toggle-border-color);
  --toggle-dot-background-color-hover: var(--toggle-dot-background-color);
  --toggle-dot-background-color-active: var(--toggle-dot-background-color);
  --toggle-dot-background-color-on-pressed: var(--background-color-canvas);
  --toggle-dot-margin: 1px;
  --toggle-dot-height: calc(var(--toggle-height) - 2 * var(--toggle-dot-margin) - 2 *
      var(--toggle-border-width));
  --toggle-dot-width: var(--toggle-dot-height);
  --toggle-dot-transform-x: calc(var(--toggle-width) - 4 * var(--toggle-dot-margin) - var(--toggle-dot-width));
  --input-width: var(--toggle-width);
  appearance: none;
  border: var(--toggle-border-width) solid var(--toggle-border-color);
  height: var(--toggle-height);
  width: var(--toggle-width);
  border-radius: var(--toggle-border-radius);
  background-color: var(--toggle-background-color);
  box-sizing: border-box;
  padding: 0;
}

.toggle-button:focus-visible {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}

.toggle-button:enabled:hover {
  background-color: var(--toggle-background-color-hover);
  border-color: var(--toggle-border-color);
}

.toggle-button:enabled:hover:active {
  background-color: var(--toggle-background-color-active);
  border-color: var(--toggle-border-color);
}

.toggle-button:before {
  content: "";
  background-color: var(--toggle-dot-background-color);
  height: var(--toggle-dot-height);
  width: var(--toggle-dot-width);
  margin: var(--toggle-dot-margin);
  border-radius: var(--toggle-border-radius);
  display: block;
  translate: 0;
}

.toggle-button[aria-pressed="true"] {
  background-color: var(--toggle-background-color-pressed);
  border-color: #0000;
}

.toggle-button[aria-pressed="true"]:enabled:hover {
  background-color: var(--toggle-background-color-pressed-hover);
  border-color: #0000;
}

.toggle-button[aria-pressed="true"]:enabled:hover:active {
  background-color: var(--toggle-background-color-pressed-active);
  border-color: #0000;
}

.toggle-button[aria-pressed="true"]:before {
  translate: var(--toggle-dot-transform-x);
  background-color: var(--toggle-dot-background-color-on-pressed);
}

.toggle-button[aria-pressed="true"]:enabled:hover:before, .toggle-button[aria-pressed="true"]:enabled:hover:active:before {
  background-color: var(--toggle-dot-background-color-on-pressed);
}

[dir="rtl"] .toggle-button[aria-pressed="true"]:before {
  translate: calc(-1 * var(--toggle-dot-transform-x));
}

.toggle-button[aria-pressed="true"]:-moz-locale-dir(rtl):before {
  translate: calc(-1 * var(--toggle-dot-transform-x));
}

@media (prefers-reduced-motion: no-preference) {
  .toggle-button:before {
    transition: translate .1s;
  }
}

@media (prefers-contrast) {
  .toggle-button:enabled:hover {
    border-color: var(--toggle-border-color-hover);
  }

  .toggle-button:enabled:hover:active {
    border-color: var(--toggle-border-color-active);
  }

  .toggle-button[aria-pressed="true"]:enabled {
    border-color: var(--toggle-border-color);
    position: relative;
  }

  .toggle-button[aria-pressed="true"]:enabled:hover {
    border-color: var(--toggle-border-color-hover);
  }

  .toggle-button[aria-pressed="true"]:enabled:hover:active {
    background-color: var(--toggle-dot-background-color-active);
    border-color: var(--toggle-dot-background-color-hover);
  }

  .toggle-button:enabled:hover:before, .toggle-button:enabled:hover:active:before {
    background-color: var(--toggle-dot-background-color-hover);
  }
}

@media (forced-colors) {
  .toggle-button {
    --toggle-dot-background-color: var(--color-accent-primary);
    --toggle-dot-background-color-hover: var(--color-accent-primary-hover);
    --toggle-dot-background-color-active: var(--color-accent-primary-active);
    --toggle-dot-background-color-on-pressed: var(--button-background-color);
    --toggle-border-color-hover: var(--border-color-interactive-hover);
    --toggle-border-color-active: var(--border-color-interactive-active);
  }

  .toggle-button[aria-pressed="true"]:enabled:after {
    border: 1px solid var(--button-background-color);
    content: "";
    height: var(--toggle-height);
    width: var(--toggle-width);
    border-radius: var(--toggle-border-radius);
    display: block;
    position: absolute;
    inset: -2px;
  }

  .toggle-button[aria-pressed="true"]:enabled:hover:active:after {
    border-color: var(--toggle-border-color-active);
  }
}

:root {
  --clear-signature-button-icon: url("../media/editor-toolbar-delete.03wunzr0m9rov.svg");
  --csstools-light-dark-toggle--40: var(--csstools-color-scheme--light) #2b2a33;
  --signature-bg: var(--csstools-light-dark-toggle--40, #f9f9fb);
  --csstools-light-dark-toggle--41: var(--csstools-color-scheme--light) var(--signature-bg);
  --signature-hover-bg: var(--csstools-light-dark-toggle--41, #f0f0f4);
  --button-signature-bg: transparent;
  --button-signature-color: var(--main-color);
  --csstools-light-dark-toggle--42: var(--csstools-color-scheme--light) #5b5b66;
  --button-signature-active-bg: var(--csstools-light-dark-toggle--42, #cfcfd8);
  --button-signature-active-border: none;
  --button-signature-active-color: var(--button-signature-color);
  --button-signature-border: none;
  --csstools-light-dark-toggle--43: var(--csstools-color-scheme--light) #52525e;
  --button-signature-hover-bg: var(--csstools-light-dark-toggle--43, #e0e0e6);
  --button-signature-hover-color: var(--button-signature-color);
}

@supports (color: light-dark(red, red)) {
  :root {
    --signature-bg: light-dark(#f9f9fb, #2b2a33);
    --signature-hover-bg: light-dark(#f0f0f4, var(--signature-bg));
    --button-signature-active-bg: light-dark(#cfcfd8, #5b5b66);
    --button-signature-hover-bg: light-dark(#e0e0e6, #52525e);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :root * {
    --csstools-light-dark-toggle--40: var(--csstools-color-scheme--light) #2b2a33;
    --signature-bg: var(--csstools-light-dark-toggle--40, #f9f9fb);
    --csstools-light-dark-toggle--41: var(--csstools-color-scheme--light) var(--signature-bg);
    --signature-hover-bg: var(--csstools-light-dark-toggle--41, #f0f0f4);
    --csstools-light-dark-toggle--42: var(--csstools-color-scheme--light) #5b5b66;
    --button-signature-active-bg: var(--csstools-light-dark-toggle--42, #cfcfd8);
    --csstools-light-dark-toggle--43: var(--csstools-color-scheme--light) #52525e;
    --button-signature-hover-bg: var(--csstools-light-dark-toggle--43, #e0e0e6);
  }
}

@media screen and (forced-colors: active) {
  :root {
    --signature-bg: HighlightText;
    --signature-hover-bg: var(--signature-bg);
    --button-signature-bg: HighlightText;
    --button-signature-color: ButtonText;
    --button-signature-active-bg: ButtonText;
    --button-signature-active-color: HighlightText;
    --button-signature-border: 1px solid ButtonText;
    --button-signature-hover-bg: Highlight;
    --button-signature-hover-color: HighlightText;
  }
}

.signatureDialog {
  --primary-color: var(--text-primary-color);
  --border-color: #8f8f9d;
  --open-link-fg: var(--link-fg-color);
  --open-link-hover-fg: var(--link-hover-fg-color);
}

@media screen and (forced-colors: active) {
  .signatureDialog {
    --primary-color: ButtonText;
    --border-color: ButtonText;
    --open-link-fg: ButtonText;
    --open-link-hover-fg: ButtonText;
  }
}

.signatureDialog {
  width: 570px;
  min-width: 300px;
  max-width: 100%;
  padding: 16px 0;
}

.signatureDialog .mainContainer {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  display: flex;
}

:is(.signatureDialog .mainContainer) span:not([role="sectionhead"]) {
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(.signatureDialog .mainContainer) .title {
  margin-inline-start: 16px;
}

.signatureDialog .inputWithClearButton {
  --button-dimension: 24px;
  --clear-button-icon: url("../media/messageBar_closingButton.15rqkmbgrfbfy.svg");
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

:is(.signatureDialog .inputWithClearButton) > input {
  width: 100%;
  height: 32px;
  padding-inline: 8px calc(4px + var(--button-dimension));
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  border-radius: 4px;
}

:is(.signatureDialog .inputWithClearButton) .clearInputButton {
  width: var(--button-dimension);
  height: var(--button-dimension);
  background-color: var(--input-text-fg-color);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-image: var(--clear-button-icon);
  -webkit-mask-image: var(--clear-button-icon);
  mask-image: var(--clear-button-icon);
  border: 0;
  padding: 0;
  display: inline-block;
  position: absolute;
  inset-block-start: 4px;
  inset-inline-end: 4px;
}

#addSignatureDialog {
  --secondary-color: var(--text-secondary-color);
  --bg-hover: #e0e0e6;
  --tab-top-line-active-color: #0060df;
  --tab-top-line-active-hover-color: var(--tab-text-hover-color);
  --tab-top-line-hover-color: #8f8f9d;
  --tab-top-line-inactive-color: #cfcfd8;
  --tab-bottom-line-active-color: var(--tab-top-line-inactive-color);
  --tab-bottom-line-hover-color: var(--tab-top-line-inactive-color);
  --tab-bottom-line-inactive-color: var(--tab-top-line-inactive-color);
  --tab-bg: var(--dialog-bg-color);
  --tab-bg-active-color: var(--tab-bg);
  --tab-bg-active-hover-color: var(--bg-hover);
  --tab-bg-hover: var(--bg-hover);
  --tab-panel-border: none;
  --tab-panel-border-radius: 4px;
  --tab-text-color: var(--primary-color);
  --tab-text-active-color: var(--tab-top-line-active-color);
  --tab-text-active-hover-color: var(--tab-text-hover-color);
  --tab-text-hover-color: var(--tab-text-color);
  --signature-placeholder-color: var(--secondary-color);
  --signature-draw-placeholder-color: var(--primary-color);
  --signature-color: var(--primary-color);
  --clear-signature-button-border-width: 0;
  --clear-signature-button-border-style: solid;
  --clear-signature-button-border-color: transparent;
  --clear-signature-button-border-disabled-color: transparent;
  --clear-signature-button-color: var(--primary-color);
  --clear-signature-button-hover-color: var(--clear-signature-button-color);
  --clear-signature-button-active-color: var(--clear-signature-button-color);
  --clear-signature-button-disabled-color: var(--clear-signature-button-color);
  --clear-signature-button-focus-color: var(--clear-signature-button-color);
  --clear-signature-button-bg: var(--dialog-bg-color);
  --clear-signature-button-bg-hover: var(--bg-hover);
  --clear-signature-button-bg-active: #cfcfd8;
  --clear-signature-button-bg-focus: #f0f0f4;
  --clear-signature-button-bg-disabled: #f0f0f499;
  --save-warning-color: var(--secondary-color);
  --thickness-bg: var(--dialog-bg-color);
  --thickness-label-color: var(--primary-color);
  --thickness-slider-color: var(--primary-color);
  --thickness-border: none;
  --draw-cursor: url("../media/cursor-editorInk.0w~p4njb_q99n.svg") 0 16, pointer;
}

@media (prefers-color-scheme: dark) {
  #addSignatureDialog {
    --dialog-bg-color: #42414d;
    --bg-hover: #52525e;
    --primary-color: #fbfbfe;
    --secondary-color: #cfcfd8;
    --tab-top-line-active-color: #0df;
    --tab-top-line-inactive-color: #8f8f9d;
    --clear-signature-button-bg-active: #5b5b66;
    --clear-signature-button-bg-focus: #2b2a33;
    --clear-signature-button-bg-disabled: #2b2a3399;
  }
}

@media screen and (forced-colors: active) {
  #addSignatureDialog {
    --secondary-color: ButtonText;
    --bg: HighlightText;
    --bg-hover: var(--bg);
    --tab-top-line-active-color: ButtonText;
    --tab-top-line-active-hover-color: HighlightText;
    --tab-top-line-hover-color: SelectedItem;
    --tab-top-line-inactive-color: ButtonText;
    --tab-bottom-line-active-color: var(--tab-top-line-active-color);
    --tab-bottom-line-hover-color: var(--tab-top-line-hover-color);
    --tab-bg: var(--bg);
    --tab-bg-active-color: SelectedItem;
    --tab-bg-active-hover-color: SelectedItem;
    --tab-panel-border: 1px solid ButtonText;
    --tab-panel-border-radius: 8px;
    --tab-text-color: ButtonText;
    --tab-text-active-color: HighlightText;
    --tab-text-active-hover-color: HighlightText;
    --tab-text-hover-color: SelectedItem;
    --signature-color: ButtonText;
    --clear-signature-button-border-width: 1px;
    --clear-signature-button-border-style: solid;
    --clear-signature-button-border-color: ButtonText;
    --clear-signature-button-border-disabled-color: GrayText;
    --clear-signature-button-color: ButtonText;
    --clear-signature-button-hover-color: HighlightText;
    --clear-signature-button-active-color: SelectedItem;
    --clear-signature-button-focus-color: CanvasText;
    --clear-signature-button-disabled-color: GrayText;
    --clear-signature-button-bg: var(--bg);
    --clear-signature-button-bg-hover: SelectedItem;
    --clear-signature-button-bg-active: var(--bg);
    --clear-signature-button-bg-focus: var(--bg);
    --clear-signature-button-bg-disabled: var(--bg);
    --thickness-bg: Canvas;
    --thickness-label-color: CanvasText;
    --thickness-slider-color: ButtonText;
    --thickness-border: 1px solid var(--border-color);
  }
}

#addSignatureDialog #addSignatureDialogLabel {
  width: 0;
  height: 0;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

#addSignatureDialog.waiting:after {
  content: "";
  cursor: wait;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

:is(#addSignatureDialog .mainContainer) [role="tablist"] {
  align-items: flex-start;
  gap: 0;
  width: 100%;
  display: flex;
}

:is(:is(#addSignatureDialog .mainContainer) [role="tablist"]) > [role="tab"] {
  background-color: var(--tab-bg);
  cursor: default;
  border-block-style: solid;
  border-block-width: 1px;
  border-inline: 0;
  border-block-start-color: var(--tab-top-line-inactive-color);
  border-block-end-color: var(--tab-bottom-line-inactive-color);
  font: menu;
  color: var(--tab-text-color);
  border-radius: 0;
  flex: 1 0 0;
  align-self: stretch;
  padding-inline: 0;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(:is(:is(#addSignatureDialog .mainContainer) [role="tablist"]) > [role="tab"]):hover {
  border-block-start-width: 2px;
  border-block-start-color: var(--tab-top-line-hover-color);
  border-block-end-color: var(--tab-bottom-line-hover-color);
  background-color: var(--tab-bg-hover);
  color: var(--tab-text-hover-color);
}

:is(:is(:is(#addSignatureDialog .mainContainer) [role="tablist"]) > [role="tab"]):focus-visible {
  outline: 2px solid var(--tab-top-line-active-color);
  outline-offset: -2px;
}

[aria-selected="true"]:is(:is(:is(#addSignatureDialog .mainContainer) [role="tablist"]) > [role="tab"]) {
  border-block-start-width: 2px;
  border-block-start-color: var(--tab-top-line-active-color);
  border-block-end-color: var(--tab-bottom-line-active-color);
  background-color: var(--tab-bg-active-color);
  color: var(--tab-text-active-color);
  font-weight: 590;
}

[aria-selected="true"]:is(:is(:is(#addSignatureDialog .mainContainer) [role="tablist"]) > [role="tab"]):hover {
  border-block-start-color: var(--tab-top-line-active-hover-color);
  background-color: var(--tab-bg-active-hover-color);
  color: var(--tab-text-active-hover-color);
}

:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer {
  box-sizing: border-box;
  flex-direction: column;
  align-self: stretch;
  align-items: flex-end;
  gap: 12px;
  width: 100%;
  height: auto;
  padding-inline: 16px;
  display: flex;
}

:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"] {
  background-color: var(--signature-bg);
  border: var(--tab-panel-border);
  border-radius: var(--tab-panel-border-radius);
  width: 100%;
  height: 220px;
  position: relative;
}

:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) > svg {
  background-color: #0000;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

#addSignatureTypeContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) {
  display: none;
}

#addSignatureTypeContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureTypeInput {
  text-align: center;
  width: 100%;
  height: 100%;
  color: var(--signature-color);
  border-radius: var(--tab-panel-border-radius);
  background-color: #0000;
  border: 0;
  padding: 0;
  font-family: Brush script, Apple Chancery, Segoe script, Freestyle Script, Palace Script MT, Brush Script MT, TK, cursive, serif;
  font-size: 44px;
  font-style: italic;
  font-weight: 400;
  position: absolute;
  inset: 0;
}

:is(#addSignatureTypeContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureTypeInput)::-moz-placeholder {
  color: var(--signature-placeholder-color);
  text-align: center;
  font: menu;
  font-size: 44px;
  font-style: normal;
  font-weight: 274;
  line-height: normal;
}

:is(#addSignatureTypeContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureTypeInput)::placeholder {
  color: var(--signature-placeholder-color);
  text-align: center;
  font: menu;
  font-size: 44px;
  font-style: normal;
  font-weight: 274;
  line-height: normal;
}

#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) {
  display: none;
}

#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) > span {
  width: 100%;
  height: 100%;
  color: var(--signature-placeholder-color);
  -webkit-user-select: none;
  user-select: none;
  background-color: #0000;
  justify-content: center;
  align-items: center;
  display: grid;
  position: absolute;
  top: 0;
  left: 0;
}

#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) > svg {
  stroke: var(--signature-color);
  fill: none;
  stroke-opacity: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) > svg):hover {
  cursor: var(--draw-cursor);
}

#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness {
  pointer-events: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: grid;
  position: absolute;
  inset-block-end: 0;
}

:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > span {
  color: var(--signature-draw-placeholder-color);
}

:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div {
  background-color: var(--thickness-bg);
  border-inline: var(--thickness-border);
  border-top: var(--thickness-border);
  pointer-events: auto;
  border-radius: 4px 4px 0 0;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 6px 8px 7px;
  display: flex;
  position: relative;
  top: 1px;
}

:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > label {
  color: var(--thickness-label-color);
}

:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input {
  background-color: #0000;
  width: 100px;
  height: 14px;
}

:is(:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input)::-webkit-slider-runnable-track {
  background-color: var(--thickness-slider-color);
}

:is(:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input)::-moz-range-track {
  background-color: var(--thickness-slider-color);
}

:is(:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input)::-moz-range-progress {
  background-color: var(--thickness-slider-color);
}

:is(:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input)::-webkit-slider-thumb {
  background-color: var(--thickness-bg);
}

:is(:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input)::-moz-range-thumb {
  background-color: var(--thickness-bg);
}

:is(:is(#addSignatureDrawContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #thickness) > div) > input {
  color: var(--signature-color);
  border: 0;
  border-radius: 4.5px;
}

#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) {
  display: none;
}

#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) > svg {
  stroke: none;
  stroke-width: 0;
  fill: var(--signature-color);
  fill-opacity: 1;
}

#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureImagePlaceholder {
  background-color: #0000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}

:is(#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureImagePlaceholder) span {
  color: var(--signature-placeholder-color);
}

:is(#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureImagePlaceholder) a {
  color: var(--open-link-fg);
  cursor: pointer;
  text-decoration: underline;
}

:is(:is(#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureImagePlaceholder) a):hover {
  color: var(--open-link-hover-fg);
}

#addSignatureImageContainer:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > [role="tabpanel"]) #addSignatureFilePicker {
  visibility: hidden;
  width: 0;
  height: 0;
  position: relative;
}

[data-selected="type"]:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > #addSignatureTypeContainer, [data-selected="draw"]:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > #addSignatureDrawContainer, [data-selected="image"]:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) > #addSignatureImageContainer {
  display: block;
}

:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls {
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer {
  align-self: stretch;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #addSignatureDescriptionContainer {
  flex-direction: column;
  flex: 1 0 0;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #addSignatureDescriptionContainer):has(input:disabled) > label {
  opacity: .4;
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #addSignatureDescriptionContainer) > label {
  width: auto;
}

:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton {
  background-color: var(--clear-signature-button-bg);
  border-width: var(--clear-signature-button-border-width);
  border-style: var(--clear-signature-button-border-style);
  border-color: var(--clear-signature-button-border-color);
  border-radius: 4px;
  align-items: center;
  height: 32px;
  padding: 4px 8px;
  display: flex;
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton) > span {
  height: 24px;
  color: var(--clear-signature-button-color);
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
  display: flex;
}

:is(:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton) > span):after {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--clear-signature-button-icon);
  -webkit-mask-image: var(--clear-signature-button-icon);
  mask-image: var(--clear-signature-button-icon);
  background-color: var(--clear-signature-button-color);
  flex-shrink: 0;
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):hover {
  background-color: var(--clear-signature-button-bg-hover);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):hover > span {
  color: var(--clear-signature-button-hover-color);
}

:is(:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):hover > span):after {
  background-color: var(--clear-signature-button-hover-color);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):active {
  background-color: var(--clear-signature-button-bg-active);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):active > span {
  color: var(--clear-signature-button-active-color);
}

:is(:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):active > span):after {
  background-color: var(--clear-signature-button-active-color);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):focus-visible {
  background-color: var(--clear-signature-button-bg-focus);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):focus-visible > span {
  color: var(--clear-signature-button-focus-color);
}

:is(:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):focus-visible > span):after {
  background-color: var(--clear-signature-button-focus-color);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):disabled {
  background-color: var(--clear-signature-button-bg-disabled);
  border-color: var(--clear-signature-button-border-disabled-color);
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):disabled > span {
  color: var(--clear-signature-button-disabled-color);
}

:is(:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #horizontalContainer) #clearSignatureButton):disabled > span):after {
  background-color: var(--clear-signature-button-disabled-color);
}

:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer {
  grid-template-columns: max-content auto;
  gap: 4px;
  width: 100%;
  display: grid;
}

:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer) > input {
  margin: 0;
}

:is(:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer) > input):disabled + label {
  opacity: .4;
}

:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer) > label {
  -webkit-user-select: none;
  user-select: none;
}

:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer):not(.fullStorage) #addSignatureSaveWarning {
  display: none;
}

.fullStorage:is(:is(:is(:is(#addSignatureDialog .mainContainer) #addSignatureActionContainer) #addSignatureControls) #addSignatureSaveContainer) #addSignatureSaveWarning {
  opacity: 1;
  color: var(--save-warning-color);
  font-size: 11px;
  display: block;
}

#editSignatureDescriptionDialog .mainContainer {
  box-sizing: border-box;
  padding-inline: 16px;
}

:is(#editSignatureDescriptionDialog .mainContainer) .title {
  margin-inline-start: 0;
}

:is(#editSignatureDescriptionDialog .mainContainer) #editSignatureDescriptionAndView {
  justify-content: flex-end;
  align-self: stretch;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  display: flex;
}

:is(:is(#editSignatureDescriptionDialog .mainContainer) #editSignatureDescriptionAndView) #editSignatureDescriptionContainer {
  flex-direction: column;
  flex: auto;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}

:is(:is(#editSignatureDescriptionDialog .mainContainer) #editSignatureDescriptionAndView) > svg {
  background-color: var(--signature-bg);
  width: 210px;
  height: 180px;
  padding: 8px;
}

:is(:is(:is(#editSignatureDescriptionDialog .mainContainer) #editSignatureDescriptionAndView) > svg) > path {
  stroke: var(--button-signature-color);
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  vector-effect: non-scaling-stroke;
  fill: none;
}

.contours:is(:is(:is(:is(#editSignatureDescriptionDialog .mainContainer) #editSignatureDescriptionAndView) > svg) > path) {
  fill: var(--button-signature-color);
  stroke-width: .5px;
}

#editorSignatureParamsToolbar {
  padding: 8px;
}

#editorSignatureParamsToolbar #addSignatureDoorHanger {
  gap: 8px;
  padding: 2px;
}

:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer {
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  gap: 8px;
  height: 32px;
  display: flex;
}

:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button {
  border: var(--button-signature-border);
  background-color: var(--button-signature-bg);
  color: var(--button-signature-color);
  border-radius: 4px;
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button):hover {
  background-color: var(--button-signature-hover-bg);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button):active {
  border: var(--button-signature-active-border);
  background-color: var(--button-signature-active-bg);
  color: var(--button-signature-active-color);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button):active:before {
  background-color: var(--button-signature-active-color);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button):focus-visible {
  outline: var(--focus-ring-outline);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) button):focus-visible:before {
  background-color: var(--button-signature-color);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .deleteButton):before {
  -webkit-mask-image: var(--clear-signature-button-icon);
  -webkit-mask-image: var(--clear-signature-button-icon);
  mask-image: var(--clear-signature-button-icon);
}

:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton {
  width: calc(.8 * var(--editor-toolbar-min-width));
  height: 100%;
  min-height: var(--menuitem-height);
  aspect-ratio: unset;
  box-sizing: border-box;
  font: message-box;
  text-align: start;
  white-space: normal;
  cursor: default;
  border-radius: 4px;
  outline: none;
  flex: auto;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  padding: 0;
  display: flex;
  position: relative;
  overflow: hidden;
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton) > svg {
  aspect-ratio: 1;
  background-color: var(--signature-bg);
  box-sizing: border-box;
  border: none;
  border-radius: 4px;
  flex: none;
  height: 100%;
  padding: 4px;
  display: inline-block;
}

:is(:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton) > svg) > path {
  stroke: var(--button-signature-color);
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  vector-effect: non-scaling-stroke;
  fill: none;
}

.contours:is(:is(:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton) > svg) > path) {
  fill: var(--button-signature-color);
  stroke-width: .5px;
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton):is(:hover, :active) > svg {
  background-color: var(--signature-hover-bg);
  border-radius: 4px 0 0 4px;
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton):hover > span {
  color: var(--button-signature-hover-color);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton):active {
  background-color: var(--button-signature-active-bg);
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton):is([disabled="disabled"], [disabled]) {
  opacity: .5;
  pointer-events: none;
}

:is(:is(:is(#editorSignatureParamsToolbar #addSignatureDoorHanger) .toolbarAddSignatureButtonContainer) .toolbarAddSignatureButton) > span {
  text-overflow: ellipsis;
  white-space: nowrap;
  height: auto;
  font: menu;
  flex: auto;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  overflow: hidden;
}

.editDescription.altText {
  --alt-text-add-image: url("../media/editor-toolbar-edit.0hg-w4v6gf5-d.svg") !important;
}

.editDescription.altText:before {
  width: 16px !important;
  height: 16px !important;
}

.commentPopup, #commentManagerDialog {
  box-sizing: border-box;
  border-radius: 8px;
  width: 360px;
  min-width: 200px;
  max-width: 100%;
  margin-top: 0;
  margin-left: 0;
  padding: 8px 16px 16px;
  position: absolute;
}

#commentManagerDialog {
  --comment-close-button-icon: url("../media/comment-closeButton.09x_diuuox8.p.svg");
}

#commentManagerDialog .mainContainer {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  width: 100%;
  height: auto;
  display: flex;
}

:is(#commentManagerDialog .mainContainer) #commentManagerToolbar {
  cursor: move;
  justify-content: flex-start;
  align-self: stretch;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  height: 32px;
  display: flex;
}

:is(#commentManagerDialog .mainContainer) #commentManagerTextInput {
  width: 100%;
  min-height: 132px;
  margin-bottom: 12px;
}

.annotationLayer.disabled .annotationCommentButton {
  display: none;
}

:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light dark;
  --csstools-light-dark-toggle--44: var(--csstools-color-scheme--light) #1c1b22;
  --comment-button-bg: var(--csstools-light-dark-toggle--44, white);
  --csstools-light-dark-toggle--45: var(--csstools-color-scheme--light) #fbfbfe;
  --comment-button-fg: var(--csstools-light-dark-toggle--45, #5b5b66);
  --csstools-light-dark-toggle--46: var(--csstools-color-scheme--light) #a6ecf4;
  --comment-button-active-bg: var(--csstools-light-dark-toggle--46, #0041a4);
  --csstools-light-dark-toggle--47: var(--csstools-color-scheme--light) #15141a;
  --comment-button-active-fg: var(--csstools-light-dark-toggle--47, white);
  --csstools-light-dark-toggle--48: var(--csstools-color-scheme--light) #61dce9;
  --comment-button-hover-bg: var(--csstools-light-dark-toggle--48, #0053cb);
  --csstools-light-dark-toggle--49: var(--csstools-color-scheme--light) #15141a;
  --comment-button-hover-fg: var(--csstools-light-dark-toggle--49, white);
  --csstools-light-dark-toggle--50: var(--csstools-color-scheme--light) #00cadb;
  --comment-button-selected-bg: var(--csstools-light-dark-toggle--50, #0062fa);
  --csstools-light-dark-toggle--51: var(--csstools-color-scheme--light) #bfbfc9;
  --comment-button-border-color: var(--csstools-light-dark-toggle--51, #8f8f9d);
  --comment-button-active-border-color: var(--comment-button-active-bg);
  --csstools-light-dark-toggle--52: var(--csstools-color-scheme--light) #3a3944;
  --comment-button-focus-border-color: var(--csstools-light-dark-toggle--52, #cfcfd8);
  --comment-button-hover-border-color: var(--comment-button-hover-bg);
  --comment-button-selected-border-color: var(--comment-button-selected-bg);
  --csstools-light-dark-toggle--53: var(--csstools-color-scheme--light) #15141a;
  --comment-button-selected-fg: var(--csstools-light-dark-toggle--53, white);
  --comment-button-dim: 24px;
  --csstools-light-dark-toggle--54: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--55: var(--csstools-color-scheme--light) #0006;
  --comment-button-box-shadow: 0 .25px .75px 0 var(--csstools-light-dark-toggle--54, #0000000d), 0 2px 6px 0 var(--csstools-light-dark-toggle--55, #0000001a);
  --csstools-light-dark-toggle--56: var(--csstools-color-scheme--light) #00cadb;
  --comment-button-focus-outline-color: var(--csstools-light-dark-toggle--56, #0062fa);
}

@media (prefers-color-scheme: dark) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
  }
}

@supports (color: light-dark(red, red)) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --comment-button-bg: light-dark(#fff, #1c1b22);
    --comment-button-fg: light-dark(#5b5b66, #fbfbfe);
    --comment-button-active-bg: light-dark(#0041a4, #a6ecf4);
    --comment-button-active-fg: light-dark(#fff, #15141a);
    --comment-button-hover-bg: light-dark(#0053cb, #61dce9);
    --comment-button-hover-fg: light-dark(#fff, #15141a);
    --comment-button-selected-bg: light-dark(#0062fa, #00cadb);
    --comment-button-border-color: light-dark(#8f8f9d, #bfbfc9);
    --comment-button-focus-border-color: light-dark(#cfcfd8, #3a3944);
    --comment-button-selected-fg: light-dark(#fff, #15141a);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --comment-button-box-shadow: 0 .25px .75px 0 light-dark(#0000000d, #0003), 0 2px 6px 0 light-dark(#0000001a, #0006);
  }
}

@supports (color: light-dark(red, red)) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --comment-button-focus-outline-color: light-dark(#0062fa, #00cadb);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton) * {
    --csstools-light-dark-toggle--44: var(--csstools-color-scheme--light) #1c1b22;
    --comment-button-bg: var(--csstools-light-dark-toggle--44, white);
    --csstools-light-dark-toggle--45: var(--csstools-color-scheme--light) #fbfbfe;
    --comment-button-fg: var(--csstools-light-dark-toggle--45, #5b5b66);
    --csstools-light-dark-toggle--46: var(--csstools-color-scheme--light) #a6ecf4;
    --comment-button-active-bg: var(--csstools-light-dark-toggle--46, #0041a4);
    --csstools-light-dark-toggle--47: var(--csstools-color-scheme--light) #15141a;
    --comment-button-active-fg: var(--csstools-light-dark-toggle--47, white);
    --csstools-light-dark-toggle--48: var(--csstools-color-scheme--light) #61dce9;
    --comment-button-hover-bg: var(--csstools-light-dark-toggle--48, #0053cb);
    --csstools-light-dark-toggle--49: var(--csstools-color-scheme--light) #15141a;
    --comment-button-hover-fg: var(--csstools-light-dark-toggle--49, white);
    --csstools-light-dark-toggle--50: var(--csstools-color-scheme--light) #00cadb;
    --comment-button-selected-bg: var(--csstools-light-dark-toggle--50, #0062fa);
    --csstools-light-dark-toggle--51: var(--csstools-color-scheme--light) #bfbfc9;
    --comment-button-border-color: var(--csstools-light-dark-toggle--51, #8f8f9d);
    --csstools-light-dark-toggle--52: var(--csstools-color-scheme--light) #3a3944;
    --comment-button-focus-border-color: var(--csstools-light-dark-toggle--52, #cfcfd8);
    --csstools-light-dark-toggle--53: var(--csstools-color-scheme--light) #15141a;
    --comment-button-selected-fg: var(--csstools-light-dark-toggle--53, white);
    --csstools-light-dark-toggle--54: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--55: var(--csstools-color-scheme--light) #0006;
    --comment-button-box-shadow: 0 .25px .75px 0 var(--csstools-light-dark-toggle--54, #0000000d), 0 2px 6px 0 var(--csstools-light-dark-toggle--55, #0000001a);
    --csstools-light-dark-toggle--56: var(--csstools-color-scheme--light) #00cadb;
    --comment-button-focus-outline-color: var(--csstools-light-dark-toggle--56, #0062fa);
  }
}

@media (prefers-color-scheme: dark) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --csstools-color-scheme--light: ;
  }
}

@media screen and (forced-colors: active) {
  :is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
    --comment-button-bg: ButtonFace;
    --comment-button-fg: ButtonText;
    --comment-button-hover-bg: SelectedItemText;
    --comment-button-hover-fg: SelectedItem;
    --comment-button-active-bg: SelectedItemText;
    --comment-button-active-fg: SelectedItem;
    --comment-button-border-color: ButtonBorder;
    --comment-button-active-border-color: ButtonBorder;
    --comment-button-hover-border-color: SelectedItem;
    --comment-button-box-shadow: none;
    --comment-button-focus-outline-color: CanvasText;
    --comment-button-selected-bg: ButtonBorder;
    --comment-button-selected-fg: ButtonFace;
  }
}

:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton {
  width: var(--comment-button-dim);
  height: var(--comment-button-dim);
  background-color: var(--comment-button-bg);
  border: 1px solid var(--comment-button-border-color);
  box-shadow: var(--comment-button-box-shadow);
  cursor: auto;
  z-index: 1;
  box-sizing: border-box;
  pointer-events: auto;
  border-radius: 6px 6px 6px 0;
  margin: 0;
  padding: 4px;
  position: absolute;
}

[dir="rtl"] :is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton) {
  border-radius: 6px 6px 0;
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):before {
  content: "";
  width: 100%;
  height: 100%;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--comment-edit-button-icon);
  -webkit-mask-image: var(--comment-edit-button-icon);
  mask-image: var(--comment-edit-button-icon);
  background-color: var(--comment-button-fg);
  transform: scaleX(var(--dir-factor));
  margin: 0;
  padding: 0;
  display: inline-block;
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):focus-visible {
  outline: 2px solid var(--comment-button-focus-outline-color);
  outline-offset: 1px;
  border-color: var(--comment-button-focus-border-color);
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):hover {
  border-color: var(--comment-button-hover-border-color);
  background-color: var(--comment-button-hover-bg) !important;
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):hover:before {
  background-color: var(--comment-button-hover-fg);
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):active {
  border-color: var(--comment-button-active-border-color);
  background-color: var(--comment-button-active-bg) !important;
}

:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):active:before {
  background-color: var(--comment-button-active-fg);
}

.selected:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton) {
  border-color: var(--comment-button-selected-border-color);
  background-color: var(--comment-button-selected-bg) !important;
}

.selected:is(:is(.annotationLayer, .annotationEditorLayer) .annotationCommentButton):before {
  background-color: var(--comment-button-selected-fg);
}

#editorCommentsSidebar, .commentPopup {
  --comment-close-button-icon: url("../media/comment-closeButton.09x_diuuox8.p.svg");
  --comment-popup-edit-button-icon: url("../media/comment-popup-editButton.0ncym9lg9cwyw.svg");
  --comment-popup-delete-button-icon: url("../media/editor-toolbar-delete.03wunzr0m9rov.svg");
  --csstools-light-dark-toggle--57: var(--csstools-color-scheme--light) #fbfbfeb0;
  --comment-date-fg-color: var(--csstools-light-dark-toggle--57, #15141ab0);
  --csstools-light-dark-toggle--58: var(--csstools-color-scheme--light) #1c1b22;
  --comment-bg-color: var(--csstools-light-dark-toggle--58, #f9f9fb);
  --csstools-light-dark-toggle--59: var(--csstools-color-scheme--light) #2c2b33;
  --comment-hover-bg-color: var(--csstools-light-dark-toggle--59, #e0e0e6);
  --csstools-light-dark-toggle--60: var(--csstools-color-scheme--light) #3a3944;
  --comment-active-bg-color: var(--csstools-light-dark-toggle--60, #d1d1d9);
  --comment-hover-brightness: .89;
  --comment-hover-filter: brightness(var(--comment-hover-brightness));
  --comment-active-brightness: .825;
  --comment-active-filter: brightness(var(--comment-active-brightness));
  --csstools-light-dark-toggle--61: var(--csstools-color-scheme--light) #52525e;
  --comment-border-color: var(--csstools-light-dark-toggle--61, #f0f0f4);
  --csstools-light-dark-toggle--62: var(--csstools-color-scheme--light) #00cadb;
  --comment-focus-outline-color: var(--csstools-light-dark-toggle--62, #0062fa);
  --csstools-light-dark-toggle--63: var(--csstools-color-scheme--light) #fbfbfe;
  --comment-fg-color: var(--csstools-light-dark-toggle--63, #15141a);
  --csstools-light-dark-toggle--64: var(--csstools-color-scheme--light) #00317e;
  --comment-count-bg-color: var(--csstools-light-dark-toggle--64, #e2f7ff);
  --csstools-light-dark-toggle--65: var(--csstools-color-scheme--light) #a6ecf4;
  --comment-indicator-active-fg-color: var(--csstools-light-dark-toggle--65, #0041a4);
  --comment-indicator-active-filter: brightness(calc(1 / var(--comment-active-brightness)));
  --csstools-light-dark-toggle--66: var(--csstools-color-scheme--light) #fbfbfe;
  --comment-indicator-focus-fg-color: var(--csstools-light-dark-toggle--66, #5b5b66);
  --csstools-light-dark-toggle--67: var(--csstools-color-scheme--light) #61dce9;
  --comment-indicator-hover-fg-color: var(--csstools-light-dark-toggle--67, #0053cb);
  --comment-indicator-hover-filter: brightness(calc(1 / var(--comment-hover-brightness)));
  --csstools-light-dark-toggle--68: var(--csstools-color-scheme--light) #00cadb;
  --comment-indicator-selected-fg-color: var(--csstools-light-dark-toggle--68, #0062fa);
  --button-comment-bg: transparent;
  --button-comment-color: var(--main-color);
  --csstools-light-dark-toggle--69: var(--csstools-color-scheme--light) #5b5b66;
  --button-comment-active-bg: var(--csstools-light-dark-toggle--69, #cfcfd8);
  --button-comment-active-border: none;
  --button-comment-active-color: var(--button-comment-color);
  --button-comment-border: none;
  --csstools-light-dark-toggle--70: var(--csstools-color-scheme--light) #52525e;
  --button-comment-hover-bg: var(--csstools-light-dark-toggle--70, #e0e0e6);
  --button-comment-hover-color: var(--button-comment-color);
  --csstools-light-dark-toggle--71: var(--csstools-color-scheme--light) #0df;
  --link-fg-color: var(--csstools-light-dark-toggle--71, #0060df);
  --csstools-light-dark-toggle--72: var(--csstools-color-scheme--light) #80ebff;
  --link-hover-fg-color: var(--csstools-light-dark-toggle--72, #0250bb);
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #editorCommentsSidebar, .commentPopup {
    --comment-date-fg-color: light-dark(#15141ab0, #fbfbfeb0);
  }
}

@supports (color: light-dark(red, red)) {
  #editorCommentsSidebar, .commentPopup {
    --comment-bg-color: light-dark(#f9f9fb, #1c1b22);
    --comment-hover-bg-color: light-dark(#e0e0e6, #2c2b33);
    --comment-active-bg-color: light-dark(#d1d1d9, #3a3944);
    --comment-border-color: light-dark(#f0f0f4, #52525e);
    --comment-focus-outline-color: light-dark(#0062fa, #00cadb);
    --comment-fg-color: light-dark(#15141a, #fbfbfe);
    --comment-count-bg-color: light-dark(#e2f7ff, #00317e);
    --comment-indicator-active-fg-color: light-dark(#0041a4, #a6ecf4);
    --comment-indicator-focus-fg-color: light-dark(#5b5b66, #fbfbfe);
    --comment-indicator-hover-fg-color: light-dark(#0053cb, #61dce9);
    --comment-indicator-selected-fg-color: light-dark(#0062fa, #00cadb);
    --button-comment-active-bg: light-dark(#cfcfd8, #5b5b66);
    --button-comment-hover-bg: light-dark(#e0e0e6, #52525e);
    --link-fg-color: light-dark(#0060df, #0df);
    --link-hover-fg-color: light-dark(#0250bb, #80ebff);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(#editorCommentsSidebar, .commentPopup) * {
    --csstools-light-dark-toggle--57: var(--csstools-color-scheme--light) #fbfbfeb0;
    --comment-date-fg-color: var(--csstools-light-dark-toggle--57, #15141ab0);
    --csstools-light-dark-toggle--58: var(--csstools-color-scheme--light) #1c1b22;
    --comment-bg-color: var(--csstools-light-dark-toggle--58, #f9f9fb);
    --csstools-light-dark-toggle--59: var(--csstools-color-scheme--light) #2c2b33;
    --comment-hover-bg-color: var(--csstools-light-dark-toggle--59, #e0e0e6);
    --csstools-light-dark-toggle--60: var(--csstools-color-scheme--light) #3a3944;
    --comment-active-bg-color: var(--csstools-light-dark-toggle--60, #d1d1d9);
    --csstools-light-dark-toggle--61: var(--csstools-color-scheme--light) #52525e;
    --comment-border-color: var(--csstools-light-dark-toggle--61, #f0f0f4);
    --csstools-light-dark-toggle--62: var(--csstools-color-scheme--light) #00cadb;
    --comment-focus-outline-color: var(--csstools-light-dark-toggle--62, #0062fa);
    --csstools-light-dark-toggle--63: var(--csstools-color-scheme--light) #fbfbfe;
    --comment-fg-color: var(--csstools-light-dark-toggle--63, #15141a);
    --csstools-light-dark-toggle--64: var(--csstools-color-scheme--light) #00317e;
    --comment-count-bg-color: var(--csstools-light-dark-toggle--64, #e2f7ff);
    --csstools-light-dark-toggle--65: var(--csstools-color-scheme--light) #a6ecf4;
    --comment-indicator-active-fg-color: var(--csstools-light-dark-toggle--65, #0041a4);
    --csstools-light-dark-toggle--66: var(--csstools-color-scheme--light) #fbfbfe;
    --comment-indicator-focus-fg-color: var(--csstools-light-dark-toggle--66, #5b5b66);
    --csstools-light-dark-toggle--67: var(--csstools-color-scheme--light) #61dce9;
    --comment-indicator-hover-fg-color: var(--csstools-light-dark-toggle--67, #0053cb);
    --csstools-light-dark-toggle--68: var(--csstools-color-scheme--light) #00cadb;
    --comment-indicator-selected-fg-color: var(--csstools-light-dark-toggle--68, #0062fa);
    --csstools-light-dark-toggle--69: var(--csstools-color-scheme--light) #5b5b66;
    --button-comment-active-bg: var(--csstools-light-dark-toggle--69, #cfcfd8);
    --csstools-light-dark-toggle--70: var(--csstools-color-scheme--light) #52525e;
    --button-comment-hover-bg: var(--csstools-light-dark-toggle--70, #e0e0e6);
    --csstools-light-dark-toggle--71: var(--csstools-color-scheme--light) #0df;
    --link-fg-color: var(--csstools-light-dark-toggle--71, #0060df);
    --csstools-light-dark-toggle--72: var(--csstools-color-scheme--light) #80ebff;
    --link-hover-fg-color: var(--csstools-light-dark-toggle--72, #0250bb);
  }
}

@media screen and (forced-colors: active) {
  #editorCommentsSidebar, .commentPopup {
    --comment-date-fg-color: CanvasText;
    --comment-bg-color: Canvas;
    --comment-hover-bg-color: Canvas;
    --comment-hover-filter: none;
    --comment-active-bg-color: Canvas;
    --comment-active-filter: none;
    --comment-border-color: CanvasText;
    --comment-fg-color: CanvasText;
    --comment-count-bg-color: Canvas;
    --comment-indicator-active-fg-color: SelectedItem;
    --comment-indicator-focus-fg-color: CanvasText;
    --comment-indicator-hover-fg-color: CanvasText;
    --comment-indicator-selected-fg-color: SelectedItem;
    --button-comment-bg: ButtonFace;
    --button-comment-color: ButtonText;
    --button-comment-active-bg: Highlight;
    --button-comment-active-color: HighlightText;
    --button-comment-border: 1px solid ButtonText;
    --button-comment-hover-bg: Highlight;
    --button-comment-hover-color: HighlightText;
    --link-fg-color: LinkText;
    --link-hover-fg-color: LinkText;
  }
}

#editorCommentsSidebar {
  flex-direction: column;
  align-items: flex-start;
  height: auto;
  padding-bottom: 16px;
  display: flex;
  overflow-y: visible;
}

#editorCommentsSidebar #editorCommentsSidebarHeader {
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 16px;
  display: flex;
}

:is(#editorCommentsSidebar #editorCommentsSidebarHeader) .commentCount {
  -webkit-user-select: none;
  user-select: none;
  align-items: baseline;
  gap: 6px;
  display: flex;
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) .commentCount) #editorCommentsSidebarTitle {
  font: menu;
  color: var(--comment-fg-color);
  font-size: 17px;
  font-style: normal;
  font-weight: 590;
  line-height: normal;
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) .commentCount) #editorCommentsSidebarCount {
  background-color: var(--comment-count-bg-color);
  color: var(--comment-fg-color);
  text-align: center;
  font: menu;
  border-radius: 4px;
  padding: 0 4px;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton {
  border: var(--button-comment-border);
  background-color: var(--button-comment-bg);
  cursor: pointer;
  border-radius: 4px;
  width: 32px;
  height: 32px;
  padding: 8px;
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):before {
  content: "";
  width: 100%;
  height: 100%;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--comment-close-button-icon);
  -webkit-mask-image: var(--comment-close-button-icon);
  mask-image: var(--comment-close-button-icon);
  background-color: var(--button-comment-color);
  display: inline-block;
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):hover {
  background-color: var(--button-comment-hover-bg);
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):hover:before {
  background-color: var(--button-comment-hover-color);
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):active {
  border: var(--button-comment-active-border);
  background-color: var(--button-comment-active-bg);
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):active:before {
  background-color: var(--button-comment-active-color);
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton):focus-visible {
  outline: var(--focus-ring-outline);
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarHeader) #editorCommentsSidebarCloseButton) > span {
  width: 0;
  height: 0;
  display: inline-block;
  overflow: hidden;
}

#editorCommentsSidebar #editorCommentsSidebarListContainer {
  width: 100%;
  overflow: auto;
}

:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList {
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  width: auto;
  padding: 4px 16px;
  list-style-type: none;
  display: flex;
}

:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment {
  border: .5px solid var(--comment-border-color);
  background-color: var(--comment-bg-color);
  border-radius: 8px;
  flex-direction: column;
  align-self: stretch;
  align-items: flex-start;
  gap: 4px;
  width: auto;
  padding: 8px 16px 16px;
  display: flex;
}

@media screen and (forced-colors: active) {
  :is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):hover {
    background-color: var(--comment-hover-bg-color);
  }
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):hover {
  filter: var(--comment-hover-filter);
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):hover time:after {
  background-color: var(--comment-indicator-hover-fg-color);
  filter: var(--comment-indicator-hover-filter);
  display: inline-block;
}

@media screen and (forced-colors: active) {
  :is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):active {
    background-color: var(--comment-active-bg-color);
  }
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):active {
  filter: var(--comment-active-filter);
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):active time:after {
  background-color: var(--comment-indicator-active-fg-color);
  filter: var(--comment-indicator-active-filter);
  display: inline-block;
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):is(:focus, :focus-visible) time:after {
  background-color: var(--comment-indicator-focus-fg-color);
  display: inline-block;
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments):focus-visible {
  outline: 2px solid var(--comment-focus-outline-color);
  outline-offset: 2px;
}

.selected:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments) .sidebarCommentText {
  -webkit-line-clamp: unset;
  max-height: fit-content;
}

.selected:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment):not(.noComments) time:after {
  background-color: var(--comment-indicator-selected-fg-color);
  display: inline-block;
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) .sidebarCommentText {
  font: menu;
  -webkit-line-clamp: 2;
  overflow-wrap: break-word;
  -webkit-box-orient: vertical;
  width: 100%;
  height: fit-content;
  max-height: 80px;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  display: -webkit-box;
  overflow: hidden;
}

:is(:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) .sidebarCommentText) .richText {
  --total-scale-factor: 1.5;
}

.noComments:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) .sidebarCommentText {
  -webkit-line-clamp: unset;
  -webkit-user-select: none;
  user-select: none;
  max-height: fit-content;
}

.noComments:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) a {
  font: menu;
  overflow-wrap: break-word;
  width: 100%;
  height: auto;
  color: var(--link-fg-color);
  margin-block-start: 15px;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(.noComments:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) a):focus-visible {
  outline: var(--focus-ring-outline);
}

:is(.noComments:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) a):hover {
  color: var(--link-hover-fg-color);
}

:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) time {
  width: 100%;
  font: menu;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  display: inline-flex;
}

:is(:is(:is(:is(#editorCommentsSidebar #editorCommentsSidebarListContainer) #editorCommentsSidebarList) .sidebarComment) time):after {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--comment-edit-button-icon);
  -webkit-mask-image: var(--comment-edit-button-icon);
  mask-image: var(--comment-edit-button-icon);
  transform: scaleX(var(--dir-factor));
  display: none;
}

.commentPopup {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light dark;
  --csstools-light-dark-toggle--73: var(--csstools-color-scheme--light) #3a3944;
  --divider-color: var(--csstools-light-dark-toggle--73, #cfcfd8);
  --csstools-light-dark-toggle--74: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--75: var(--csstools-color-scheme--light) #0006;
  --comment-shadow: 0 .5px 2px 0 var(--csstools-light-dark-toggle--74, #0000000d), 0 4px 16px 0 var(--csstools-light-dark-toggle--75, #0000001a);
}

@media (prefers-color-scheme: dark) {
  .commentPopup {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
  }
}

@supports (color: light-dark(red, red)) {
  .commentPopup {
    --divider-color: light-dark(#cfcfd8, #3a3944);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .commentPopup {
    --comment-shadow: 0 .5px 2px 0 light-dark(#0000000d, #0003), 0 4px 16px 0 light-dark(#0000001a, #0006);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .commentPopup * {
    --csstools-light-dark-toggle--73: var(--csstools-color-scheme--light) #3a3944;
    --divider-color: var(--csstools-light-dark-toggle--73, #cfcfd8);
    --csstools-light-dark-toggle--74: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--75: var(--csstools-color-scheme--light) #0006;
    --comment-shadow: 0 .5px 2px 0 var(--csstools-light-dark-toggle--74, #0000000d), 0 4px 16px 0 var(--csstools-light-dark-toggle--75, #0000001a);
  }
}

@media (prefers-color-scheme: dark) {
  .commentPopup {
    --csstools-color-scheme--light: ;
  }
}

@media screen and (forced-colors: active) {
  .commentPopup {
    --divider-color: CanvasText;
    --comment-shadow: none;
  }
}

.commentPopup {
  z-index: 100001;
  pointer-events: auto;
  border: .5px solid var(--comment-border-color);
  background: var(--comment-bg-color);
  box-shadow: var(--comment-shadow);
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  margin-top: 2px;
  display: flex;
}

.commentPopup:focus-visible {
  outline: none;
}

.commentPopup.dragging, .commentPopup.dragging * {
  cursor: move !important;
}

.commentPopup.dragging button {
  pointer-events: none !important;
}

.commentPopup:not(.selected) .commentPopupButtons {
  visibility: hidden !important;
}

.commentPopup hr {
  border: none;
  border-top: 1px solid var(--divider-color);
  width: 100%;
  height: 1px;
  margin: 0;
  padding: 0;
}

.commentPopup .commentPopupTop {
  cursor: move;
  -webkit-user-select: none;
  user-select: none;
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  width: 100%;
  height: auto;
  padding-bottom: 4px;
  display: flex;
}

:is(.commentPopup .commentPopupTop) .commentPopupTime {
  font: menu;
  color: var(--comment-date-fg-color);
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(.commentPopup .commentPopupTop) .commentPopupButtons {
  cursor: default;
  align-items: center;
  gap: 2px;
  display: flex;
}

:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button {
  border: var(--button-comment-border);
  background-color: var(--button-comment-bg);
  width: 32px;
  height: 32px;
  color: var(--button-comment-color);
  border-radius: 4px;
  padding: 8px;
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):hover {
  background-color: var(--button-comment-hover-bg);
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):hover:before {
  background-color: var(--button-comment-hover-color);
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):active {
  border: var(--button-comment-active-border);
  background-color: var(--button-comment-active-bg);
  color: var(--button-comment-active-color);
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):active:before {
  background-color: var(--button-comment-active-color);
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):focus-visible {
  background-color: var(--button-comment-hover-bg);
  outline: 2px solid var(--comment-focus-outline-color);
  outline-offset: 0;
}

:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):before {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.commentPopupEdit:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):before {
  -webkit-mask-image: var(--comment-popup-edit-button-icon);
  -webkit-mask-image: var(--comment-popup-edit-button-icon);
  mask-image: var(--comment-popup-edit-button-icon);
}

.commentPopupDelete:is(:is(:is(.commentPopup .commentPopupTop) .commentPopupButtons) > button):before {
  -webkit-mask-image: var(--comment-popup-delete-button-icon);
  -webkit-mask-image: var(--comment-popup-delete-button-icon);
  mask-image: var(--comment-popup-delete-button-icon);
}

.commentPopup .commentPopupText {
  width: 100%;
  height: auto;
  font: menu;
  color: var(--comment-fg-color);
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.commentPopupText, .sidebarCommentText .richText, :is(.commentPopupText, .sidebarCommentText .richText) p:first-of-type {
  margin-block: 0;
}

:is(.commentPopupText, .sidebarCommentText .richText) > * {
  white-space: pre-wrap;
  font-size: max(15px, calc(10px * var(--total-scale-factor)));
  overflow-wrap: break-word;
}

:is(.commentPopupText, .sidebarCommentText .richText) span {
  color: var(--comment-fg-color) !important;
}

:root {
  --editor-toolbar-vert-offset: 6px;
  --outline-width: 2px;
  --outline-color: #0060df;
  --outline-around-width: 1px;
  --outline-around-color: #f0f0f4;
  --hover-outline-around-color: var(--outline-around-color);
  --focus-outline: solid var(--outline-width) var(--outline-color);
  --unfocus-outline: solid var(--outline-width) transparent;
  --focus-outline-around: solid var(--outline-around-width) var(--outline-around-color);
  --hover-outline-color: #8f8f9d;
  --hover-outline: solid var(--outline-width) var(--hover-outline-color);
  --hover-outline-around: solid var(--outline-around-width) var(--hover-outline-around-color);
  --freetext-line-height: 1.35;
  --freetext-padding: 2px;
  --resizer-bg-color: var(--outline-color);
  --resizer-size: 6px;
  --resizer-shift: calc(0px - (var(--outline-width) + var(--resizer-size)) / 2 -
      var(--outline-around-width));
  --editorFreeText-editing-cursor: text;
  --editorInk-editing-cursor: url("../media/cursor-editorInk.0w~p4njb_q99n.svg") 0 16, pointer;
  --editorHighlight-editing-cursor: url("../media/cursor-editorTextHighlight.0e14z1tamqi61.svg") 24 24, text;
  --editorFreeHighlight-editing-cursor: url("../media/cursor-editorFreeHighlight.089qa-ugkz~ml.svg") 1 18, pointer;
  --new-alt-text-warning-image: url("../media/altText_warning.0uszsbnztiu38.svg");
}

.textLayer.highlighting {
  cursor: var(--editorFreeHighlight-editing-cursor);
}

.textLayer.highlighting:not(.free) span {
  cursor: var(--editorHighlight-editing-cursor);
}

[role="img"]:is(.textLayer.highlighting:not(.free) span), .textLayer.highlighting.free span {
  cursor: var(--editorFreeHighlight-editing-cursor);
}

.page:has(.annotationEditorLayer.nonEditing) .annotationLayer .editorAnnotation {
  pointer-events: none;
  position: absolute;
}

:is(#viewerContainer.pdfPresentationMode:fullscreen, .annotationEditorLayer.disabled) .noAltTextBadge {
  display: none !important;
}

@media (min-resolution: 1.1x) {
  :root {
    --editorFreeText-editing-cursor: url("../media/cursor-editorFreeText.13jy27m_lk2jb.svg") 0 16, text;
  }
}

@media screen and (forced-colors: active) {
  :root {
    --outline-color: CanvasText;
    --outline-around-color: ButtonFace;
    --resizer-bg-color: ButtonText;
    --hover-outline-color: Highlight;
    --hover-outline-around-color: SelectedItemText;
  }
}

[data-editor-rotation="90"] {
  transform: rotate(90deg);
}

[data-editor-rotation="180"] {
  transform: rotate(180deg);
}

[data-editor-rotation="270"] {
  transform: rotate(270deg);
}

.annotationEditorLayer {
  font-size: calc(100px * var(--total-scale-factor));
  transform-origin: 0 0;
  cursor: auto;
  background: none;
  position: absolute;
  inset: 0;
}

.annotationEditorLayer .selectedEditor {
  z-index: 100000 !important;
}

.annotationEditorLayer.drawing * {
  pointer-events: none !important;
}

.annotationEditorLayer.getElements, .annotationEditorLayer.getElements > div {
  pointer-events: auto !important;
}

.annotationEditorLayer.waiting {
  content: "";
  cursor: wait;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.annotationEditorLayer.disabled {
  pointer-events: none;
}

.annotationEditorLayer.disabled.highlightEditing :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor, .commentPopup) {
  pointer-events: auto;
}

.annotationEditorLayer.freetextEditing {
  cursor: var(--editorFreeText-editing-cursor);
}

.annotationEditorLayer.inkEditing {
  cursor: var(--editorInk-editing-cursor);
}

.annotationEditorLayer .draw {
  box-sizing: border-box;
}

.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor) {
  z-index: 1;
  transform-origin: 0 0;
  cursor: auto;
  border: var(--unfocus-outline);
  background: none;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
}

.draggable.selectedEditor:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) {
  cursor: move;
}

.selectedEditor:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) {
  border: var(--focus-outline);
  outline: var(--focus-outline-around);
}

.selectedEditor:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)):before {
  content: "";
  border: var(--focus-outline-around);
  pointer-events: none;
  position: absolute;
  inset: 0;
}

:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)):hover:not(.selectedEditor) {
  border: var(--hover-outline);
  outline: var(--hover-outline-around);
}

:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)):hover:not(.selectedEditor):before {
  content: "";
  border: var(--focus-outline-around);
  position: absolute;
  inset: 0;
}

:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar {
  --editor-toolbar-delete-image: url("../media/editor-toolbar-delete.03wunzr0m9rov.svg");
  --csstools-light-dark-toggle--76: var(--csstools-color-scheme--light) #2b2a33;
  --editor-toolbar-bg-color: var(--csstools-light-dark-toggle--76, #f0f0f4);
  --editor-toolbar-highlight-image: url("../media/toolbarButton-editorHighlight.0ni3w.c8~58pj.svg");
  --csstools-light-dark-toggle--77: var(--csstools-color-scheme--light) #fbfbfe;
  --editor-toolbar-fg-color: var(--csstools-light-dark-toggle--77, #2e2e56);
  --editor-toolbar-border-color: #8f8f9d;
  --editor-toolbar-hover-border-color: var(--editor-toolbar-border-color);
  --csstools-light-dark-toggle--78: var(--csstools-color-scheme--light) #52525e;
  --editor-toolbar-hover-bg-color: var(--csstools-light-dark-toggle--78, #e0e0e6);
  --editor-toolbar-hover-fg-color: var(--editor-toolbar-fg-color);
  --editor-toolbar-hover-outline: none;
  --csstools-light-dark-toggle--79: var(--csstools-color-scheme--light) #0df;
  --editor-toolbar-focus-outline-color: var(--csstools-light-dark-toggle--79, #0060df);
  --editor-toolbar-shadow: 0 2px 6px 0 #3a394433;
  --editor-toolbar-height: 28px;
  --editor-toolbar-padding: 2px;
  --csstools-light-dark-toggle--80: var(--csstools-color-scheme--light) #54ffbd;
  --alt-text-done-color: var(--csstools-light-dark-toggle--80, #2ac3a2);
  --csstools-light-dark-toggle--81: var(--csstools-color-scheme--light) #80ebff;
  --alt-text-warning-color: var(--csstools-light-dark-toggle--81, #0090ed);
  --alt-text-hover-done-color: var(--alt-text-done-color);
  --alt-text-hover-warning-color: var(--alt-text-warning-color);
}

@supports (color: light-dark(red, red)) {
  :is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar {
    --editor-toolbar-bg-color: light-dark(#f0f0f4, #2b2a33);
    --editor-toolbar-fg-color: light-dark(#2e2e56, #fbfbfe);
    --editor-toolbar-hover-bg-color: light-dark(#e0e0e6, #52525e);
    --editor-toolbar-focus-outline-color: light-dark(#0060df, #0df);
    --alt-text-done-color: light-dark(#2ac3a2, #54ffbd);
    --alt-text-warning-color: light-dark(#0090ed, #80ebff);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) * {
    --csstools-light-dark-toggle--76: var(--csstools-color-scheme--light) #2b2a33;
    --editor-toolbar-bg-color: var(--csstools-light-dark-toggle--76, #f0f0f4);
    --csstools-light-dark-toggle--77: var(--csstools-color-scheme--light) #fbfbfe;
    --editor-toolbar-fg-color: var(--csstools-light-dark-toggle--77, #2e2e56);
    --csstools-light-dark-toggle--78: var(--csstools-color-scheme--light) #52525e;
    --editor-toolbar-hover-bg-color: var(--csstools-light-dark-toggle--78, #e0e0e6);
    --csstools-light-dark-toggle--79: var(--csstools-color-scheme--light) #0df;
    --editor-toolbar-focus-outline-color: var(--csstools-light-dark-toggle--79, #0060df);
    --csstools-light-dark-toggle--80: var(--csstools-color-scheme--light) #54ffbd;
    --alt-text-done-color: var(--csstools-light-dark-toggle--80, #2ac3a2);
    --csstools-light-dark-toggle--81: var(--csstools-color-scheme--light) #80ebff;
    --alt-text-warning-color: var(--csstools-light-dark-toggle--81, #0090ed);
  }
}

@media screen and (forced-colors: active) {
  :is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar {
    --editor-toolbar-bg-color: ButtonFace;
    --editor-toolbar-fg-color: ButtonText;
    --editor-toolbar-border-color: ButtonText;
    --editor-toolbar-hover-border-color: AccentColor;
    --editor-toolbar-hover-bg-color: ButtonFace;
    --editor-toolbar-hover-fg-color: AccentColor;
    --editor-toolbar-hover-outline: 2px solid var(--editor-toolbar-hover-border-color);
    --editor-toolbar-focus-outline-color: ButtonBorder;
    --editor-toolbar-shadow: none;
    --alt-text-done-color: var(--editor-toolbar-fg-color);
    --alt-text-warning-color: var(--editor-toolbar-fg-color);
    --alt-text-hover-done-color: var(--editor-toolbar-hover-fg-color);
    --alt-text-hover-warning-color: var(--editor-toolbar-hover-fg-color);
  }
}

:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar {
  width: fit-content;
  height: var(--editor-toolbar-height);
  cursor: default;
  pointer-events: auto;
  box-sizing: content-box;
  padding: var(--editor-toolbar-padding);
  background-color: var(--editor-toolbar-bg-color);
  border: 1px solid var(--editor-toolbar-border-color);
  box-shadow: var(--editor-toolbar-shadow);
  border-radius: 6px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset-block-start: calc(100% + var(--editor-toolbar-vert-offset));
  inset-inline-end: 0;
}

.hidden:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) {
  display: none;
}

:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar):has(:focus-visible) {
  border-color: #0000;
}

[dir="ltr"] :is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) {
  transform-origin: 100% 0;
}

[dir="rtl"] :is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) {
  transform-origin: 0 0;
}

:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons {
  justify-content: center;
  align-items: center;
  gap: 0;
  height: 100%;
  display: flex;
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) button {
  padding: 0;
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .divider {
  width: 0;
  height: calc(2 * var(--editor-toolbar-padding) + var(--editor-toolbar-height));
  border-left: 1px solid var(--editor-toolbar-border-color);
  border-right: none;
  margin-inline: 2px;
  display: inline-block;
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic {
  width: var(--editor-toolbar-height);
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic):before {
  content: "";
  background-color: var(--editor-toolbar-fg-color);
  width: 100%;
  height: 100%;
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic):hover:before {
  background-color: var(--editor-toolbar-hover-fg-color);
}

.highlightButton:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic):before {
  -webkit-mask-image: var(--editor-toolbar-highlight-image);
  -webkit-mask-image: var(--editor-toolbar-highlight-image);
  mask-image: var(--editor-toolbar-highlight-image);
}

.commentButton:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic):before {
  -webkit-mask-image: var(--comment-edit-button-icon);
  -webkit-mask-image: var(--comment-edit-button-icon);
  mask-image: var(--comment-edit-button-icon);
}

.deleteButton:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .basic):before {
  -webkit-mask-image: var(--editor-toolbar-delete-image);
  -webkit-mask-image: var(--editor-toolbar-delete-image);
  mask-image: var(--editor-toolbar-delete-image);
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) > * {
  height: var(--editor-toolbar-height);
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) > :not(.divider) {
  cursor: pointer;
  background-color: #0000;
  border: none;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) > :not(.divider)):hover {
  background-color: var(--editor-toolbar-hover-bg-color);
  color: var(--editor-toolbar-hover-fg-color);
  outline: var(--editor-toolbar-hover-outline);
  outline-offset: 1px;
  border-radius: 2px;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) > :not(.divider)):hover:active {
  outline: none;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) > :not(.divider)):focus-visible {
  outline: 2px solid var(--editor-toolbar-focus-outline-color);
  border-radius: 2px;
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText {
  --alt-text-add-image: url("../media/altText_add.11l4.nysz0z47.svg");
  --alt-text-done-image: url("../media/altText_done.09w1jqvk3ga77.svg");
  pointer-events: all;
  width: max-content;
  font: menu;
  color: var(--editor-toolbar-fg-color);
  justify-content: center;
  align-items: center;
  padding-inline: 8px;
  font-size: 12px;
  font-weight: 590;
  display: flex;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):disabled {
  pointer-events: none;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):before {
  content: "";
  -webkit-mask-image: var(--alt-text-add-image);
  -webkit-mask-image: var(--alt-text-add-image);
  mask-image: var(--alt-text-add-image);
  background-color: var(--editor-toolbar-fg-color);
  width: 12px;
  height: 13px;
  margin-inline-end: 4px;
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):hover:before {
  background-color: var(--editor-toolbar-hover-fg-color);
}

.done:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):before {
  -webkit-mask-image: var(--alt-text-done-image);
  -webkit-mask-image: var(--alt-text-done-image);
  mask-image: var(--alt-text-done-image);
}

.new:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):before {
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--new-alt-text-warning-image);
  -webkit-mask-image: var(--new-alt-text-warning-image);
  mask-image: var(--new-alt-text-warning-image);
  background-color: var(--alt-text-warning-color);
  -webkit-mask-size: cover;
  mask-size: cover;
}

.new:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):hover:before {
  background-color: var(--alt-text-hover-warning-color);
}

.new.done:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):before {
  -webkit-mask-image: var(--alt-text-done-image);
  -webkit-mask-image: var(--alt-text-done-image);
  mask-image: var(--alt-text-done-image);
  background-color: var(--alt-text-done-color);
}

.new.done:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText):hover:before {
  background-color: var(--alt-text-hover-done-color);
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip {
  word-wrap: anywhere;
  display: none;
}

.show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) {
  --csstools-light-dark-toggle--82: var(--csstools-color-scheme--light) #1c1b22;
  --alt-text-tooltip-bg: var(--csstools-light-dark-toggle--82, #f0f0f4);
  --csstools-light-dark-toggle--83: var(--csstools-color-scheme--light) #fbfbfe;
  --alt-text-tooltip-fg: var(--csstools-light-dark-toggle--83, #15141a);
  --alt-text-tooltip-border: #8f8f9d;
  --csstools-light-dark-toggle--84: var(--csstools-color-scheme--light) #15141a;
  --alt-text-tooltip-shadow: 0 2px 6px 0 var(--csstools-light-dark-toggle--84, #3a394433);
}

@supports (color: light-dark(red, red)) {
  .show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) {
    --alt-text-tooltip-bg: light-dark(#f0f0f4, #1c1b22);
    --alt-text-tooltip-fg: light-dark(#15141a, #fbfbfe);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) {
    --alt-text-tooltip-shadow: 0 2px 6px 0 light-dark(#3a394433, #15141a);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) * {
    --csstools-light-dark-toggle--82: var(--csstools-color-scheme--light) #1c1b22;
    --alt-text-tooltip-bg: var(--csstools-light-dark-toggle--82, #f0f0f4);
    --csstools-light-dark-toggle--83: var(--csstools-color-scheme--light) #fbfbfe;
    --alt-text-tooltip-fg: var(--csstools-light-dark-toggle--83, #15141a);
    --csstools-light-dark-toggle--84: var(--csstools-color-scheme--light) #15141a;
    --alt-text-tooltip-shadow: 0 2px 6px 0 var(--csstools-light-dark-toggle--84, #3a394433);
  }
}

@media screen and (forced-colors: active) {
  .show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) {
    --alt-text-tooltip-bg: Canvas;
    --alt-text-tooltip-fg: CanvasText;
    --alt-text-tooltip-border: CanvasText;
    --alt-text-tooltip-shadow: none;
  }
}

.show:is(:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .altText) .tooltip) {
  top: calc(100% + 2px);
  border: .5px solid var(--alt-text-tooltip-border);
  background: var(--alt-text-tooltip-bg);
  width: max-content;
  max-width: 300px;
  height: auto;
  box-shadow: var(--alt-text-tooltip-shadow);
  color: var(--alt-text-tooltip-fg);
  pointer-events: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-block: 2px 3px;
  padding-inline: 3px;
  font-size: 12px;
  display: inline-flex;
  position: absolute;
  inset-inline-start: 0;
}

:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .comment {
  width: var(--editor-toolbar-height);
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .highlightEditor, .signatureEditor), .textLayer) .editToolbar) .buttons) .comment):before {
  content: "";
  -webkit-mask-image: var(--comment-edit-button-icon);
  -webkit-mask-image: var(--comment-edit-button-icon);
  mask-image: var(--comment-edit-button-icon);
  background-color: var(--editor-toolbar-fg-color);
  width: 100%;
  height: 100%;
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.annotationEditorLayer .freeTextEditor {
  padding: calc(var(--freetext-padding) * var(--total-scale-factor));
  touch-action: none;
  width: auto;
  height: auto;
}

.annotationEditorLayer .freeTextEditor .internal {
  white-space: nowrap;
  font: 10px sans-serif;
  line-height: var(--freetext-line-height);
  text-align: start;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border: none;
  inset: 0;
  overflow: visible;
}

.annotationEditorLayer .freeTextEditor .overlay {
  background: none;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0;
}

.annotationEditorLayer freeTextEditor .overlay.enabled {
  display: block;
}

.annotationEditorLayer .freeTextEditor .internal:empty:before {
  content: attr(default-content);
  color: gray;
}

.annotationEditorLayer .freeTextEditor .internal:focus {
  -webkit-user-select: auto;
  user-select: auto;
  outline: none;
}

.annotationEditorLayer .inkEditor {
  width: 100%;
  height: 100%;
}

.annotationEditorLayer .inkEditor.editing {
  cursor: inherit;
}

.annotationEditorLayer .inkEditor .inkEditorCanvas {
  touch-action: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.annotationEditorLayer .stampEditor {
  width: auto;
  height: auto;
}

:is(.annotationEditorLayer .stampEditor) canvas {
  width: 100%;
  height: 100%;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
}

:is(.annotationEditorLayer .stampEditor) .noAltTextBadge {
  --csstools-light-dark-toggle--85: var(--csstools-color-scheme--light) #52525e;
  --no-alt-text-badge-border-color: var(--csstools-light-dark-toggle--85, #f0f0f4);
  --csstools-light-dark-toggle--86: var(--csstools-color-scheme--light) #fbfbfe;
  --no-alt-text-badge-bg-color: var(--csstools-light-dark-toggle--86, #cfcfd8);
  --csstools-light-dark-toggle--87: var(--csstools-color-scheme--light) #15141a;
  --no-alt-text-badge-fg-color: var(--csstools-light-dark-toggle--87, #5b5b66);
}

@supports (color: light-dark(red, red)) {
  :is(.annotationEditorLayer .stampEditor) .noAltTextBadge {
    --no-alt-text-badge-border-color: light-dark(#f0f0f4, #52525e);
    --no-alt-text-badge-bg-color: light-dark(#cfcfd8, #fbfbfe);
    --no-alt-text-badge-fg-color: light-dark(#5b5b66, #15141a);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(.annotationEditorLayer .stampEditor) .noAltTextBadge) * {
    --csstools-light-dark-toggle--85: var(--csstools-color-scheme--light) #52525e;
    --no-alt-text-badge-border-color: var(--csstools-light-dark-toggle--85, #f0f0f4);
    --csstools-light-dark-toggle--86: var(--csstools-color-scheme--light) #fbfbfe;
    --no-alt-text-badge-bg-color: var(--csstools-light-dark-toggle--86, #cfcfd8);
    --csstools-light-dark-toggle--87: var(--csstools-color-scheme--light) #15141a;
    --no-alt-text-badge-fg-color: var(--csstools-light-dark-toggle--87, #5b5b66);
  }
}

@media screen and (forced-colors: active) {
  :is(.annotationEditorLayer .stampEditor) .noAltTextBadge {
    --no-alt-text-badge-border-color: ButtonText;
    --no-alt-text-badge-bg-color: ButtonFace;
    --no-alt-text-badge-fg-color: ButtonText;
  }
}

:is(.annotationEditorLayer .stampEditor) .noAltTextBadge {
  pointer-events: none;
  z-index: 1;
  border: 1px solid var(--no-alt-text-badge-border-color);
  background: var(--no-alt-text-badge-bg-color);
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 3px;
  display: inline-flex;
  position: absolute;
  inset-block-end: 5px;
  inset-inline-end: 5px;
}

:is(:is(.annotationEditorLayer .stampEditor) .noAltTextBadge):before {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--new-alt-text-warning-image);
  -webkit-mask-image: var(--new-alt-text-warning-image);
  mask-image: var(--new-alt-text-warning-image);
  background-color: var(--no-alt-text-badge-fg-color);
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers {
  z-index: 1;
  position: absolute;
  inset: 0;
}

.hidden:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) {
  display: none;
}

:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer {
  width: var(--resizer-size);
  height: var(--resizer-size);
  background: content-box var(--resizer-bg-color);
  border: var(--focus-outline-around);
  border-radius: 2px;
  position: absolute;
}

.topLeft:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  top: var(--resizer-shift);
  left: var(--resizer-shift);
}

.topMiddle:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  top: var(--resizer-shift);
  left: calc(50% + var(--resizer-shift));
}

.topRight:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  top: var(--resizer-shift);
  right: var(--resizer-shift);
}

.middleRight:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  top: calc(50% + var(--resizer-shift));
  right: var(--resizer-shift);
}

.bottomRight:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  bottom: var(--resizer-shift);
  right: var(--resizer-shift);
}

.bottomMiddle:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  bottom: var(--resizer-shift);
  left: calc(50% + var(--resizer-shift));
}

.bottomLeft:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  bottom: var(--resizer-shift);
  left: var(--resizer-shift);
}

.middleLeft:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor, .inkEditor, .stampEditor, .signatureEditor)) > .resizers) > .resizer) {
  top: calc(50% + var(--resizer-shift));
  left: var(--resizer-shift);
}

.topLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer), .bottomRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer) {
  cursor: nwse-resize;
}

.topMiddle:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer), .bottomMiddle:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer) {
  cursor: ns-resize;
}

.topRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer), .bottomLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer) {
  cursor: nesw-resize;
}

.middleRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer), .middleLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="180"], [data-editor-rotation="0"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="90"], [data-editor-rotation="270"])) > .resizers > .resizer) {
  cursor: ew-resize;
}

.topLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer), .bottomRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer) {
  cursor: nesw-resize;
}

.topMiddle:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer), .bottomMiddle:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer) {
  cursor: ew-resize;
}

.topRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer), .bottomLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer) {
  cursor: nwse-resize;
}

.middleRight:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer), .middleLeft:is(:is(.annotationEditorLayer[data-main-rotation="0"] :is([data-editor-rotation="90"], [data-editor-rotation="270"]), .annotationEditorLayer[data-main-rotation="90"] :is([data-editor-rotation="0"], [data-editor-rotation="180"]), .annotationEditorLayer[data-main-rotation="180"] :is([data-editor-rotation="270"], [data-editor-rotation="90"]), .annotationEditorLayer[data-main-rotation="270"] :is([data-editor-rotation="180"], [data-editor-rotation="0"])) > .resizers > .resizer) {
  cursor: ns-resize;
}

:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="90"], [data-main-rotation="90"] [data-editor-rotation="0"], [data-main-rotation="180"] [data-editor-rotation="270"], [data-main-rotation="270"] [data-editor-rotation="180"])) .editToolbar {
  rotate: 270deg;
}

[dir="ltr"] :is(:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="90"], [data-main-rotation="90"] [data-editor-rotation="0"], [data-main-rotation="180"] [data-editor-rotation="270"], [data-main-rotation="270"] [data-editor-rotation="180"])) .editToolbar) {
  inset-block-start: 0;
  inset-inline-end: calc(0px - var(--editor-toolbar-vert-offset));
}

[dir="rtl"] :is(:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="90"], [data-main-rotation="90"] [data-editor-rotation="0"], [data-main-rotation="180"] [data-editor-rotation="270"], [data-main-rotation="270"] [data-editor-rotation="180"])) .editToolbar) {
  inset-block-start: 0;
  inset-inline-end: calc(100% + var(--editor-toolbar-vert-offset));
}

:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="180"], [data-main-rotation="90"] [data-editor-rotation="90"], [data-main-rotation="180"] [data-editor-rotation="0"], [data-main-rotation="270"] [data-editor-rotation="270"])) .editToolbar {
  inset-block-start: calc(0px - var(--editor-toolbar-vert-offset));
  inset-inline-end: 100%;
  rotate: 180deg;
}

:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="270"], [data-main-rotation="90"] [data-editor-rotation="180"], [data-main-rotation="180"] [data-editor-rotation="90"], [data-main-rotation="270"] [data-editor-rotation="0"])) .editToolbar {
  rotate: 90deg;
}

[dir="ltr"] :is(:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="270"], [data-main-rotation="90"] [data-editor-rotation="180"], [data-main-rotation="180"] [data-editor-rotation="90"], [data-main-rotation="270"] [data-editor-rotation="0"])) .editToolbar) {
  inset-block-start: 100%;
  inset-inline-end: calc(100% + var(--editor-toolbar-vert-offset));
}

[dir="rtl"] :is(:is(.annotationEditorLayer :is([data-main-rotation="0"] [data-editor-rotation="270"], [data-main-rotation="90"] [data-editor-rotation="180"], [data-main-rotation="180"] [data-editor-rotation="90"], [data-main-rotation="270"] [data-editor-rotation="0"])) .editToolbar) {
  inset-block-start: 0;
  inset-inline-start: calc(0px - var(--editor-toolbar-vert-offset));
}

.dialog.altText::backdrop {
  -webkit-mask: url("#alttext-manager-mask");
  mask: url("#alttext-manager-mask");
}

.dialog.altText.positioned {
  margin: 0;
}

.dialog.altText #altTextContainer {
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 300px;
  height: fit-content;
  display: inline-flex;
}

:is(.dialog.altText #altTextContainer) #overallDescription {
  flex-direction: column;
  align-self: stretch;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}

:is(:is(.dialog.altText #altTextContainer) #overallDescription) span {
  align-self: stretch;
}

:is(:is(.dialog.altText #altTextContainer) #overallDescription) .title {
  font-size: 13px;
  font-style: normal;
  font-weight: 590;
}

:is(.dialog.altText #altTextContainer) #addDescription {
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  display: flex;
}

:is(:is(.dialog.altText #altTextContainer) #addDescription) .descriptionArea {
  flex: 1;
  padding-inline: 24px 10px;
}

:is(:is(:is(.dialog.altText #altTextContainer) #addDescription) .descriptionArea) textarea {
  width: 100%;
  min-height: 75px;
}

:is(.dialog.altText #altTextContainer) #buttons {
  justify-content: flex-end;
  align-self: stretch;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

.dialog.newAltText {
  --new-alt-text-ai-disclaimer-icon: url("../media/altText_disclaimer.0-fkoyz3r4.vr.svg");
  --new-alt-text-spinner-icon: url("../media/altText_spinner.011~3weg7vxwh.svg");
  --csstools-light-dark-toggle--88: var(--csstools-color-scheme--light) #2b2a33;
  --preview-image-bg-color: var(--csstools-light-dark-toggle--88, #f0f0f4);
  --preview-image-border: none;
}

@supports (color: light-dark(red, red)) {
  .dialog.newAltText {
    --preview-image-bg-color: light-dark(#f0f0f4, #2b2a33);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .dialog.newAltText * {
    --csstools-light-dark-toggle--88: var(--csstools-color-scheme--light) #2b2a33;
    --preview-image-bg-color: var(--csstools-light-dark-toggle--88, #f0f0f4);
  }
}

@media screen and (forced-colors: active) {
  .dialog.newAltText {
    --preview-image-bg-color: ButtonFace;
    --preview-image-border: 1px solid ButtonText;
  }
}

.dialog.newAltText {
  width: 80%;
  min-width: 300px;
  max-width: 570px;
  padding: 0;
}

.dialog.newAltText.noAi #newAltTextDisclaimer, .dialog.newAltText.noAi #newAltTextCreateAutomatically, .dialog.newAltText.aiInstalling #newAltTextCreateAutomatically {
  display: none !important;
}

.dialog.newAltText.aiInstalling #newAltTextDownloadModel {
  display: flex !important;
}

.dialog.newAltText.error #newAltTextNotNow {
  display: none !important;
}

.dialog.newAltText.error #newAltTextCancel {
  display: inline-block !important;
}

.dialog.newAltText:not(.error) #newAltTextError {
  display: none !important;
}

.dialog.newAltText #newAltTextContainer {
  flex-direction: column;
  flex: 0 auto;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  padding: 16px;
  line-height: normal;
  display: flex;
}

:is(.dialog.newAltText #newAltTextContainer) #mainContent {
  flex: auto;
  justify-content: flex-end;
  align-self: stretch;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionAndSettings {
  flex-direction: column;
  flex: 1 0 0;
  align-self: stretch;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction {
  flex-direction: column;
  flex: auto;
  align-self: stretch;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer {
  width: 100%;
  height: 70px;
  position: relative;
}

:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) textarea {
  width: 100%;
  height: 100%;
  padding: 8px;
}

:is(:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) textarea)::-moz-placeholder {
  color: var(--text-secondary-color);
}

:is(:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) textarea)::placeholder {
  color: var(--text-secondary-color);
}

:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) .altTextSpinner {
  background-color: var(--text-secondary-color);
  pointer-events: none;
  width: 16px;
  height: 16px;
  display: none;
  position: absolute;
  inset-block-start: 8px;
  inset-inline-start: 8px;
  -webkit-mask-size: cover;
  mask-size: cover;
}

.loading:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) textarea::-moz-placeholder {
  color: #0000;
}

.loading:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) textarea::placeholder {
  color: #0000;
}

.loading:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescriptionContainer) .altTextSpinner {
  -webkit-mask-image: var(--new-alt-text-spinner-icon);
  -webkit-mask-image: var(--new-alt-text-spinner-icon);
  mask-image: var(--new-alt-text-spinner-icon);
  display: inline-block;
}

:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDescription {
  font-size: 11px;
}

:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDisclaimer {
  flex-direction: row;
  align-items: flex-start;
  gap: 4px;
  font-size: 11px;
  display: flex;
}

:is(:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #descriptionInstruction) #newAltTextDisclaimer):before {
  content: "";
  width: 17px;
  height: 16px;
  -webkit-mask-image: var(--new-alt-text-ai-disclaimer-icon);
  -webkit-mask-image: var(--new-alt-text-ai-disclaimer-icon);
  mask-image: var(--new-alt-text-ai-disclaimer-icon);
  background-color: var(--text-secondary-color);
  flex: 1 0 auto;
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #newAltTextDownloadModel {
  align-self: stretch;
  align-items: center;
  gap: 4px;
  display: flex;
}

:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #newAltTextDownloadModel):before {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--new-alt-text-spinner-icon);
  -webkit-mask-image: var(--new-alt-text-spinner-icon);
  mask-image: var(--new-alt-text-spinner-icon);
  background-color: var(--text-secondary-color);
  display: inline-block;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #newAltTextImagePreview {
  aspect-ratio: 1;
  background-color: var(--preview-image-bg-color);
  border: var(--preview-image-border);
  flex: none;
  justify-content: center;
  align-items: center;
  width: 180px;
  display: flex;
}

:is(:is(:is(.dialog.newAltText #newAltTextContainer) #mainContent) #newAltTextImagePreview) > canvas {
  max-width: 100%;
  max-height: 100%;
}

.colorPicker {
  --csstools-light-dark-toggle--89: var(--csstools-color-scheme--light) #80ebff;
  --hover-outline-color: var(--csstools-light-dark-toggle--89, #0250bb);
  --csstools-light-dark-toggle--90: var(--csstools-color-scheme--light) #aaf2ff;
  --selected-outline-color: var(--csstools-light-dark-toggle--90, #0060df);
  --csstools-light-dark-toggle--91: var(--csstools-color-scheme--light) #52525e;
  --swatch-border-color: var(--csstools-light-dark-toggle--91, #cfcfd8);
}

@supports (color: light-dark(red, red)) {
  .colorPicker {
    --hover-outline-color: light-dark(#0250bb, #80ebff);
    --selected-outline-color: light-dark(#0060df, #aaf2ff);
    --swatch-border-color: light-dark(#cfcfd8, #52525e);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .colorPicker * {
    --csstools-light-dark-toggle--89: var(--csstools-color-scheme--light) #80ebff;
    --hover-outline-color: var(--csstools-light-dark-toggle--89, #0250bb);
    --csstools-light-dark-toggle--90: var(--csstools-color-scheme--light) #aaf2ff;
    --selected-outline-color: var(--csstools-light-dark-toggle--90, #0060df);
    --csstools-light-dark-toggle--91: var(--csstools-color-scheme--light) #52525e;
    --swatch-border-color: var(--csstools-light-dark-toggle--91, #cfcfd8);
  }
}

@media screen and (forced-colors: active) {
  .colorPicker {
    --hover-outline-color: Highlight;
    --selected-outline-color: var(--hover-outline-color);
    --swatch-border-color: ButtonText;
  }
}

.colorPicker .swatch {
  border: 1px solid var(--swatch-border-color);
  outline-offset: 2px;
  box-sizing: border-box;
  forced-color-adjust: none;
  border-radius: 100%;
  width: 16px;
  height: 16px;
}

.colorPicker button:is(:hover, .selected) > .swatch {
  border: none;
}

.basicColorPicker {
  width: 28px;
}

.basicColorPicker::-moz-color-swatch {
  border-radius: 100%;
  margin: 0;
}

.basicColorPicker::-webkit-color-swatch {
  border-radius: 100%;
  margin: 0;
}

.annotationEditorLayer[data-main-rotation="0"] .highlightEditor:not(.free) > .editToolbar {
  rotate: none;
}

.annotationEditorLayer[data-main-rotation="90"] .highlightEditor:not(.free) > .editToolbar {
  rotate: 270deg;
}

.annotationEditorLayer[data-main-rotation="180"] .highlightEditor:not(.free) > .editToolbar {
  rotate: 180deg;
}

.annotationEditorLayer[data-main-rotation="270"] .highlightEditor:not(.free) > .editToolbar {
  rotate: 90deg;
}

.annotationEditorLayer .highlightEditor {
  z-index: 1;
  cursor: auto;
  pointer-events: none;
  transform-origin: 0 0;
  background: none;
  border: none;
  outline: none;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
}

:is(.annotationEditorLayer .highlightEditor):not(.free) {
  transform: none;
}

:is(.annotationEditorLayer .highlightEditor) .internal {
  pointer-events: auto;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.disabled:is(.annotationEditorLayer .highlightEditor) .internal {
  pointer-events: none;
}

.selectedEditor:is(.annotationEditorLayer .highlightEditor) .internal {
  cursor: pointer;
}

:is(.annotationEditorLayer .highlightEditor) .editToolbar {
  --editor-toolbar-colorpicker-arrow-image: url("../media/toolbarButton-menuArrow.0tx16jlj3l~wi.svg");
  transform-origin: center !important;
}

:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker {
  justify-content: center;
  align-items: center;
  gap: 4px;
  width: auto;
  padding: 4px;
  display: flex;
  position: relative;
}

:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker):after {
  content: "";
  -webkit-mask-image: var(--editor-toolbar-colorpicker-arrow-image);
  -webkit-mask-image: var(--editor-toolbar-colorpicker-arrow-image);
  mask-image: var(--editor-toolbar-colorpicker-arrow-image);
  background-color: var(--editor-toolbar-fg-color);
  width: 12px;
  height: 12px;
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker):hover:after {
  background-color: var(--editor-toolbar-hover-fg-color);
}

:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker):has(.dropdown:not(.hidden)) {
  background-color: var(--editor-toolbar-hover-bg-color);
}

:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker):has(.dropdown:not(.hidden)):after {
  scale: -1;
}

:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown {
  background-color: var(--editor-toolbar-bg-color);
  border: 1px solid var(--editor-toolbar-border-color);
  box-shadow: var(--editor-toolbar-shadow);
  width: calc(100% + 2 * var(--editor-toolbar-padding));
  border-radius: 6px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 11px;
  padding-block: 8px;
  display: flex;
  position: absolute;
  inset-block-start: calc(100% + 4px);
}

:is(:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown) button {
  cursor: pointer;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
}

:is(:is(:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown) button):is(:active, :focus-visible) {
  outline: none;
}

:is(:is(:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown) button) > .swatch {
  outline-offset: 2px;
}

[aria-selected="true"]:is(:is(:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown) button) > .swatch {
  outline: 2px solid var(--selected-outline-color);
}

:is(:is(:is(:is(:is(:is(.annotationEditorLayer .highlightEditor) .editToolbar) .buttons) .colorPicker) .dropdown) button):is(:hover, :active, :focus-visible) > .swatch {
  outline: 2px solid var(--hover-outline-color);
}

.editorParamsToolbar:has(#highlightParamsToolbarContainer) {
  padding: unset;
}

#highlightParamsToolbarContainer {
  gap: 16px;
  padding-block-end: 12px;
  padding-inline: 10px;
}

#highlightParamsToolbarContainer .colorPicker {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

:is(#highlightParamsToolbarContainer .colorPicker) .dropdown {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  height: auto;
  display: flex;
}

:is(:is(#highlightParamsToolbarContainer .colorPicker) .dropdown) button {
  cursor: pointer;
  background: none;
  border: none;
  flex: none;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  padding: 0;
  display: flex;
}

:is(:is(:is(#highlightParamsToolbarContainer .colorPicker) .dropdown) button) .swatch {
  width: 24px;
  height: 24px;
}

:is(:is(:is(#highlightParamsToolbarContainer .colorPicker) .dropdown) button):is(:active, :focus-visible) {
  outline: none;
}

[aria-selected="true"]:is(:is(:is(#highlightParamsToolbarContainer .colorPicker) .dropdown) button) > .swatch {
  outline: 2px solid var(--selected-outline-color);
}

:is(:is(:is(#highlightParamsToolbarContainer .colorPicker) .dropdown) button):is(:hover, :active, :focus-visible) > .swatch {
  outline: 2px solid var(--hover-outline-color);
}

#highlightParamsToolbarContainer #editorHighlightThickness {
  flex-direction: column;
  align-self: stretch;
  align-items: center;
  gap: 4px;
  display: flex;
}

:is(#highlightParamsToolbarContainer #editorHighlightThickness) .editorParamsLabel {
  align-self: stretch;
  height: auto;
}

:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker {
  --csstools-light-dark-toggle--92: var(--csstools-color-scheme--light) #80808e;
  --example-color: var(--csstools-light-dark-toggle--92, #bfbfc9);
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  display: flex;
}

@supports (color: light-dark(red, red)) {
  :is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker {
    --example-color: light-dark(#bfbfc9, #80808e);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker) * {
    --csstools-light-dark-toggle--92: var(--csstools-color-scheme--light) #80808e;
    --example-color: var(--csstools-light-dark-toggle--92, #bfbfc9);
  }
}

@media screen and (forced-colors: active) {
  :is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker {
    --example-color: CanvasText;
  }
}

:is(:is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker) > .editorParamsSlider[disabled]) {
  opacity: .4;
}

:is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker):before, :is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker):after {
  content: "";
  aspect-ratio: 1;
  background-color: var(--example-color);
  border-radius: 100%;
  width: 8px;
  display: block;
}

:is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker):after {
  width: 24px;
}

:is(:is(#highlightParamsToolbarContainer #editorHighlightThickness) .thicknessPicker) .editorParamsSlider {
  width: unset;
  height: 14px;
}

#highlightParamsToolbarContainer #editorHighlightVisibility {
  flex-direction: column;
  align-self: stretch;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

:is(#highlightParamsToolbarContainer #editorHighlightVisibility) .divider {
  --csstools-light-dark-toggle--93: var(--csstools-color-scheme--light) #8f8f9d;
  --divider-color: var(--csstools-light-dark-toggle--93, #d7d7db);
}

@supports (color: light-dark(red, red)) {
  :is(#highlightParamsToolbarContainer #editorHighlightVisibility) .divider {
    --divider-color: light-dark(#d7d7db, #8f8f9d);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(#highlightParamsToolbarContainer #editorHighlightVisibility) .divider) * {
    --csstools-light-dark-toggle--93: var(--csstools-color-scheme--light) #8f8f9d;
    --divider-color: var(--csstools-light-dark-toggle--93, #d7d7db);
  }
}

@media screen and (forced-colors: active) {
  :is(#highlightParamsToolbarContainer #editorHighlightVisibility) .divider {
    --divider-color: CanvasText;
  }
}

:is(#highlightParamsToolbarContainer #editorHighlightVisibility) .divider {
  background-color: var(--divider-color);
  width: 100%;
  height: 1px;
  margin-block: 4px;
}

:is(#highlightParamsToolbarContainer #editorHighlightVisibility) .toggler {
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  display: flex;
}

#altTextSettingsDialog {
  padding: 16px;
}

#altTextSettingsDialog #altTextSettingsContainer {
  flex-direction: column;
  gap: 16px;
  width: 573px;
  display: flex;
}

:is(#altTextSettingsDialog #altTextSettingsContainer) .mainContainer {
  gap: 16px;
}

:is(#altTextSettingsDialog #altTextSettingsContainer) .description {
  color: var(--text-secondary-color);
}

:is(#altTextSettingsDialog #altTextSettingsContainer) #aiModelSettings {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

:is(#altTextSettingsDialog #altTextSettingsContainer) #automaticAltText, :is(#altTextSettingsDialog #altTextSettingsContainer) #altTextEditor {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

:is(#altTextSettingsDialog #altTextSettingsContainer) #createModelDescription, :is(#altTextSettingsDialog #altTextSettingsContainer) #aiModelSettings, :is(#altTextSettingsDialog #altTextSettingsContainer) #showAltTextDialogDescription {
  padding-inline-start: 40px;
}

:is(#altTextSettingsDialog #altTextSettingsContainer) #automaticSettings {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

button.hasPopupMenu[aria-expanded="true"] + menu {
  visibility: visible;
}

button.hasPopupMenu[aria-expanded="false"] + menu {
  visibility: hidden;
}

.popupMenu {
  --menuitem-checkmark-icon: url("../media/checkmark.050t8eci2bj8v.svg");
  --menu-mark-icon-size: 0;
  --menu-icon-size: 16px;
  --menuitem-gap: 5px;
  --menuitem-border-color: transparent;
  --menuitem-active-bg: color-mix(in srgb,
    var(--menu-text-color),
    transparent 79%);
  --menuitem-text-active-fg: var(--menu-text-color);
  --menuitem-active-border-color: var(--menuitem-border-color);
  --menuitem-focus-bg: color-mix(in srgb,
    var(--menu-text-color),
    transparent 93%);
  --csstools-light-dark-toggle--94: var(--csstools-color-scheme--light) #00cadb;
  --menuitem-focus-outline-color: var(--csstools-light-dark-toggle--94, #0062fa);
  --csstools-light-dark-toggle--95: var(--csstools-color-scheme--light) black;
  --menuitem-focus-border-color: var(--csstools-light-dark-toggle--95, white);
  --csstools-light-dark-toggle--96: var(--csstools-color-scheme--light) #23222b;
  --menu-bg: var(--csstools-light-dark-toggle--96, white);
  --menu-background-blend-mode: normal;
  --csstools-light-dark-toggle--97: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--98: var(--csstools-color-scheme--light) #0006;
  --menu-box-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--97, #0000000d), 0 3px 12px 0 var(--csstools-light-dark-toggle--98, #0000001a);
  --csstools-light-dark-toggle--99: var(--csstools-color-scheme--light) #fbfbfe1a;
  --menu-border-color: var(--csstools-light-dark-toggle--99, #15141a1a);
  --menuitem-border-radius: 8px;
  --menu-backdrop-filter: none;
  --csstools-light-dark-toggle--100: var(--csstools-color-scheme--light) #fbfbfe;
  --menu-text-color: var(--csstools-light-dark-toggle--100, #15141a);
  --menu-text-disabled-color: var(--menu-text-color);
  --menuitem-text-hover-fg: var(--menu-text-color);
  --menuitem-hover-bg: color-mix(in srgb,
    var(--menu-text-color),
    transparent 86%);
  --menuitem-hover-background-blend-mode: normal;
  --disabled-opacity: .62;
}

@supports (color: light-dark(red, red)) {
  .popupMenu {
    --menuitem-focus-outline-color: light-dark(#0062fa, #00cadb);
    --menuitem-focus-border-color: light-dark(#fff, #000);
    --menu-bg: light-dark(#fff, #23222b);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .popupMenu {
    --menu-box-shadow: 0 .375px 1.5px 0 light-dark(#0000000d, #0003), 0 3px 12px 0 light-dark(#0000001a, #0006);
    --menu-border-color: light-dark(#15141a1a, #fbfbfe1a);
  }
}

@supports (color: light-dark(red, red)) {
  .popupMenu {
    --menu-text-color: light-dark(#15141a, #fbfbfe);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .popupMenu * {
    --csstools-light-dark-toggle--94: var(--csstools-color-scheme--light) #00cadb;
    --menuitem-focus-outline-color: var(--csstools-light-dark-toggle--94, #0062fa);
    --csstools-light-dark-toggle--95: var(--csstools-color-scheme--light) black;
    --menuitem-focus-border-color: var(--csstools-light-dark-toggle--95, white);
    --csstools-light-dark-toggle--96: var(--csstools-color-scheme--light) #23222b;
    --menu-bg: var(--csstools-light-dark-toggle--96, white);
    --csstools-light-dark-toggle--97: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--98: var(--csstools-color-scheme--light) #0006;
    --menu-box-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--97, #0000000d), 0 3px 12px 0 var(--csstools-light-dark-toggle--98, #0000001a);
    --csstools-light-dark-toggle--99: var(--csstools-color-scheme--light) #fbfbfe1a;
    --menu-border-color: var(--csstools-light-dark-toggle--99, #15141a1a);
    --csstools-light-dark-toggle--100: var(--csstools-color-scheme--light) #fbfbfe;
    --menu-text-color: var(--csstools-light-dark-toggle--100, #15141a);
  }
}

@media screen and (forced-colors: active) {
  .popupMenu {
    --menu-bg: Canvas;
    --menu-background-blend-mode: normal;
    --menu-box-shadow: none;
    --menu-backdrop-filter: none;
    --menu-text-color: ButtonText;
    --menu-text-disabled-color: GrayText;
    --menu-border-color: CanvasText;
    --menuitem-border-color: none;
    --menuitem-hover-bg: SelectedItemText;
    --menuitem-text-hover-fg: SelectedItem;
    --menuitem-active-bg: SelectedItemText;
    --menuitem-active-border-color: ButtonText;
    --menuitem-text-active-fg: SelectedItem;
    --menuitem-focus-bg: ButtonFace;
    --menuitem-focus-outline-color: CanvasText;
    --menuitem-focus-border-color: none;
    --disabled-opacity: 1;
  }
}

.popupMenu {
  box-sizing: border-box;
  background: var(--menu-bg);
  background-blend-mode: var(--menu-background-blend-mode);
  width: max-content;
  height: auto;
  box-shadow: var(--menu-box-shadow);
  border: 1px solid var(--menu-border-color);
  -webkit-backdrop-filter: var(--menu-backdrop-filter);
  backdrop-filter: var(--menu-backdrop-filter);
  border-radius: 6px;
  flex-direction: column;
  margin: 0;
  padding: 5px;
  display: flex;
  position: relative;
  top: 1px;
  left: 0;
}

.popupMenu.withMark {
  --menu-mark-icon-size: 16px;
}

.popupMenu > button {
  width: 100%;
  height: 26px;
  padding-inline: calc(var(--menu-mark-icon-size) + var(--menuitem-gap)) var(--menuitem-gap);
  align-items: center;
  gap: var(--menuitem-gap);
  box-sizing: border-box;
  border-radius: var(--menuitem-border-radius);
  border: 1px solid var(--menuitem-border-color);
  background: none;
  display: flex;
  position: relative;
}

.selected:is(.popupMenu > button):after {
  content: "";
  width: 11px;
  height: 11px;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--menuitem-checkmark-icon);
  -webkit-mask-image: var(--menuitem-checkmark-icon);
  mask-image: var(--menuitem-checkmark-icon);
  background-color: var(--menu-text-color);
  inset-inline-start: var(--menuitem-gap);
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

:is(.popupMenu > button):disabled {
  opacity: var(--disabled-opacity);
}

.selected:is(.popupMenu > button):disabled:after, :is(.popupMenu > button):disabled:not(.noIcon):before {
  background-color: var(--menu-text-disabled-color);
}

:is(.popupMenu > button):disabled > span {
  color: var(--menu-text-disabled-color);
}

:is(.popupMenu > button):not(:disabled):hover {
  background: var(--menuitem-hover-bg);
  background-blend-mode: var(--menuitem-hover-background-blend-mode);
}

:is(.popupMenu > button):not(:disabled):hover:not(.noIcon):before {
  background-color: var(--menuitem-text-hover-fg);
}

:is(.popupMenu > button):not(:disabled):hover > span {
  color: var(--menuitem-text-hover-fg);
}

.selected:is(.popupMenu > button):not(:disabled):hover:after {
  background-color: var(--menuitem-text-hover-fg);
}

:is(.popupMenu > button):not(:disabled):active {
  background-color: var(--menuitem-active-bg);
  border-color: var(--menuitem-active-border-color);
}

:is(.popupMenu > button):not(:disabled):active > span {
  color: var(--menuitem-text-active-fg);
}

:is(.popupMenu > button):not(:disabled):focus-visible {
  border-color: var(--menuitem-focus-border-color);
  background-color: var(--menuitem-focus-bg);
  outline: 2px solid var(--menuitem-focus-outline-color);
  outline-offset: 2px;
}

:is(.popupMenu > button):not(.noIcon):before {
  width: var(--menu-icon-size);
  height: var(--menu-icon-size);
  content: "";
  background-color: var(--menu-text-color);
  display: inline-block;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
}

:is(.popupMenu > button) > span {
  text-align: start;
  width: 100%;
  min-width: max-content;
  color: var(--menu-text-color);
  -webkit-user-select: none;
  user-select: none;
  font: menu;
  align-self: stretch;
  align-items: center;
  padding-inline-start: 6px;
  font-size: 13px;
  font-style: normal;
  font-weight: 510;
  line-height: normal;
  display: flex;
}

.treeView {
  --csstools-light-dark-toggle--101: var(--csstools-color-scheme--light) #fffc;
  --treeitem-color: var(--csstools-light-dark-toggle--101, #000c);
  --csstools-light-dark-toggle--102: var(--csstools-color-scheme--light) #ffffff26;
  --treeitem-bg-color: var(--csstools-light-dark-toggle--102, #00000026);
  --csstools-light-dark-toggle--103: var(--csstools-color-scheme--light) #ffffffe6;
  --treeitem-hover-color: var(--csstools-light-dark-toggle--103, #000000e6);
  --csstools-light-dark-toggle--104: var(--csstools-color-scheme--light) #ffffffe6;
  --treeitem-selected-color: var(--csstools-light-dark-toggle--104, #000000e6);
  --csstools-light-dark-toggle--105: var(--csstools-color-scheme--light) #ffffff40;
  --treeitem-selected-bg-color: var(--csstools-light-dark-toggle--105, #00000040);
  --treeitem-expanded-icon: url("../media/treeitem-expanded.0m0lnxc6~qycj.svg");
  --treeitem-collapsed-icon: url("../media/treeitem-collapsed.0~eobbrx5032d.svg");
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .treeView {
    --treeitem-color: light-dark(#000c, #fffc);
    --treeitem-bg-color: light-dark(#00000026, #ffffff26);
    --treeitem-hover-color: light-dark(#000000e6, #ffffffe6);
    --treeitem-selected-color: light-dark(#000000e6, #ffffffe6);
    --treeitem-selected-bg-color: light-dark(#00000040, #ffffff40);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .treeView * {
    --csstools-light-dark-toggle--101: var(--csstools-color-scheme--light) #fffc;
    --treeitem-color: var(--csstools-light-dark-toggle--101, #000c);
    --csstools-light-dark-toggle--102: var(--csstools-color-scheme--light) #ffffff26;
    --treeitem-bg-color: var(--csstools-light-dark-toggle--102, #00000026);
    --csstools-light-dark-toggle--103: var(--csstools-color-scheme--light) #ffffffe6;
    --treeitem-hover-color: var(--csstools-light-dark-toggle--103, #000000e6);
    --csstools-light-dark-toggle--104: var(--csstools-color-scheme--light) #ffffffe6;
    --treeitem-selected-color: var(--csstools-light-dark-toggle--104, #000000e6);
    --csstools-light-dark-toggle--105: var(--csstools-color-scheme--light) #ffffff40;
    --treeitem-selected-bg-color: var(--csstools-light-dark-toggle--105, #00000040);
  }
}

:is(.treeView.withNesting .treeItemToggler):before {
  content: "";
  background-color: var(--toolbar-icon-bg-color);
  width: 16px;
  height: 16px;
  -webkit-mask-image: var(--treeitem-expanded-icon);
  -webkit-mask-image: var(--treeitem-expanded-icon);
  mask-image: var(--treeitem-expanded-icon);
  display: inline-block;
  position: absolute;
  inset-inline-end: 4px;
  -webkit-mask-size: cover;
  mask-size: cover;
}

.treeView.withNesting .treeItemToggler {
  float: inline-start;
  color: #ffffff80;
  width: 0;
  height: 0;
  position: relative;
}

.treeItemsHidden:is(.treeView.withNesting .treeItemToggler):before {
  -webkit-mask-image: var(--treeitem-collapsed-icon);
  -webkit-mask-image: var(--treeitem-collapsed-icon);
  mask-image: var(--treeitem-collapsed-icon);
  transform: scaleX(var(--dir-factor));
}

.treeItemsHidden:is(.treeView.withNesting .treeItemToggler) ~ .treeItems {
  display: none;
}

:is(.treeView.withNesting .treeItemToggler):hover + a, :is(.treeView.withNesting .treeItemToggler):hover ~ .treeItems {
  background-color: var(--treeitem-bg-color);
  color: var(--treeitem-hover-color);
  background-clip: padding-box;
  border-radius: 2px;
}

.treeView.withNesting > .treeItem, .treeView.withNesting .treeItem > .treeItems {
  margin-inline-start: 20px;
}

:is(#layersView.treeView .treeItem > a) * {
  cursor: pointer;
}

:is(#layersView.treeView .treeItem > a) > label {
  align-items: center;
  padding-inline-start: 4px;
  display: flex;
}

:is(:is(#layersView.treeView .treeItem > a) > label) > input {
  margin-top: 1px;
}

:is(.treeView .treeItem) > a {
  min-width: calc(100% - 4px);
  height: auto;
  color: var(--treeitem-color);
  -webkit-user-select: none;
  user-select: none;
  white-space: normal;
  cursor: default;
  border-radius: 2px;
  margin-bottom: 1px;
  padding: 2px 0 5px;
  padding-inline-start: 4px;
  font-size: 13px;
  line-height: 15px;
  text-decoration: none;
  display: inline-block;
}

:is(:is(.treeView .treeItem) > a):hover {
  background-color: var(--treeitem-bg-color);
  color: var(--treeitem-hover-color);
  background-clip: padding-box;
  border-radius: 2px;
}

.selected:is(.treeView .treeItem) > a {
  background-color: var(--treeitem-selected-bg-color);
  color: var(--treeitem-selected-color);
}

#outerContainer.viewsManagerMoving #viewsManager {
  visibility: visible;
}

#outerContainer.viewsManagerOpen #viewsManager {
  visibility: visible;
  inset-inline-start: 8px;
}

#outerContainer.viewsManagerOpen #viewerContainer:not(.pdfPresentationMode) {
  transition-property: inset-inline-start;
  inset-inline-start: var(--viewsManager-width, 0);
}

#outerContainer.viewsManagerResizing :is(#sidebarContainer, #viewerContainer, #loadingBar) {
  transition-duration: 0s;
}

#viewsManager {
  --views-manager-button-icon: url("../media/pages_viewButton.0.z~8hanq9qo5.svg");
  --views-manager-button-arrow-icon: url("../media/pages_viewArrow.0v-igw6kkf1c..svg");
  --views-manager-add-file-button-icon: url("../media/toolbarButton-zoomIn.0ji4g7pe7s1re.svg");
  --current-outline-button-icon: url("../media/toolbarButton-currentOutlineItem.0enw2u8_vd-8..svg");
  --menuitem-thumbnailsView-icon: url("../media/pages_viewButton.0.z~8hanq9qo5.svg");
  --menuitem-outlinesView-icon: url("../media/toolbarButton-viewOutline.00kc~kmzht_gq.svg");
  --menuitem-attachmentsView-icon: url("../media/toolbarButton-viewAttachments.0wr1..qhfn~mc.svg");
  --menuitem-layersView-icon: url("../media/toolbarButton-viewLayers.11a.ygzxzoom7.svg");
  --manage-button-icon: url("../media/toolbarButton-pageDown.0n1yvj-f0flkn.svg");
  --close-button-icon: url("../media/pages_closeButton.0xe.0xdkpyx81.svg");
  --undo-label-icon: url("../media/altText_done.09w1jqvk3ga77.svg");
  --pages-selected-icon: url("../media/pages_selected.0257p5hhb641w.svg");
  --spinner-icon: url("../media/altText_spinner.011~3weg7vxwh.svg");
  --csstools-light-dark-toggle--106: var(--csstools-color-scheme--light) #42414deb;
  --sidebar-bg-color: var(--csstools-light-dark-toggle--106, #ffffffeb);
  --sidebar-backdrop-filter: blur(7px);
  --sidebar-width: 230px;
  --sidebar-min-width: min-content;
  --sidebar-max-width: 50vw;
  --sidebar-block-padding: 8px;
  --csstools-light-dark-toggle--107: var(--csstools-color-scheme--light) #fbfbfe;
  --text-color: var(--csstools-light-dark-toggle--107, #15141a);
  --button-fg: var(--text-color);
  --button-no-bg: transparent;
  --csstools-light-dark-toggle--108: var(--csstools-color-scheme--light) #fbfbfe12;
  --button-bg: var(--csstools-light-dark-toggle--108, #15141a12);
  --button-border-color: transparent;
  --csstools-light-dark-toggle--109: var(--csstools-color-scheme--light) #fbfbfe24;
  --button-hover-bg: var(--csstools-light-dark-toggle--109, #15141a24);
  --button-hover-fg: var(--text-color);
  --button-hover-border-color: var(--button-border-color);
  --csstools-light-dark-toggle--110: var(--csstools-color-scheme--light) #fbfbfe36;
  --button-active-bg: var(--csstools-light-dark-toggle--110, #15141a36);
  --button-active-fg: var(--text-color);
  --button-active-border-color: var(--button-border-color);
  --button-focus-no-bg: color-mix(in srgb, var(--text-color), transparent 93%);
  --csstools-light-dark-toggle--111: var(--csstools-color-scheme--light) #00cadb;
  --button-focus-outline-color: var(--csstools-light-dark-toggle--111, #0062fa);
  --csstools-light-dark-toggle--112: var(--csstools-color-scheme--light) black;
  --button-focus-border-color: var(--csstools-light-dark-toggle--112, white);
  --status-border-color: transparent;
  --csstools-light-dark-toggle--113: var(--csstools-color-scheme--light) #fbfbfe08;
  --status-actions-bg: var(--csstools-light-dark-toggle--113, #15141a08);
  --csstools-light-dark-toggle--114: var(--csstools-color-scheme--light) #00cadb14;
  --status-undo-bg: var(--csstools-light-dark-toggle--114, #0062fa14);
  --status-waiting-bg: var(--status-undo-bg);
  --csstools-light-dark-toggle--115: var(--csstools-color-scheme--light) #00cadb;
  --indicator-color: var(--csstools-light-dark-toggle--115, #0062fa);
  --csstools-light-dark-toggle--116: var(--csstools-color-scheme--light) #6e001f;
  --status-warning-bg: var(--csstools-light-dark-toggle--116, #ffe8ea);
  --csstools-light-dark-toggle--117: var(--csstools-color-scheme--light) #ffa0aa;
  --indicator-warning-color: var(--csstools-light-dark-toggle--117, #b20037);
  --csstools-light-dark-toggle--118: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--119: var(--csstools-color-scheme--light) #0006;
  --header-shadow: 0 .25px .75px -.75px var(--csstools-light-dark-toggle--118, #0000000d), 0 2px 6px -6px var(--csstools-light-dark-toggle--119, #0000001a);
  --csstools-light-dark-toggle--120: var(--csstools-color-scheme--light) #42414e;
  --header-bg: var(--csstools-light-dark-toggle--120, #ffffffeb);
  --image-outline: none;
  --image-border-width: 6px;
  --csstools-light-dark-toggle--121: var(--csstools-color-scheme--light) #3a3944;
  --image-border-color: var(--csstools-light-dark-toggle--121, #cfcfd8);
  --image-hover-border-color: #bfbfc9;
  --image-current-border-color: var(--button-focus-outline-color);
  --image-current-focused-outline-color: var(--image-hover-border-color);
  --csstools-light-dark-toggle--122: var(--csstools-color-scheme--light) #42414d;
  --image-page-number-bg: var(--csstools-light-dark-toggle--122, #f0f0f4);
  --image-page-number-fg: var(--text-color);
  --image-page-number-border-color: transparent;
  --image-hover-page-number-bg: var(--image-page-number-bg);
  --image-hover-page-number-fg: var(--image-page-number-fg);
  --image-current-page-number-bg: var(--image-current-border-color);
  --csstools-light-dark-toggle--123: var(--csstools-color-scheme--light) #15141a;
  --image-current-page-number-fg: var(--csstools-light-dark-toggle--123, #fff);
  --image-current-hover-page-number-bg: var(--image-current-page-number-bg);
  --image-current-hover-page-number-fg: var(--image-current-page-number-fg);
  --csstools-light-dark-toggle--124: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--125: var(--csstools-color-scheme--light) #0006;
  --image-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--124, #0000000d), 0 0 0 1px var(--image-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--125, #0000001a);
  --csstools-light-dark-toggle--126: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--127: var(--csstools-color-scheme--light) #fbfbfe1a;
  --csstools-light-dark-toggle--128: var(--csstools-color-scheme--light) #0006;
  --image-hover-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--126, #0000000d), 0 0 0 1px var(--csstools-light-dark-toggle--127, #15141a1a), 0 0 0 var(--image-border-width) var(--image-hover-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--128, #0000001a);
  --csstools-light-dark-toggle--129: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--130: var(--csstools-color-scheme--light) #0006;
  --image-current-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--129, #0000000d), 0 0 0 var(--image-border-width) var(--image-current-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--130, #0000001a);
  --csstools-light-dark-toggle--131: var(--csstools-color-scheme--light) #00cadb14;
  --image-dragging-placeholder-bg: var(--csstools-light-dark-toggle--131, #0062fa14);
  --image-dragging-placeholder-border: var(--image-outline);
  --multiple-dragging-bg: white;
  --image-multiple-dragging-shadow: 0 0 0 var(--image-border-width) var(--image-current-border-color), var(--image-border-width) var(--image-border-width) 0 calc(var(--image-border-width) / 2) var(--multiple-dragging-bg), var(--image-border-width) var(--image-border-width) 0 calc(3 * var(--image-border-width) / 2) var(--image-current-border-color);
  --image-dragging-shadow: 0 0 0 var(--image-border-width) var(--image-current-border-color);
  --multiple-dragging-indicator-bg: var(--indicator-color);
  --csstools-light-dark-toggle--132: var(--csstools-color-scheme--light) #15141a;
  --multiple-dragging-text-color: var(--csstools-light-dark-toggle--132, #fbfbfe);
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #viewsManager {
    --sidebar-bg-color: light-dark(#ffffffeb, #42414deb);
  }
}

@supports (color: light-dark(red, red)) {
  #viewsManager {
    --text-color: light-dark(#15141a, #fbfbfe);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #viewsManager {
    --button-bg: light-dark(#15141a12, #fbfbfe12);
    --button-hover-bg: light-dark(#15141a24, #fbfbfe24);
    --button-active-bg: light-dark(#15141a36, #fbfbfe36);
  }
}

@supports (color: light-dark(red, red)) {
  #viewsManager {
    --button-focus-outline-color: light-dark(#0062fa, #00cadb);
    --button-focus-border-color: light-dark(#fff, #000);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #viewsManager {
    --status-actions-bg: light-dark(#15141a08, #fbfbfe08);
    --status-undo-bg: light-dark(#0062fa14, #00cadb14);
  }
}

@supports (color: light-dark(red, red)) {
  #viewsManager {
    --indicator-color: light-dark(#0062fa, #00cadb);
    --status-warning-bg: light-dark(#ffe8ea, #6e001f);
    --indicator-warning-color: light-dark(#b20037, #ffa0aa);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #viewsManager {
    --header-shadow: 0 .25px .75px -.75px light-dark(#0000000d, #0003), 0 2px 6px -6px light-dark(#0000001a, #0006);
    --header-bg: light-dark(#ffffffeb, #42414e);
  }
}

@supports (color: light-dark(red, red)) {
  #viewsManager {
    --image-border-color: light-dark(#cfcfd8, #3a3944);
    --image-page-number-bg: light-dark(#f0f0f4, #42414d);
    --image-current-page-number-fg: light-dark(#fff, #15141a);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  #viewsManager {
    --image-shadow: 0 .375px 1.5px 0 light-dark(#0000000d, #0003), 0 0 0 1px var(--image-border-color), 0 3px 12px 0 light-dark(#0000001a, #0006);
    --image-hover-shadow: 0 .375px 1.5px 0 light-dark(#0000000d, #0003), 0 0 0 1px light-dark(#15141a1a, #fbfbfe1a), 0 0 0 var(--image-border-width) var(--image-hover-border-color), 0 3px 12px 0 light-dark(#0000001a, #0006);
    --image-current-shadow: 0 .375px 1.5px 0 light-dark(#0000000d, #0003), 0 0 0 var(--image-border-width) var(--image-current-border-color), 0 3px 12px 0 light-dark(#0000001a, #0006);
    --image-dragging-placeholder-bg: light-dark(#0062fa14, #00cadb14);
  }
}

@supports (color: light-dark(red, red)) {
  #viewsManager {
    --multiple-dragging-text-color: light-dark(#fbfbfe, #15141a);
  }
}

@supports not (color: light-dark(tan, tan)) {
  #viewsManager * {
    --csstools-light-dark-toggle--106: var(--csstools-color-scheme--light) #42414deb;
    --sidebar-bg-color: var(--csstools-light-dark-toggle--106, #ffffffeb);
    --csstools-light-dark-toggle--107: var(--csstools-color-scheme--light) #fbfbfe;
    --text-color: var(--csstools-light-dark-toggle--107, #15141a);
    --csstools-light-dark-toggle--108: var(--csstools-color-scheme--light) #fbfbfe12;
    --button-bg: var(--csstools-light-dark-toggle--108, #15141a12);
    --csstools-light-dark-toggle--109: var(--csstools-color-scheme--light) #fbfbfe24;
    --button-hover-bg: var(--csstools-light-dark-toggle--109, #15141a24);
    --csstools-light-dark-toggle--110: var(--csstools-color-scheme--light) #fbfbfe36;
    --button-active-bg: var(--csstools-light-dark-toggle--110, #15141a36);
    --csstools-light-dark-toggle--111: var(--csstools-color-scheme--light) #00cadb;
    --button-focus-outline-color: var(--csstools-light-dark-toggle--111, #0062fa);
    --csstools-light-dark-toggle--112: var(--csstools-color-scheme--light) black;
    --button-focus-border-color: var(--csstools-light-dark-toggle--112, white);
    --csstools-light-dark-toggle--113: var(--csstools-color-scheme--light) #fbfbfe08;
    --status-actions-bg: var(--csstools-light-dark-toggle--113, #15141a08);
    --csstools-light-dark-toggle--114: var(--csstools-color-scheme--light) #00cadb14;
    --status-undo-bg: var(--csstools-light-dark-toggle--114, #0062fa14);
    --csstools-light-dark-toggle--115: var(--csstools-color-scheme--light) #00cadb;
    --indicator-color: var(--csstools-light-dark-toggle--115, #0062fa);
    --csstools-light-dark-toggle--116: var(--csstools-color-scheme--light) #6e001f;
    --status-warning-bg: var(--csstools-light-dark-toggle--116, #ffe8ea);
    --csstools-light-dark-toggle--117: var(--csstools-color-scheme--light) #ffa0aa;
    --indicator-warning-color: var(--csstools-light-dark-toggle--117, #b20037);
    --csstools-light-dark-toggle--118: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--119: var(--csstools-color-scheme--light) #0006;
    --header-shadow: 0 .25px .75px -.75px var(--csstools-light-dark-toggle--118, #0000000d), 0 2px 6px -6px var(--csstools-light-dark-toggle--119, #0000001a);
    --csstools-light-dark-toggle--120: var(--csstools-color-scheme--light) #42414e;
    --header-bg: var(--csstools-light-dark-toggle--120, #ffffffeb);
    --csstools-light-dark-toggle--121: var(--csstools-color-scheme--light) #3a3944;
    --image-border-color: var(--csstools-light-dark-toggle--121, #cfcfd8);
    --csstools-light-dark-toggle--122: var(--csstools-color-scheme--light) #42414d;
    --image-page-number-bg: var(--csstools-light-dark-toggle--122, #f0f0f4);
    --csstools-light-dark-toggle--123: var(--csstools-color-scheme--light) #15141a;
    --image-current-page-number-fg: var(--csstools-light-dark-toggle--123, #fff);
    --csstools-light-dark-toggle--124: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--125: var(--csstools-color-scheme--light) #0006;
    --image-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--124, #0000000d), 0 0 0 1px var(--image-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--125, #0000001a);
    --csstools-light-dark-toggle--126: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--127: var(--csstools-color-scheme--light) #fbfbfe1a;
    --csstools-light-dark-toggle--128: var(--csstools-color-scheme--light) #0006;
    --image-hover-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--126, #0000000d), 0 0 0 1px var(--csstools-light-dark-toggle--127, #15141a1a), 0 0 0 var(--image-border-width) var(--image-hover-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--128, #0000001a);
    --csstools-light-dark-toggle--129: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--130: var(--csstools-color-scheme--light) #0006;
    --image-current-shadow: 0 .375px 1.5px 0 var(--csstools-light-dark-toggle--129, #0000000d), 0 0 0 var(--image-border-width) var(--image-current-border-color), 0 3px 12px 0 var(--csstools-light-dark-toggle--130, #0000001a);
    --csstools-light-dark-toggle--131: var(--csstools-color-scheme--light) #00cadb14;
    --image-dragging-placeholder-bg: var(--csstools-light-dark-toggle--131, #0062fa14);
    --csstools-light-dark-toggle--132: var(--csstools-color-scheme--light) #15141a;
    --multiple-dragging-text-color: var(--csstools-light-dark-toggle--132, #fbfbfe);
  }
}

@media screen and (forced-colors: active) {
  #viewsManager {
    --text-color: CanvasText;
    --button-fg: ButtonText;
    --button-bg: ButtonFace;
    --button-no-bg: ButtonFace;
    --button-border-color: ButtonText;
    --button-hover-bg: SelectedItemText;
    --button-hover-fg: SelectedItem;
    --button-hover-border-color: SelectedItem;
    --button-active-bg: SelectedItemText;
    --button-active-fg: SelectedItem;
    --button-active-border-color: ButtonText;
    --button-focus-no-bg: ButtonFace;
    --button-focus-outline-color: CanvasText;
    --button-focus-border-color: none;
    --status-border-color: CanvasText;
    --status-undo-bg: none;
    --indicator-color: CanvasText;
    --status-warning-bg: none;
    --indicator-warning-color: CanvasText;
    --header-shadow: none;
    --image-shadow: none;
    --image-outline: 1px solid ButtonText;
    --image-focus-outline-color: CanvasText;
    --image-hover-border-color: SelectedItem;
    --image-hover-page-number-bg: SelectedItemText;
    --image-hover-page-number-fg: SelectedItem;
    --image-current-page-number-bg: ButtonText;
    --image-current-page-number-fg: ButtonFace;
    --image-current-border-color: ButtonText;
    --image-current-focused-outline-color: var(--image-hover-border-color);
    --image-current-hover-page-number-bg: SelectedItem;
    --image-current-hover-page-number-fg: SelectedItemText;
    --image-page-number-bg: ButtonFace;
    --image-page-number-fg: ButtonText;
    --image-page-number-border-color: var(--image-page-number-fg);
    --multiple-dragging-bg: Canvas;
    --multiple-dragging-indicator-bg: ButtonBorder;
    --multiple-dragging-text-color: Canvas;
    --image-dragging-placeholder-bg: Canvas;
    --image-dragging-placeholder-border: 1px GrayText solid;
  }
}

#viewsManager {
  height: calc(var(--viewer-container-height) - 2 * var(--sidebar-block-padding));
  transition-property: inset-inline-start;
  transition-duration: var(--sidebar-transition-duration);
  transition-timing-function: var(--sidebar-transition-timing-function);
  flex-direction: column;
  align-items: flex-start;
  padding-bottom: 16px;
  display: flex;
  position: absolute;
  inset-block-start: calc(100% + var(--sidebar-block-padding));
  inset-inline-start: calc(-1 * var(--viewsManager-width, --sidebar-width) - 1px);
}

#viewsManager .sidebarResizer {
  inset-inline-start: calc(100% + 4px);
}

#viewsManager .viewsManagerButton {
  width: auto;
  color: var(--button-fg);
  border: 1px solid var(--button-border-color);
  background: var(--button-bg);
  border-radius: 8px;
}

:is(#viewsManager .viewsManagerButton):hover {
  background-color: var(--button-hover-bg) !important;
  color: var(--button-hover-fg) !important;
  border-color: var(--button-hover-border-color) !important;
}

:is(#viewsManager .viewsManagerButton):hover:before {
  background-color: var(--button-hover-fg) !important;
}

:is(#viewsManager .viewsManagerButton):active {
  background: var(--button-active-bg) !important;
  color: var(--button-active-fg) !important;
  border-color: var(--button-active-border-color) !important;
}

:is(#viewsManager .viewsManagerButton):active:before {
  background-color: var(--button-active-fg) !important;
}

:is(#viewsManager .viewsManagerButton):focus-visible {
  outline: 2px solid var(--button-focus-outline-color);
  outline-offset: 2px;
  border-color: var(--button-focus-border-color);
}

.viewsCloseButton:is(#viewsManager .viewsManagerButton) {
  background: none;
  border-radius: 8px;
  width: 26px;
  height: 26px;
  padding: 4px;
}

.viewsCloseButton:is(#viewsManager .viewsManagerButton):before {
  -webkit-mask-image: var(--close-button-icon);
  -webkit-mask-image: var(--close-button-icon);
  mask-image: var(--close-button-icon);
}

#viewsManager #viewsManagerHeader {
  width: 100%;
  box-shadow: var(--header-shadow);
  background-color: var(--header-bg);
  flex-direction: column;
  flex: none;
  align-self: stretch;
  align-items: flex-start;
  display: flex;
}

:is(#viewsManager #viewsManagerHeader) .viewsManagerLabel {
  color: var(--text-color);
  text-align: center;
  -webkit-user-select: none;
  user-select: none;
  width: fit-content;
  height: fit-content;
  font: menu;
  flex: auto;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle {
  flex-direction: row;
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  width: auto;
  padding: 12px 16px 12px 8px;
  display: flex;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle):not(:has(#viewsManagerHeaderLabel ~ button:not([hidden]))):after {
  content: "";
  pointer-events: none;
  flex: none;
  width: 32px;
  height: 32px;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector {
  width: 48px;
  height: 32px;
  display: block;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button {
  background: var(--button-no-bg);
  width: 100%;
  height: 100%;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):focus-visible {
  background-color: var(--button-focus-no-bg);
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):before {
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--views-manager-button-icon);
  -webkit-mask-image: var(--views-manager-button-icon);
  mask-image: var(--views-manager-button-icon);
  background-color: var(--button-fg);
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):after {
  content: "";
  width: 12px;
  height: 12px;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--views-manager-button-arrow-icon);
  -webkit-mask-image: var(--views-manager-button-arrow-icon);
  mask-image: var(--views-manager-button-arrow-icon);
  background-color: var(--button-fg);
  margin-left: 8px;
  display: inline-block;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):hover:before, :is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):hover:after {
  background-color: var(--button-hover-fg) !important;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):active:before, :is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > button):active:after {
  background-color: var(--button-active-fg) !important;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > .popupMenu {
  z-index: 1;
  min-width: 182px;
}

#thumbnailsViewMenu:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > .popupMenu) > button):before {
  -webkit-mask-image: var(--menuitem-thumbnailsView-icon);
  -webkit-mask-image: var(--menuitem-thumbnailsView-icon);
  mask-image: var(--menuitem-thumbnailsView-icon);
}

#outlinesViewMenu:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > .popupMenu) > button):before {
  -webkit-mask-image: var(--menuitem-outlinesView-icon);
  -webkit-mask-image: var(--menuitem-outlinesView-icon);
  mask-image: var(--menuitem-outlinesView-icon);
}

#attachmentsViewMenu:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > .popupMenu) > button):before {
  -webkit-mask-image: var(--menuitem-attachmentsView-icon);
  -webkit-mask-image: var(--menuitem-attachmentsView-icon);
  mask-image: var(--menuitem-attachmentsView-icon);
}

#layersViewMenu:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerSelector) > .popupMenu) > button):before {
  -webkit-mask-image: var(--menuitem-layersView-icon);
  -webkit-mask-image: var(--menuitem-layersView-icon);
  mask-image: var(--menuitem-layersView-icon);
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerAddFileButton {
  background: var(--button-no-bg);
  width: 32px;
  height: 32px;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerAddFileButton):focus-visible {
  background-color: var(--button-focus-no-bg);
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerAddFileButton):before {
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--views-manager-add-file-button-icon);
  -webkit-mask-image: var(--views-manager-add-file-button-icon);
  mask-image: var(--views-manager-add-file-button-icon);
  background-color: var(--button-fg);
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerAddFileButton) > input {
  display: none;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerCurrentOutlineButton {
  background: var(--button-no-bg);
  width: 32px;
  height: 32px;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerCurrentOutlineButton):focus-visible {
  background-color: var(--button-focus-no-bg);
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerTitle) #viewsManagerCurrentOutlineButton):before {
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--current-outline-button-icon);
  -webkit-mask-image: var(--current-outline-button-icon);
  mask-image: var(--current-outline-button-icon);
  background-color: var(--button-fg);
}

:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus {
  border: 1px solid var(--status-border-color);
  width: 100%;
  display: grid;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) > div {
  box-sizing: border-box;
  grid-area: 1 / 1;
  width: 100%;
  min-height: 64px;
  padding-inline: 16px;
}

.hidden:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) > div) {
  visibility: hidden;
  display: unset !important;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) .viewsManagerStatusLabel {
  font: menu;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: flex;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction {
  background-color: var(--status-actions-bg);
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  display: flex;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #viewsManagerStatusActionLabelContainer > button {
  width: var(--icon-size);
  height: var(--icon-size);
  border: none;
  flex: none;
  padding: 0;
  position: relative;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #viewsManagerStatusActionLabelContainer > button):before {
  content: "";
  background-color: var(--indicator-color);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--pages-selected-icon);
  -webkit-mask-image: var(--pages-selected-icon);
  mask-image: var(--pages-selected-icon);
  position: absolute;
  inset: 0;
}

#viewsManagerStatusActionDeselectButton:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #viewsManagerStatusActionLabelContainer > button):focus-visible {
  outline: 2px solid var(--button-focus-outline-color);
  border: 1px solid var(--button-focus-border-color);
  outline-offset: 1px;
  border-radius: 2px;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector {
  width: auto;
  min-width: 115px;
  height: 32px;
  display: block;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector) #viewsManagerStatusActionButton {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 100%;
  padding: 4px 16px;
  display: flex;
}

:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector) #viewsManagerStatusActionButton):after {
  content: "";
  width: var(--icon-size);
  height: var(--icon-size);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--manage-button-icon);
  -webkit-mask-image: var(--manage-button-icon);
  mask-image: var(--manage-button-icon);
  background-color: var(--button-fg);
  display: inline-block;
}

:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector) #viewsManagerStatusActionButton):hover:after {
  background-color: var(--button-hover-fg) !important;
}

:is(:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector) #viewsManagerStatusActionButton):active:after {
  background-color: var(--button-active-fg) !important;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusAction) #actionSelector) > .popupMenu {
  z-index: 1;
  width: 100%;
  min-width: fit-content;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusUndo {
  background-color: var(--status-undo-bg);
  justify-content: space-between;
  align-self: stretch;
  align-items: center;
  display: flex;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusUndo) > span:before {
  content: "";
  width: var(--icon-size);
  height: var(--icon-size);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--undo-label-icon);
  -webkit-mask-image: var(--undo-label-icon);
  mask-image: var(--undo-label-icon);
  background-color: var(--indicator-color);
  display: inline-block;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusUndo) > div {
  align-items: center;
  gap: 8px;
  width: auto;
  display: flex;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusUndo) > div) #viewsManagerStatusUndoButton {
  width: auto;
  min-height: 24px;
  padding: 4px 8px;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusWarning {
  background-color: var(--status-warning-bg);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusWarning) > span {
  align-items: flex-start;
}

:is(:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusWarning) > span):before {
  content: "";
  width: var(--icon-size);
  height: var(--icon-size);
  background-color: var(--indicator-warning-color);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--undo-label-icon);
  -webkit-mask-image: var(--undo-label-icon);
  mask-image: var(--undo-label-icon);
  flex: none;
  display: inline-block;
}

:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusWaiting {
  background-color: var(--status-waiting-bg);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

:is(:is(:is(#viewsManager #viewsManagerHeader) #viewsManagerStatus) #viewsManagerStatusWaiting) > span:before {
  content: "";
  width: var(--icon-size);
  height: var(--icon-size);
  background-color: var(--indicator-color);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--spinner-icon);
  -webkit-mask-image: var(--spinner-icon);
  mask-image: var(--spinner-icon);
  flex: none;
  display: inline-block;
}

#viewsManager #viewsManagerContent {
  flex: 1;
  width: 100%;
  overflow: auto;
}

:is(#viewsManager #viewsManagerContent):has(#thumbnailsView.isDragging) {
  overflow-x: hidden;
}

:is(#viewsManager #viewsManagerContent) #thumbnailsView {
  --thumbnail-width: 126px;
  --gap-between-input-and-thumbnail: 16px;
  box-sizing: border-box;
  flex-flow: wrap;
  justify-content: space-evenly;
  align-items: center;
  gap: 44px;
  width: 100%;
  padding: 20px 32px;
  display: flex;
  position: relative;
}

.isDragging:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView), :is(.isDragging:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer:hover {
  cursor: grabbing;
}

:is(:is(.isDragging:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer:hover):not([aria-current="page"]) {
  box-shadow: var(--image-shadow);
}

:is(.isDragging:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > input {
  pointer-events: none;
}

.isDragging:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .dragMarker {
  border: 2px solid var(--indicator-color);
  contain: strict;
  position: absolute;
  top: 0;
  left: 0;
}

.pasteMode:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) {
  gap: var(--gap-between-input-and-thumbnail);
}

.pasteMode:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail {
  flex-direction: column;
}

:is(.pasteMode:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > input {
  display: none;
}

:is(.pasteMode:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailPasteButton {
  min-height: 24px;
  font: menu;
  border-radius: 16px;
  justify-content: center;
  align-items: center;
  padding: 4px 16px;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  display: flex;
}

:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView):not(.pasteMode) > .thumbnail > .thumbnailPasteButton {
  display: none;
}

:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail {
  --input-dim: 16px;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail):not(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail):has(input)) {
  --input-dim: 0px;
  --gap-between-input-and-thumbnail: 0px;
}

:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail {
  justify-content: flex-end;
  align-items: center;
  gap: var(--gap-between-input-and-thumbnail);
  width: calc(var(--thumbnail-width) + 2 *
            (var(--input-dim) + var(--gap-between-input-and-thumbnail)));
  flex-direction: row-reverse;
  height: auto;
  scroll-margin-top: 20px;
  display: inline-flex;
  position: relative;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) .thumbnailPasteButton {
  text-align: center;
  padding: 8px 0;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail):not(.isDragging) > .thumbnailImageContainer:after {
  content: attr(page-number);
  border: 1px solid var(--image-page-number-border-color);
  background-color: var(--image-page-number-bg);
  color: var(--image-page-number-fg);
  bottom: 5px;
  text-align: center;
  box-sizing: content-box;
  min-width: 32px;
  height: 16px;
  translate: calc(var(--dir-factor) * 50%);
  font: menu;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 8px;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  position: absolute;
  inset-inline-end: 50%;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail):has([aria-current="page"]):not(.isDragging) > .thumbnailImageContainer:after {
  background-color: var(--image-current-page-number-bg);
  color: var(--image-current-page-number-fg);
  outline: 1px solid var(--image-current-border-color);
}

.isDragging:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > input {
  visibility: hidden;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > input {
  width: var(--input-dim);
  height: var(--input-dim);
  accent-color: var(--indicator-color);
  margin: 0;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer {
  --thumbnail-dragging-scale: 1.4;
  width: var(--thumbnail-width);
  box-shadow: var(--image-shadow);
  box-sizing: content-box;
  outline: var(--image-outline);
  -webkit-user-select: none;
  user-select: none;
  border: none;
  border-radius: 8px;
  position: relative;
}

:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) img {
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
  border: none;
  border-radius: 8px;
  outline: none;
  width: 100%;
  height: 100%;
}

.missingThumbnailImage:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
  content-visibility: hidden;
}

:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):hover {
  cursor: pointer;
  box-shadow: var(--image-hover-shadow);
}

:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):hover:after {
  background-color: var(--image-hover-page-number-bg);
  color: var(--image-hover-page-number-fg);
}

@media screen and (forced-colors: active) {
  :is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):hover {
    box-shadow: none;
    outline: var(--image-border-width) var(--image-hover-border-color) solid;
  }
}

:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible:not([aria-current="page"]) {
  box-shadow: var(--image-hover-shadow);
  outline: none;
}

@media screen and (forced-colors: active) {
  :is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible:not([aria-current="page"]) {
    box-shadow: none;
    outline: var(--image-border-width) var(--image-focus-outline-color) solid;
  }
}

[aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible {
  outline: var(--image-border-width) solid var(--image-current-focused-outline-color);
  outline-offset: var(--image-border-width);
}

@media screen and (forced-colors: active) {
  [aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible {
    box-shadow: none;
    outline: var(--image-border-width) var(--image-current-border-color) solid;
    outline-offset: 0;
  }

  [aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible > img {
    outline: var(--image-border-width) var(--image-focus-outline-color) solid;
    outline-offset: var(--image-border-width);
  }

  :is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible {
    box-shadow: none;
    outline: var(--image-border-width) var(--image-current-border-color) solid;
  }

  :is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):focus-visible:hover > img {
    outline: var(--image-border-width) var(--image-hover-border-color) solid;
    outline-offset: var(--image-border-width);
  }
}

[aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
  box-shadow: var(--image-current-shadow);
}

[aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):hover:after {
  background-color: var(--image-current-hover-page-number-bg);
  color: var(--image-current-hover-page-number-fg);
}

@media screen and (forced-colors: active) {
  [aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
    box-shadow: none;
    outline: var(--image-border-width) var(--image-current-border-color) solid;
  }

  [aria-current="page"]:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):hover > img {
    outline: var(--image-border-width) var(--image-hover-border-color) solid;
    outline-offset: var(--image-border-width);
  }
}

.placeholder:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
  background-color: var(--image-dragging-placeholder-bg);
  outline: var(--image-dragging-placeholder-border);
  box-shadow: none !important;
}

.draggingThumbnail:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
  z-index: 1;
  transform-origin: 0 0 0;
  scale: calc(1 / var(--thumbnail-dragging-scale));
  pointer-events: none;
  box-shadow: var(--image-dragging-shadow);
  position: absolute;
  top: 0;
  left: 0;
}

.draggingThumbnail.multiple:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
  box-shadow: var(--image-multiple-dragging-shadow);
}

@media screen and (forced-colors: active) {
  .draggingThumbnail.multiple:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) {
    forced-color-adjust: none;
    box-shadow: var(--image-multiple-dragging-shadow);
  }
}

.draggingThumbnail.multiple:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer) > .thumbnailImageContainer {
  width: var(--thumbnail-width);
  box-sizing: content-box;
  -webkit-user-select: none;
  user-select: none;
  border: none;
  border-radius: 8px;
  outline: none;
  position: absolute;
  top: 0;
  left: 0;
}

.draggingThumbnail.multiple:is(:is(:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail) > .thumbnailImageContainer):after {
  content: attr(data-multiple-count);
  border-radius: calc(8px * var(--thumbnail-dragging-scale));
  background-color: var(--multiple-dragging-indicator-bg);
  color: var(--multiple-dragging-text-color);
  min-width: calc(32px * var(--thumbnail-dragging-scale));
  height: calc(16px * var(--thumbnail-dragging-scale));
  text-align: center;
  font: menu;
  font-size: calc(13px * var(--thumbnail-dragging-scale));
  contain: strict;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  position: absolute;
  inset-block-end: calc(4px * var(--thumbnail-dragging-scale));
  inset-inline-start: calc(4px * var(--thumbnail-dragging-scale));
}

:is(#viewsManager #viewsManagerContent) #attachmentsView {
  --csstools-light-dark-toggle--133: var(--csstools-color-scheme--light) #fffc;
  --attachment-color: var(--csstools-light-dark-toggle--133, #000c);
  --csstools-light-dark-toggle--134: var(--csstools-color-scheme--light) #ffffff26;
  --attachment-bg-color: var(--csstools-light-dark-toggle--134, #00000026);
  --csstools-light-dark-toggle--135: var(--csstools-color-scheme--light) #ffffffe6;
  --attachment-hover-color: var(--csstools-light-dark-toggle--135, #000000e6);
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  :is(#viewsManager #viewsManagerContent) #attachmentsView {
    --attachment-color: light-dark(#000c, #fffc);
    --attachment-bg-color: light-dark(#00000026, #ffffff26);
    --attachment-hover-color: light-dark(#000000e6, #ffffffe6);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :is(:is(#viewsManager #viewsManagerContent) #attachmentsView) * {
    --csstools-light-dark-toggle--133: var(--csstools-color-scheme--light) #fffc;
    --attachment-color: var(--csstools-light-dark-toggle--133, #000c);
    --csstools-light-dark-toggle--134: var(--csstools-color-scheme--light) #ffffff26;
    --attachment-bg-color: var(--csstools-light-dark-toggle--134, #00000026);
    --csstools-light-dark-toggle--135: var(--csstools-color-scheme--light) #ffffffe6;
    --attachment-hover-color: var(--csstools-light-dark-toggle--135, #000000e6);
  }
}

:is(:is(#viewsManager #viewsManagerContent) #attachmentsView) > ul {
  padding: 0;
  list-style-type: none;
}

:is(:is(:is(#viewsManager #viewsManagerContent) #attachmentsView) > ul) > li > a {
  min-width: calc(100% - 4px);
  height: auto;
  color: var(--attachment-color);
  -webkit-user-select: none;
  user-select: none;
  white-space: normal;
  cursor: pointer;
  border-radius: 2px;
  margin-bottom: 1px;
  padding: 2px 0 5px;
  padding-inline-start: 4px;
  font-size: 13px;
  line-height: 15px;
  text-decoration: none;
  display: inline-block;
}

:is(:is(:is(:is(#viewsManager #viewsManagerContent) #attachmentsView) > ul) > li > a):hover {
  background-color: var(--attachment-bg-color);
  color: var(--attachment-hover-color);
  background-clip: padding-box;
  border-radius: 2px;
}

.sidebar {
  --csstools-light-dark-toggle--136: var(--csstools-color-scheme--light) #23222b;
  --sidebar-bg-color: var(--csstools-light-dark-toggle--136, #fff);
  --csstools-light-dark-toggle--137: var(--csstools-color-scheme--light) #fbfbfe1a;
  --sidebar-border-color: var(--csstools-light-dark-toggle--137, #15141a1a);
  --csstools-light-dark-toggle--138: var(--csstools-color-scheme--light) #0003;
  --csstools-light-dark-toggle--139: var(--csstools-color-scheme--light) #0006;
  --sidebar-box-shadow: 0 .25px .75px var(--csstools-light-dark-toggle--138, #0000000d), 0 2px 6px 0 var(--csstools-light-dark-toggle--139, #0000001a);
  --sidebar-backdrop-filter: none;
  --sidebar-border-radius: 8px;
  --sidebar-padding: 5px;
  --sidebar-min-width: 180px;
  --sidebar-max-width: 632px;
  --sidebar-width: 239px;
  --resizer-width: 4px;
  --resizer-shift: calc(0px - var(--resizer-width) - 2px);
  --csstools-light-dark-toggle--140: var(--csstools-color-scheme--light) #00cadb;
  --resizer-hover-bg-color: var(--csstools-light-dark-toggle--140, #0062fa);
}

@supports (color: light-dark(red, red)) {
  .sidebar {
    --sidebar-bg-color: light-dark(#fff, #23222b);
  }
}

@supports (color: light-dark(red, red)) and (color: rgb(0 0 0 / 0)) {
  .sidebar {
    --sidebar-border-color: light-dark(#15141a1a, #fbfbfe1a);
    --sidebar-box-shadow: 0 .25px .75px light-dark(#0000000d, #0003), 0 2px 6px 0 light-dark(#0000001a, #0006);
  }
}

@supports (color: light-dark(red, red)) {
  .sidebar {
    --resizer-hover-bg-color: light-dark(#0062fa, #00cadb);
  }
}

@supports not (color: light-dark(tan, tan)) {
  .sidebar * {
    --csstools-light-dark-toggle--136: var(--csstools-color-scheme--light) #23222b;
    --sidebar-bg-color: var(--csstools-light-dark-toggle--136, #fff);
    --csstools-light-dark-toggle--137: var(--csstools-color-scheme--light) #fbfbfe1a;
    --sidebar-border-color: var(--csstools-light-dark-toggle--137, #15141a1a);
    --csstools-light-dark-toggle--138: var(--csstools-color-scheme--light) #0003;
    --csstools-light-dark-toggle--139: var(--csstools-color-scheme--light) #0006;
    --sidebar-box-shadow: 0 .25px .75px var(--csstools-light-dark-toggle--138, #0000000d), 0 2px 6px 0 var(--csstools-light-dark-toggle--139, #0000001a);
    --csstools-light-dark-toggle--140: var(--csstools-color-scheme--light) #00cadb;
    --resizer-hover-bg-color: var(--csstools-light-dark-toggle--140, #0062fa);
  }
}

@media screen and (forced-colors: active) {
  .sidebar {
    --sidebar-bg-color: Canvas;
    --sidebar-border-color: CanvasText;
    --sidebar-box-shadow: none;
    --resizer-hover-bg-color: CanvasText;
  }
}

.sidebar {
  border-radius: var(--sidebar-border-radius);
  box-shadow: var(--sidebar-box-shadow);
  border: 1px solid var(--sidebar-border-color);
  background-color: var(--sidebar-bg-color);
  padding-block: var(--sidebar-padding);
  width: var(--sidebar-width);
  min-width: var(--sidebar-min-width);
  max-width: var(--sidebar-max-width);
  -webkit-backdrop-filter: var(--sidebar-backdrop-filter);
  backdrop-filter: var(--sidebar-backdrop-filter);
  box-sizing: border-box;
  position: relative;
  inset-block-start: calc(100% + var(--doorhanger-height) - 2px);
}

.sidebar .sidebarResizer {
  width: var(--resizer-width);
  forced-color-adjust: none;
  cursor: ew-resize;
  box-sizing: border-box;
  border: 1px solid #0000;
  background-color: #0000;
  background-clip: content-box;
  border-block-width: 0;
  transition: background-color .5s ease-in-out, border-color .5s ease-in-out;
  position: absolute;
  inset-block: 0;
  inset-inline-start: var(--resizer-shift);
}

:is(.sidebar .sidebarResizer):hover {
  background-color: var(--resizer-hover-bg-color);
  border-color: #fff;
}

:is(.sidebar .sidebarResizer):focus-visible {
  background-color: var(--resizer-hover-bg-color);
  outline: none;
}

.sidebar.resizing {
  cursor: ew-resize;
  -webkit-user-select: none;
  user-select: none;
}

.sidebar.resizing :not(.sidebarResizer) {
  pointer-events: none;
}

.sidebar.resizing .sidebarResizer {
  background-color: var(--resizer-hover-bg-color);
}

:root {
  --csstools-color-scheme--light: initial;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light dark;
  --viewer-container-height: 0;
  --pdfViewer-padding-bottom: 0;
  --page-margin: 1px auto -8px;
  --page-border: 9px solid transparent;
  --spreadHorizontalWrapped-margin-LR: -3.5px;
  --loading-icon-delay: .4s;
  --csstools-light-dark-toggle--141: var(--csstools-color-scheme--light) #0df;
  --focus-ring-color: var(--csstools-light-dark-toggle--141, #0060df);
  --focus-ring-outline: 2px solid var(--focus-ring-color);
  --csstools-light-dark-toggle--142: var(--csstools-color-scheme--light) #37b847;
  --new-badge-bg: var(--csstools-light-dark-toggle--142, #070);
  --csstools-light-dark-toggle--143: var(--csstools-color-scheme--light) #15141a;
  --new-badge-color: var(--csstools-light-dark-toggle--143, #fff);
  --new-badge-border-color: var(--lightningcss-light, #fbfbfe / 40%) var(--lightningcss-dark, #15141a / 40%);
}

@media (prefers-color-scheme: dark) {
  :root {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
  }
}

@supports (color: light-dark(red, red)) {
  :root {
    --focus-ring-color: light-dark(#0060df, #0df);
    --new-badge-bg: light-dark(#070, #37b847);
    --new-badge-color: light-dark(#fff, #15141a);
  }
}

@supports not (color: light-dark(tan, tan)) {
  :root * {
    --csstools-light-dark-toggle--141: var(--csstools-color-scheme--light) #0df;
    --focus-ring-color: var(--csstools-light-dark-toggle--141, #0060df);
    --csstools-light-dark-toggle--142: var(--csstools-color-scheme--light) #37b847;
    --new-badge-bg: var(--csstools-light-dark-toggle--142, #070);
    --csstools-light-dark-toggle--143: var(--csstools-color-scheme--light) #15141a;
    --new-badge-color: var(--csstools-light-dark-toggle--143, #fff);
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --csstools-color-scheme--light: ;
  }
}

@media screen and (forced-colors: active) {
  :root {
    --pdfViewer-padding-bottom: 9px;
    --page-margin: 8px auto -1px;
    --page-border: 1px solid CanvasText;
    --spreadHorizontalWrapped-margin-LR: 3.5px;
    --focus-ring-color: CanvasText;
    --new-badge-bg: AccentColor;
    --new-badge-color: ButtonFace;
    --new-badge-border-color: CanvasText;
  }
}

.newBadge {
  background-color: var(--new-badge-bg);
  color: var(--new-badge-color);
  border: 1px solid var(--new-badge-border-color);
  font: menu;
  flex: 0 0 fit-content;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 4px;
  margin-inline: 4px;
  padding-inline: 4px;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

[data-main-rotation="90"] {
  transform: rotate(90deg)translateY(-100%);
}

[data-main-rotation="180"] {
  transform: rotate(180deg)translate(-100%, -100%);
}

[data-main-rotation="270"] {
  transform: rotate(270deg)translateX(-100%);
}

#hiddenCopyElement, .hiddenCanvasElement {
  width: 0;
  height: 0;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

.pdfViewer {
  --scale-factor: 1;
  --page-bg-color: unset;
  padding-bottom: var(--pdfViewer-padding-bottom);
  --hcm-highlight-filter: none;
  --hcm-highlight-selected-filter: none;
}

@media screen and (forced-colors: active) {
  .pdfViewer {
    --hcm-highlight-filter: invert(100%);
  }
}

.pdfViewer.copyAll {
  cursor: wait;
}

.pdfViewer .canvasWrapper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

:is(.pdfViewer .canvasWrapper) canvas {
  contain: content;
  width: 100%;
  height: 100%;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

:is(:is(.pdfViewer .canvasWrapper) canvas) .structTree {
  contain: strict;
}

.detailView:is(:is(.pdfViewer .canvasWrapper) canvas) {
  image-rendering: pixelated;
}

.pdfViewer .page {
  --user-unit: 1;
  --total-scale-factor: calc(var(--scale-factor) * var(--user-unit));
  --scale-round-x: 1px;
  --scale-round-y: 1px;
  width: 816px;
  height: 1056px;
  margin: var(--page-margin);
  border: var(--page-border);
  background-clip: content-box;
  background-color: var(--page-bg-color, #fff);
  direction: ltr;
  position: relative;
  overflow: visible;
}

.pdfViewer .dummyPage {
  width: 0;
  height: var(--viewer-container-height);
  position: relative;
}

.pdfViewer.noUserSelect {
  -webkit-user-select: none;
  user-select: none;
}

.pdfViewer.removePageBorders .page {
  border: none;
  margin: 0 auto 10px;
}

.pdfViewer.singlePageView {
  display: inline-block;
}

.pdfViewer.singlePageView .page {
  border: none;
  margin: 0;
}

.pdfViewer:is(.scrollHorizontal, .scrollWrapped), .spread {
  text-align: center;
  margin-inline: 3.5px;
}

.pdfViewer.scrollHorizontal, .spread {
  white-space: nowrap;
}

.pdfViewer.removePageBorders, .pdfViewer:is(.scrollHorizontal, .scrollWrapped) .spread {
  margin-inline: 0;
}

.spread :is(.page, .dummyPage), .pdfViewer:is(.scrollHorizontal, .scrollWrapped) :is(.page, .spread) {
  vertical-align: middle;
  display: inline-block;
}

.spread .page, .pdfViewer:is(.scrollHorizontal, .scrollWrapped) .page {
  margin-inline: var(--spreadHorizontalWrapped-margin-LR);
}

.pdfViewer.removePageBorders .spread .page, .pdfViewer.removePageBorders:is(.scrollHorizontal, .scrollWrapped) .page {
  margin-inline: 5px;
}

.pdfViewer .page.loadingIcon:after {
  content: "";
  width: 100%;
  height: 100%;
  transition-property: display;
  transition-delay: var(--loading-icon-delay);
  z-index: 5;
  contain: strict;
  background: url("../media/loading-icon.0gtb0.n871aax.gif") center no-repeat;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

.pdfViewer .page.loading:after {
  display: block;
}

.pdfViewer .page:not(.loading):after {
  transition-property: none;
  display: none;
}

.pdfPresentationMode .pdfViewer {
  padding-bottom: 0;
}

.pdfPresentationMode .spread {
  margin: 0;
}

.pdfPresentationMode .pdfViewer .page {
  border: 2px solid #0000;
  margin: 0 auto;
}

/* [project]/packages/ui/src/document-viewer.css [app-client] (css) */
.documentViewerReviewTitle {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  font-size: 14px;
  line-height: 1.2;
  overflow: hidden;
}

.documentViewerReviewMeta {
  min-width: 0;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  overflow: hidden;
}

.documentViewerReviewIconButton {
  width: 44px;
  height: 44px;
  color: color-mix(in srgb, var(--fg), var(--muted) 16%);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 0;
  flex: none;
  place-items: center;
  display: inline-grid;
}

.documentViewerReviewGlyph {
  border-radius: 9px;
  place-items: center;
  width: 32px;
  height: 32px;
  transition: background-color .12s, color .12s;
  display: inline-grid;
}

.documentViewerReviewIconButton:hover:not(:disabled) {
  color: color-mix(in srgb, var(--fg), var(--focus) 18%);
  background: none;
}

.documentViewerReviewIconButton:hover:not(:disabled) .documentViewerReviewGlyph {
  background: color-mix(in srgb, var(--focus), white 95%);
}

.documentViewerReviewIconButton:focus-visible {
  outline: 0;
}

.documentViewerReviewIconButton:focus-visible .documentViewerReviewGlyph {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 64%);
}

.documentViewerCanvasStage:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 12%);
  outline-offset: -2px;
}

.documentViewerReviewIconButton:disabled {
  cursor: default;
  color: color-mix(in srgb, var(--muted), white 28%);
  background: none;
}

.documentViewerReviewIconButton.isDownload .documentViewerReviewGlyph {
  background: var(--focus);
  color: #fff;
}

.documentViewerReviewIconButton.isDownload:hover .documentViewerReviewGlyph {
  background: color-mix(in srgb, var(--focus), var(--fg) 12%);
  color: #fff;
}

.documentViewer.sharedDocumentViewer {
  min-width: 0;
  min-height: 0;
  color: var(--fg);
  flex-direction: column;
  gap: 0;
  display: flex;
  container-type: inline-size;
}

.documentViewerReviewToolbar.sharedViewerToolbar {
  background: var(--surface, var(--bg));
  flex-wrap: wrap;
  flex: 0 auto;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
  padding: 4px;
  display: flex;
  overflow: visible;
}

.sharedViewerToolbar .documentViewerReviewIdentity {
  flex: 140px;
  gap: 2px;
  min-width: 0;
  padding: 4px 8px;
  display: grid;
}

.sharedViewerToolbar .documentViewerReviewActions {
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0;
  min-width: 0;
  max-width: 100%;
  display: flex;
}

.sharedViewerToolbar .documentViewerReviewTrailingAction {
  align-self: flex-start;
  margin-left: auto;
}

.sharedViewerToolbar .documentViewerReviewIconButton[aria-pressed="true"] .documentViewerReviewGlyph {
  background: color-mix(in srgb, var(--focus), transparent 88%);
  color: var(--focus);
}

.sharedDocumentViewer .documentViewerViewport {
  background: color-mix(in srgb, var(--fg), var(--bg) 96%);
  border: 0;
  border-radius: 0;
  flex: auto;
  width: 100%;
  height: min(75svh, 900px);
  min-height: 320px;
  max-height: none;
  position: relative;
  overflow: hidden;
}

.sharedDocumentViewer[data-viewer-preset="preview"] .documentViewerViewport {
  height: min(65svh, 760px);
}

.sharedDocumentViewer[data-viewer-preset="review"] {
  height: 100%;
}

.sharedDocumentViewer[data-viewer-preset="review"] .documentViewerViewport {
  height: 100%;
  min-height: 320px;
}

.sharedDocumentViewer .documentViewerCanvasStage {
  touch-action: pan-x pan-y;
  overscroll-behavior: auto;
  background: none;
  width: auto;
  height: auto;
  min-height: 0;
  padding: 0;
  display: block;
  position: absolute;
  inset: 0;
  overflow: auto;
}

.sharedDocumentViewer .pdfViewer {
  --page-margin: 0 auto 0;
  --page-border: none;
  padding: 0;
}

.sharedDocumentViewer .pdfViewer .page {
  background: #fff;
  border: 0;
  flex: none;
  margin: 0 auto;
  box-shadow: 0 0 0 1px #00000016;
}

.sharedDocumentViewer .pdfViewer .canvasWrapper {
  border-radius: 0;
}

.sharedDocumentViewer .pdfViewer canvas {
  max-width: none;
  max-height: none;
}

.sharedDocumentViewer .isPanning {
  cursor: grab;
}

.sharedDocumentViewer .isPanning .textLayer {
  pointer-events: none;
}

.sharedDocumentViewer .documentViewerImagePage {
  max-width: none;
  margin: 12px auto;
  position: relative;
}

.sharedDocumentViewer .documentViewerImagePage img {
  object-fit: contain;
  width: 100%;
  max-width: none;
  height: 100%;
  display: block;
}

.sharedDocumentViewer .documentViewerState {
  z-index: 6;
  background: var(--bg);
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 24px;
  display: flex;
  position: absolute;
  inset: 0;
}

.sharedDocumentViewer .documentViewerState p {
  color: var(--muted);
  margin: 0;
}

.sharedDocumentViewer .documentViewerFind {
  background: var(--bg);
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  display: flex;
}

.sharedDocumentViewer .documentViewerFind input {
  flex: 130px;
  width: 0;
  min-width: 100px;
  min-height: 44px;
  font-size: 16px;
}

.sharedDocumentViewer .documentViewerFind [role="status"] {
  color: var(--muted);
  font-size: 12px;
}

.sharedDocumentViewer [data-viewer-overlay] {
  z-index: 5;
  position: absolute;
}

@container (max-width: 600px) {
  .sharedViewerToolbar .documentViewerReviewIdentity {
    flex-basis: calc(100% - 60px);
    order: 0;
  }

  .sharedViewerToolbar .documentViewerReviewTrailingAction {
    order: 1;
  }

  .sharedViewerToolbar .documentViewerReviewActions {
    flex-basis: 100%;
    order: 2;
  }

  .sharedDocumentViewer .documentViewerViewport {
    height: 62svh;
    min-height: 300px;
  }
}

.sharedAttachmentDialog {
  border: 1px solid var(--stroke);
  border-radius: var(--radius, 10px);
  width: min(1100px, 100vw - 32px);
  max-width: none;
  max-height: calc(100dvh - 32px);
  color: var(--fg);
  background: var(--bg);
  margin: auto;
  padding: 8px;
  overflow: hidden;
}

.sharedAttachmentDialog::backdrop {
  background: #0f172ab3;
}

.sharedAttachmentDialog .documentViewer {
  max-height: calc(100dvh - 100px);
}

.sharedAttachmentNavigation, .sharedAttachmentHeader {
  justify-content: center;
  align-items: center;
  gap: 8px;
  display: flex;
}

.sharedAttachmentHeader strong {
  text-overflow: ellipsis;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.sharedAttachmentNavigation span {
  color: var(--muted);
  font-size: 13px;
}

.sharedAttachmentVideo {
  width: 100%;
  height: min(70svh, 800px);
  display: block;
}

body:has(.sharedAttachmentDialog[open]) {
  overflow: hidden;
}

@media (max-width: 600px) {
  .sharedAttachmentDialog {
    border: 0;
    border-radius: 0;
    width: 100vw;
    max-height: 100dvh;
    padding: 4px;
  }
}

.documentViewerOverlayLayer {
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.documentViewerOverlayLayer > [data-viewer-overlay] {
  pointer-events: auto;
}

.sharedSignaturePlacement .documentViewerViewport {
  height: min(70svh, 900px);
  min-height: 320px;
}

.sharedSignaturePlacement .signaturePlacementResizeHandle {
  width: 44px;
  height: 44px;
  bottom: -18px;
  right: -18px;
}

.sharedFinancePreview {
  flex-direction: column;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 0;
  display: flex;
}

.sharedFinancePreview > .sharedDocumentViewer {
  flex: 1;
}

/* [project]/packages/ui/src/base.css [app-client] (css) */
:root {
  --container: 1120px;
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
}

html {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  -webkit-tap-highlight-color: transparent;
}

body {
  --font-condensed: var(--font-sans);
  --cm-bg-base: var(--bg);
  --cm-grid-color: var(--cm-grid);
  --cm-blob-warm-active: var(--cm-blob-warm);
  --cm-blob-cool-active: var(--cm-blob-cool);
  background: radial-gradient(1100px 520px at 20% -20%, var(--cm-blob-warm-active), transparent 60%),
    radial-gradient(900px 520px at 100% 0%, var(--cm-blob-cool-active), transparent 58%),
    repeating-linear-gradient(0deg, var(--cm-grid-color), var(--cm-grid-color) 1px, transparent 1px, transparent 32px),
    repeating-linear-gradient(90deg, var(--cm-grid-color), var(--cm-grid-color) 1px, transparent 1px, transparent 32px),
    var(--cm-bg-base);
  color: var(--fg);
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizelegibility;
  margin: 0;
  font-size: 16px;
  line-height: 1.45;
}

body[data-cm-tex="white-grid"] {
  --cm-bg-base: var(--bg-2);
  --cm-grid-color: color-mix(in srgb, var(--fg), transparent 92%);
  --cm-blob-warm-active: #0000;
  --cm-blob-cool-active: #0000;
}

body[data-cm-tex="paper-grid"] {
  --cm-bg-base: var(--bg);
  --cm-grid-color: color-mix(in srgb, var(--fg), transparent 92%);
  --cm-blob-warm-active: var(--cm-blob-warm);
  --cm-blob-cool-active: var(--cm-blob-cool);
}

body[data-cm-tex="paper"], body[data-cm-tex="white"] {
  --cm-bg-base: var(--bg-2);
  --cm-grid-color: transparent;
  --cm-blob-warm-active: #0000;
  --cm-blob-cool-active: #0000;
}

a {
  color: inherit;
  text-decoration: none;
}

h1, h2, h3 {
  font-family: var(--font-sans);
  letter-spacing: -.015em;
  text-wrap: balance;
}

main {
  min-height: 100%;
}

.container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 20px;
}

.content {
  max-width: var(--container);
  margin: 0 auto;
  padding: 18px 20px 40px;
}

.cmUserAvatar {
  --cm-user-avatar-size: 40px;
  --cm-user-avatar-bg: #e8eff8;
  --cm-user-avatar-fg: #42688f;
  --cm-user-avatar-stroke: #ccd9e9;
  width: var(--cm-user-avatar-size);
  height: var(--cm-user-avatar-size);
  flex: 0 0 var(--cm-user-avatar-size);
  border: 1px solid var(--cm-user-avatar-stroke);
  background: var(--cm-user-avatar-bg);
  color: var(--cm-user-avatar-fg);
  box-shadow: 0 0 0 var(--cm-user-avatar-ring-width, 0) var(--cm-user-avatar-ring-color, transparent);
  font-family: var(--font-sans);
  font-size: calc(var(--cm-user-avatar-size) * .3);
  letter-spacing: -.02em;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-weight: 850;
  line-height: 1;
  display: inline-flex;
  position: relative;
  overflow: hidden;
}

.cmUserAvatar--compact {
  --cm-user-avatar-size: 28px;
}

.cmUserAvatar--table {
  --cm-user-avatar-size: 36px;
}

.cmUserAvatar--navigation {
  --cm-user-avatar-size: 40px;
}

.cmUserAvatar--profile {
  --cm-user-avatar-size: 72px;
}

.cmUserAvatar--palette-0 {
  --cm-user-avatar-bg: #e8eff8;
  --cm-user-avatar-fg: #42688f;
  --cm-user-avatar-stroke: #ccd9e9;
}

.cmUserAvatar--palette-1 {
  --cm-user-avatar-bg: #e8f3ea;
  --cm-user-avatar-fg: #3f7047;
  --cm-user-avatar-stroke: #cde0cf;
}

.cmUserAvatar--palette-2 {
  --cm-user-avatar-bg: #f7ece6;
  --cm-user-avatar-fg: #9c542b;
  --cm-user-avatar-stroke: #ead4c7;
}

.cmUserAvatar--palette-3 {
  --cm-user-avatar-bg: #ece8f8;
  --cm-user-avatar-fg: #675295;
  --cm-user-avatar-stroke: #d8d0ec;
}

.cmUserAvatar--palette-4 {
  --cm-user-avatar-bg: #e6f2f2;
  --cm-user-avatar-fg: #316f70;
  --cm-user-avatar-stroke: #c9dfdf;
}

.cmUserAvatar--palette-5 {
  --cm-user-avatar-bg: #f5ece8;
  --cm-user-avatar-fg: #8e4d3e;
  --cm-user-avatar-stroke: #e5d2ca;
}

.cmUserAvatarFallback {
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.cmUserAvatarImage {
  object-fit: cover;
  background: var(--cm-user-avatar-bg);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}

.card {
  background: var(--bg-2);
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.cardHeader {
  padding: 18px 18px 0;
}

.cardBody {
  padding: 18px;
}

.cmRejectionExplanation {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  background: var(--bg-2);
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  display: grid;
}

.cmRejectionExplanationIcon {
  background: color-mix(in srgb, var(--danger), white 92%);
  width: 40px;
  height: 40px;
  color: color-mix(in srgb, var(--danger), black 8%);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.cmRejectionExplanationCopy {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.cmRejectionExplanationHeading, .cmRejectionExplanationBody {
  min-width: 0;
  margin: 0;
}

.cmRejectionExplanationHeading {
  color: color-mix(in srgb, var(--danger), black 12%);
  font-size: .75rem;
  font-weight: 750;
  line-height: 1.3;
}

.cmRejectionExplanationBody {
  color: var(--fg);
  overflow-wrap: anywhere;
  white-space: pre-wrap;
  font-size: .9375rem;
  line-height: 1.5;
}

.notificationPreferences, .notificationDeliverySettings {
  gap: 14px;
  display: grid;
}

.notificationDeliverySettingsHeader {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.notificationDeliverySettingsHeader h2 {
  color: var(--fg);
  margin: 0;
  font-size: 24px;
  line-height: 1.05;
}

.notificationDeliverySettingsHeader p {
  color: var(--muted);
  margin: 4px 0 0;
  font-size: 14px;
  line-height: 1.35;
}

.notificationDeliverySummary {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.notificationDeliverySummaryItem {
  border-right: 1px solid var(--stroke);
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 86px;
  padding: 14px;
  display: grid;
}

.notificationDeliverySummaryItem:last-child {
  border-right: 0;
}

.notificationDeliverySummaryIcon {
  background: color-mix(in srgb, var(--focus), white 91%);
  width: 40px;
  height: 40px;
  color: var(--focus);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationDeliverySummaryIcon:before {
  content: "";
  border: 2px solid;
  border-radius: 999px;
  width: 16px;
  height: 16px;
  display: block;
}

.notificationDeliverySummaryIcon-device:before {
  border-radius: 4px;
  width: 12px;
  height: 18px;
}

.notificationDeliverySummaryIcon-hours:before {
  box-shadow: inset 5px 0 #0000;
}

.notificationDeliverySummaryText {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.notificationDeliverySummaryText strong {
  color: var(--fg);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.notificationDeliverySummaryText span, .notificationDeliverySummaryText small {
  overflow-wrap: anywhere;
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
}

.notificationDeliverySummaryText span {
  color: var(--fg);
  font-weight: 800;
}

.notificationPreferencesHeader {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.notificationPreferencesHeader h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1.05;
}

.notificationPreferencesHeader p {
  color: var(--muted);
  margin: 4px 0 0;
  font-size: 14px;
}

.notificationPreferencesEmail {
  border: 1px solid var(--stroke);
  background: var(--bg);
  min-height: 32px;
  color: var(--muted);
  text-transform: uppercase;
  border-radius: 999px;
  align-items: center;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 800;
  display: inline-flex;
}

.notificationPushSetup {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg);
  gap: 0;
  min-height: 64px;
  padding: 0;
  display: grid;
  overflow: hidden;
}

.notificationPushSetup.isReady, .notificationPushSetup.isBlocked {
  border-color: var(--stroke);
}

.notificationPushCurrentDevice {
  grid-template-columns: 52px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 16px;
  padding: 22px 20px;
  display: grid;
}

.notificationPushSetupIcon {
  background: color-mix(in srgb, var(--focus), white 91%);
  width: 48px;
  height: 48px;
  color: color-mix(in srgb, var(--focus), black 12%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationPushSetupIcon svg, .notificationPushDeviceIcon svg, .notificationPushSetupStatus svg, .notificationPushDeviceLastSeenValue svg, .notificationPushDisableAction svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9px;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
  width: 22px;
  height: 22px;
}

.notificationPushSetupIcon-isBlocked {
  background: color-mix(in srgb, var(--danger), white 90%);
  color: color-mix(in srgb, var(--danger), black 8%);
}

.notificationPushSetupIcon-isReady {
  background: color-mix(in srgb, var(--ok), white 90%);
  color: color-mix(in srgb, var(--ok), black 18%);
}

.notificationPushSetupIcon-devices {
  background: color-mix(in srgb, var(--muted), white 91%);
  color: var(--muted);
}

.notificationPushCurrentDeviceText {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPushCurrentDeviceText strong {
  color: var(--fg);
  font-weight: 900;
}

.notificationPushCurrentDeviceText span {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.35;
}

.notificationPushSetupStatus {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  color: var(--muted);
}

.notificationPushSetupStatus svg {
  stroke-width: 2.2px;
  width: 17px;
  height: 17px;
}

.notificationPushSetupStatus-enabled {
  background: color-mix(in srgb, var(--ok), white 91%);
  color: color-mix(in srgb, var(--ok), black 26%);
}

.notificationPushSetupStatus-checking, .notificationPushSetupStatus-ready, .notificationPushSetupStatus-registering {
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 18%);
}

.notificationPushSetupStatus-denied, .notificationPushSetupStatus-error, .notificationPushSetupStatus-unsupported, .notificationPushSetupStatus-install-required, .notificationPushSetupStatus-server-disabled {
  background: color-mix(in srgb, var(--danger), white 95%);
  color: color-mix(in srgb, var(--danger), black 14%);
}

.notificationPushSetupAction {
  white-space: nowrap;
  min-height: 44px;
}

.btn.notificationPushDisableAction {
  background: color-mix(in srgb, var(--danger), white 95%);
  min-height: 44px;
  color: color-mix(in srgb, var(--danger), black 10%);
  border-color: #0000;
  border-radius: 8px;
  gap: 7px;
  padding: 9px 13px;
  font-weight: 800;
}

.btn.notificationPushDisableAction:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--danger), white 70%);
  background: color-mix(in srgb, var(--danger), white 90%);
  color: color-mix(in srgb, var(--danger), black 18%);
}

.btn.notificationPushDisableAction:disabled {
  background: color-mix(in srgb, var(--danger), white 97%);
  color: color-mix(in srgb, var(--danger), var(--muted) 58%);
  border-color: #0000;
}

.btn.notificationPushDisableAction svg {
  stroke-width: 2px;
  width: 17px;
  height: 17px;
}

.notificationPushSetupDiagnostic {
  border: 1px solid color-mix(in srgb, var(--danger), white 58%);
  background: color-mix(in srgb, var(--danger), white 95%);
  color: color-mix(in srgb, var(--danger), black 20%);
  border-radius: 10px;
  margin: 0;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.35;
}

.notificationPushCurrentDevice + .notificationPushSetupDiagnostic {
  margin: -4px 16px 14px;
}

.notificationPushSetupDiagnostic strong {
  color: color-mix(in srgb, var(--danger), black 28%);
  font-weight: 900;
}

.notificationPushDeviceList {
  border-top: 1px solid color-mix(in srgb, var(--stroke), white 16%);
  display: block;
}

.notificationPushDeviceListSummary {
  cursor: pointer;
  min-height: 98px;
  color: var(--fg);
  grid-template-columns: 52px minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 16px;
  padding: 20px;
  font-size: 13px;
  list-style: none;
  display: grid;
}

.notificationPushDeviceListSummaryText {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.notificationPushDeviceListSummaryText strong {
  font-size: 18px;
  line-height: 1.2;
}

.notificationPushDeviceListSummaryText small {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.35;
}

.notificationPushDeviceListSummary:focus-visible {
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.notificationPushDeviceListSummary::-webkit-details-marker {
  display: none;
}

.notificationPushDeviceListSummary::marker {
  content: "";
}

.notificationPushDeviceListSummary:after {
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  content: "";
  width: 8px;
  height: 8px;
  margin-left: 2px;
  transition: transform .14s;
  transform: rotate(45deg);
}

.notificationPushDeviceList[open] .notificationPushDeviceListSummary:after {
  transform: rotate(225deg);
}

.notificationPushDeviceCount {
  background: color-mix(in srgb, var(--focus), white 90%);
  min-width: 34px;
  height: 34px;
  color: var(--focus);
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 900;
  display: inline-flex;
}

.notificationPushDeviceListBody {
  gap: 8px;
  padding: 0 20px 22px;
  display: grid;
}

.notificationPushDeviceList:not([open]) .notificationPushDeviceListBody {
  display: none;
}

.notificationPushDeviceEmpty {
  color: var(--muted);
  margin: 0;
  font-size: 13px;
}

.notificationPushDeviceRows {
  border: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  background: var(--bg);
  border-radius: 9px;
  gap: 0;
  display: grid;
  overflow: hidden;
}

.notificationPushDeviceHeader {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  background: color-mix(in srgb, var(--bg-2), var(--stroke) 4%);
  min-height: 54px;
  color: var(--muted);
  letter-spacing: 0;
  text-transform: uppercase;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, .9fr) minmax(112px, .42fr) minmax(138px, .5fr);
  align-items: center;
  gap: 18px;
  padding: 0 22px;
  font-size: 12px;
  font-weight: 800;
  display: grid;
}

.notificationPushDeviceRow {
  border-top: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  background: var(--bg);
  grid-template-columns: minmax(0, 1.45fr) minmax(0, .9fr) minmax(112px, .42fr) minmax(138px, .5fr);
  align-items: center;
  gap: 18px;
  min-height: 92px;
  padding: 18px 22px;
  display: grid;
}

.notificationPushDeviceHeader + .notificationPushDeviceRow {
  border-top: 0;
}

.notificationPushDeviceText {
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
  display: grid;
}

.notificationPushDeviceIcon {
  background: color-mix(in srgb, var(--focus), white 91%);
  width: 44px;
  height: 44px;
  color: color-mix(in srgb, var(--focus), black 12%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationPushDeviceIcon svg {
  width: 24px;
  height: 24px;
}

.notificationPushDeviceName {
  min-width: 0;
  display: grid;
}

.notificationPushDeviceText strong {
  min-width: 0;
  color: var(--fg);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 15px;
  line-height: 1.2;
  display: flex;
}

.notificationPushDeviceText strong span {
  background: color-mix(in srgb, var(--focus), white 90%);
  color: var(--focus);
  border-radius: 999px;
  padding: 2px 6px;
  font-size: 11px;
  font-weight: 900;
}

.notificationPushDeviceLastSeen {
  min-width: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.35;
}

.notificationPushDeviceLastSeenValue {
  align-items: center;
  gap: 9px;
  min-width: 0;
  display: inline-flex;
}

.notificationPushDeviceLastSeenValue svg {
  width: 20px;
  height: 20px;
  color: var(--muted);
}

.notificationPushDeviceMobileLabel {
  display: none;
}

.notificationPushDeviceStatus {
  justify-content: flex-start;
  min-width: 0;
  display: flex;
}

.notificationPushDeviceState {
  background: color-mix(in srgb, var(--ok), white 91%);
  color: color-mix(in srgb, var(--ok), black 26%);
}

.notificationPushDeviceState.isDisabled {
  background: color-mix(in srgb, var(--danger), white 95%);
  color: color-mix(in srgb, var(--danger), black 14%);
}

.notificationPushDeviceStateDot {
  background: currentColor;
  border-radius: 999px;
  width: 7px;
  height: 7px;
}

.notificationPushDeviceActions {
  justify-content: flex-start;
  min-width: 0;
  display: flex;
}

.notificationPushDeviceNoAction {
  min-height: 1px;
}

.notificationPushDeviceText > span {
  color: var(--muted);
  font-size: 12px;
}

.btn.notificationPushDisableActionCompact {
  min-width: 96px;
  padding: 8px 11px;
  font-size: 13px;
  line-height: 1.1;
}

.notificationPreferencesList {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  display: grid;
  overflow: hidden;
}

.notificationPreferencesWindow {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  gap: 14px;
  padding: 14px;
  display: grid;
}

.notificationPreferences_embedded .notificationPreferencesWindow {
  order: 2;
}

.notificationPreferences_embedded .notificationPreferencesList {
  order: 1;
}

.notificationPreferences_embedded .notificationPreferencesActions {
  order: 3;
}

.notificationPreferencesWindowHeader {
  cursor: pointer;
  grid-template-columns: minmax(0, 1fr) auto 14px;
  align-items: start;
  gap: 12px;
  min-height: 54px;
  list-style: none;
  display: grid;
}

.notificationPreferencesWindowHeader::-webkit-details-marker {
  display: none;
}

.notificationPreferencesWindowHeader::marker {
  content: "";
}

.notificationPreferencesWindowHeader:after {
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  content: "";
  width: 8px;
  height: 8px;
  margin-top: 9px;
  transition: transform .14s;
  transform: rotate(45deg);
}

.notificationPreferencesWindow[open] .notificationPreferencesWindowHeader:after {
  transform: rotate(225deg);
}

.notificationPreferencesWindowHeader h3 {
  color: var(--fg);
  margin: 0;
  font-size: 15px;
  line-height: 1.2;
}

.notificationPreferencesWindowHeader p {
  color: var(--muted);
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.35;
}

.notificationPreferencesWindowBadge {
  background: color-mix(in srgb, var(--focus), white 92%);
  color: var(--focus);
}

.notificationPreferencesWindowBody {
  gap: 12px;
  display: grid;
}

.notificationPreferencesWindowMode {
  border: 1px solid var(--stroke);
  background: var(--bg);
  border-radius: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  padding: 4px;
  display: grid;
}

.notificationPreferencesWindowModeButton {
  min-width: 0;
  min-height: 44px;
  color: var(--muted);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 9px;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 900;
}

.notificationPreferencesWindowModeButton.isSelected {
  border-color: color-mix(in srgb, var(--focus), white 58%);
  background: color-mix(in srgb, var(--focus), white 91%);
  color: var(--focus);
}

.notificationPreferencesWindowSummary {
  border: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  background: var(--bg);
  border-radius: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.notificationPreferencesWindowSummaryItem {
  border-right: 1px solid var(--stroke);
  min-width: 0;
  color: var(--fg);
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
  display: grid;
}

.notificationPreferencesWindowSummaryItem:last-child {
  border-right: 0;
}

.notificationPreferencesWindowSummaryIcon {
  background: color-mix(in srgb, var(--focus), white 93%);
  width: 28px;
  height: 28px;
  color: var(--muted);
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationPreferencesWindowSummaryIcon svg {
  stroke-width: 2px;
  width: 15px;
  height: 15px;
}

.notificationPreferencesWindowSummaryText {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferencesWindowSummaryText strong {
  overflow-wrap: anywhere;
  color: var(--muted);
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
}

.notificationPreferencesWindowSummaryText b {
  overflow-wrap: anywhere;
  min-width: 0;
  color: var(--fg);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.notificationPreferencesWindowInheritedNote {
  border: 1px solid color-mix(in srgb, var(--focus), white 78%);
  background: color-mix(in srgb, var(--focus), white 96%);
  min-height: 44px;
  color: color-mix(in srgb, var(--focus), var(--fg) 28%);
  border-radius: 10px;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
  display: grid;
}

.notificationPreferencesWindowInheritedNote svg {
  stroke-width: 2.2px;
  width: 16px;
  height: 16px;
}

.notificationPreferencesWindowPreview {
  border: 1px solid color-mix(in srgb, var(--stroke), white 10%);
  background: var(--bg);
  border-radius: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.notificationPreferencesWindowPreviewItem {
  border-right: 1px solid var(--stroke);
  gap: 3px;
  min-width: 0;
  padding: 11px 12px;
  display: grid;
}

.notificationPreferencesWindowPreviewItem:nth-child(3) {
  border-right: 0;
}

.notificationPreferencesWindowPreviewItem strong {
  overflow-wrap: anywhere;
  color: var(--muted);
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
}

.notificationPreferencesWindowPreviewItem b {
  overflow-wrap: anywhere;
  min-width: 0;
  color: var(--fg);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.notificationPreferencesWindowPreviewWeekend {
  border-top: 1px solid var(--stroke);
  background: color-mix(in srgb, var(--bg), var(--focus) 3%);
  border-right: 0;
  grid-column: 1 / -1;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 44px;
}

.notificationPreferencesWindowPreviewWeekend svg {
  width: 16px;
  height: 16px;
  color: var(--muted);
  stroke-width: 2px;
}

.notificationPreferencesWindowPreviewWeekend span {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferencesWindowControls {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.notificationPreferencesWindowField {
  color: var(--muted);
  text-transform: uppercase;
  gap: 6px;
  font-size: 12px;
  font-weight: 900;
  display: grid;
}

.notificationPreferencesWindowField input, .notificationPreferencesWindowField select {
  border: 1px solid var(--stroke);
  background: var(--bg);
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  text-transform: none;
  border-radius: 10px;
  font-size: 14px;
}

.notificationPreferencesWindowField_customTimezone {
  grid-column: span 2;
}

.notificationPreferencesPolicyToggles {
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.notificationPreferencesPolicyToggle {
  border: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  background: var(--bg);
  min-height: 48px;
  color: var(--fg);
  border-radius: 10px;
  grid-column: 1 / -1;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 10px;
  font-size: 13px;
  font-weight: 800;
  display: grid;
  position: relative;
}

.notificationPreferencesPolicyToggles .notificationPreferencesPolicyToggle {
  grid-column: auto;
}

.notificationPreferencesPolicyToggleText {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferencesPolicyToggleText span {
  color: var(--fg);
  font-weight: 900;
}

.notificationPreferencesPolicyToggleText small {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.3;
}

.notificationPreferenceRow {
  background: var(--bg-2);
  border-bottom: 1px solid var(--stroke);
  grid-template-columns: 46px minmax(194px, 1fr) minmax(300px, 360px);
  align-items: center;
  gap: 16px;
  min-height: 72px;
  padding: 12px 14px;
  display: grid;
}

.notificationPreferenceRow:last-child {
  border-bottom: 0;
}

.notificationPreferenceIcon {
  background: color-mix(in srgb, var(--focus), white 93%);
  width: 36px;
  height: 36px;
  color: color-mix(in srgb, var(--muted), var(--focus) 28%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationPreferenceIcon svg {
  stroke-width: 1.9px;
  width: 18px;
  height: 18px;
}

.notificationPreferences[data-surface="admin"] .notificationPreferenceIcon {
  background: color-mix(in srgb, var(--focus), white 92%);
  width: 40px;
  height: 40px;
  color: color-mix(in srgb, var(--muted), var(--focus) 34%);
}

.notificationPreferences[data-surface="admin"] .notificationPreferenceIcon svg {
  width: 20px;
  height: 20px;
}

.notificationPreferenceText {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferenceTitle {
  color: var(--fg);
  font-weight: 900;
}

.notificationPreferenceDescription {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

.notificationPreferenceChannelHeader {
  border-bottom: 1px solid var(--stroke);
  background: var(--bg);
  grid-template-columns: 46px minmax(194px, 1fr) minmax(300px, 360px);
  align-items: end;
  gap: 16px;
  min-height: 44px;
  padding: 8px 14px;
  display: grid;
}

.notificationPreferenceChannelHeaderSpacer {
  grid-column: 1 / 3;
}

.notificationPreferenceChannelLabels {
  grid-column: 3;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.notificationPreferenceChannelLabel {
  min-width: 0;
  color: var(--muted);
  gap: 2px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  display: grid;
}

.notificationPreferenceChannelNote {
  overflow-wrap: anywhere;
  color: var(--danger);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.notificationPreferenceControls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: grid;
}

.notificationPreferenceControl {
  min-width: 0;
  min-height: 48px;
  color: var(--muted);
  cursor: pointer;
  text-transform: none;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 4px 0;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  display: inline-grid;
  position: relative;
}

.notificationPreferenceSwitch {
  clip: rect(0 0 0 0);
  white-space: nowrap;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  position: absolute;
  overflow: hidden;
}

.notificationPreferenceSwitchTrack {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--muted) 18%);
  background: color-mix(in srgb, var(--bg), var(--stroke) 28%);
  border-radius: 999px;
  width: 48px;
  height: 30px;
  transition: background-color .14s, border-color .14s;
  position: relative;
}

.notificationPreferenceSwitchTrack:after {
  background: var(--bg);
  content: "";
  border-radius: 999px;
  width: 22px;
  height: 22px;
  transition: transform .14s;
  position: absolute;
  top: 3px;
  left: 3px;
  box-shadow: 0 1px 3px #00000038;
}

.notificationPreferenceSwitch:checked + .notificationPreferenceSwitchTrack {
  border-color: color-mix(in srgb, var(--focus), black 8%);
  background: var(--focus);
}

.notificationPreferenceSwitch:checked + .notificationPreferenceSwitchTrack:after {
  transform: translateX(18px);
}

.notificationPreferenceSwitch:focus-visible + .notificationPreferenceSwitchTrack {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 15%);
  outline-offset: 3px;
}

.notificationPreferenceControlText {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferenceControlLabel {
  overflow-wrap: anywhere;
  color: var(--muted);
  display: none;
}

.notificationPreferenceState {
  overflow-wrap: anywhere;
  color: var(--fg);
  font-weight: 900;
}

.notificationPreferencesActions {
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.notificationPreferencesSaveState {
  min-height: 24px;
  color: var(--ok);
  margin-right: auto;
  font-size: 13px;
  font-weight: 800;
}

.notificationPreferencesSaveState.isError {
  color: var(--danger);
}

.btn.notificationPreferencesReset, .btn.notificationPreferencesSave {
  border-radius: 8px;
  min-height: 44px;
  padding: 9px 16px;
  font-weight: 800;
}

.btn.notificationPreferencesReset {
  background: var(--bg);
  color: var(--fg);
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 10%);
}

.btn.notificationPreferencesReset:hover:not(:disabled) {
  background: color-mix(in srgb, var(--bg), var(--focus) 4%);
  border-color: color-mix(in srgb, var(--focus), var(--stroke) 38%);
  color: var(--fg);
}

.btn.notificationPreferencesReset:disabled {
  background: var(--bg);
  border-color: color-mix(in srgb, var(--stroke), white 18%);
  color: var(--muted);
}

.btn.notificationPreferencesSave {
  min-width: 92px;
}

.notificationRow {
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  width: 100%;
  min-width: 0;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 0;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  display: grid;
}

.notificationRow:first-child {
  border-top: 0;
}

.notificationRow_popup {
  min-height: 86px;
  padding: 12px 16px;
}

.notificationRow_center {
  min-height: 104px;
  padding: 16px 18px;
}

.notificationRow:disabled {
  cursor: default;
  opacity: .78;
}

.notificationRow:not(:disabled):hover {
  background: color-mix(in srgb, var(--focus), white 97%);
}

.notificationRow:focus-visible, .notificationCenterScopeTab:focus-visible, .notificationCenterFilterPanel summary:focus-visible, .notificationCenterFilterField select:focus-visible, .notificationCenterLoadMore:focus-visible, .notificationPreferencesWindowHeader:focus-visible, .notificationPreferencesWindowModeButton:focus-visible, .notificationPreferencesWindowField input:focus-visible, .notificationPreferencesWindowField select:focus-visible, .notificationPreferencesDisclosure > summary:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.notificationRow_unread .notificationRowTitle {
  font-weight: 850;
}

.notificationRow_read .notificationRowTitle, .notificationRow_read .notificationRowBody, .notificationRow_read .notificationRowKicker, .notificationRow_read .notificationRowTime {
  color: color-mix(in srgb, var(--muted), var(--fg) 12%);
}

.notificationRow_unread.notificationRow_tone_red {
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--danger), white 10%);
}

.notificationRow_unread.notificationRow_tone_amber {
  box-shadow: inset 3px 0 #f59e0b;
}

.notificationRowIcon {
  background: color-mix(in srgb, var(--focus), white 93%);
  width: 42px;
  height: 42px;
  color: var(--focus);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationRowIcon svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.85px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 23px;
  height: 23px;
}

.notificationRow_tone_red .notificationRowIcon {
  background: color-mix(in srgb, var(--danger), white 92%);
  color: var(--danger);
}

.notificationRow_tone_amber .notificationRowIcon {
  color: #d97706;
  background: #fef6e9;
}

.notificationRow_tone_green .notificationRowIcon {
  background: color-mix(in srgb, var(--ok), white 91%);
  color: var(--ok);
}

.notificationRow_tone_gray .notificationRowIcon {
  background: color-mix(in srgb, var(--muted), white 91%);
  color: var(--muted);
}

.notificationRowText {
  gap: 4px;
  min-width: 0;
  display: grid;
  overflow: hidden;
}

.notificationRowMeta {
  min-width: 0;
  color: var(--muted);
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  line-height: 1.2;
  display: grid;
}

.notificationRowKicker {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  color: inherit;
  flex-wrap: nowrap;
  gap: 0 6px;
  font-weight: 700;
  display: inline-flex;
  overflow: hidden;
}

.notificationRow_intent_critical .notificationRowKicker {
  color: var(--danger);
}

.notificationRow_intent_alert .notificationRowKicker {
  color: #d97706;
}

.notificationRowTime {
  color: var(--muted);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  font-size: 12px;
}

.notificationRowUnreadDot {
  background: var(--focus);
  border-radius: 999px;
  width: 8px;
  height: 8px;
}

.notificationRow_intent_critical .notificationRowUnreadDot {
  background: var(--danger);
}

.notificationRowTitle, .notificationRowBody {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}

.notificationRowTitle {
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
}

.notificationRowBody {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

.notificationCenterScopeTabs {
  border: 1px solid var(--stroke);
  background: #fff;
  border-radius: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.notificationCenterScopeTab {
  border: 0;
  border-right: 1px solid var(--stroke);
  min-width: 0;
  min-height: 52px;
  color: var(--muted);
  font: inherit;
  cursor: pointer;
  background: none;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  font-weight: 750;
  display: inline-flex;
}

.notificationCenterScopeTab:last-child {
  border-right: 0;
}

.notificationCenterScopeTab.isActive {
  color: var(--focus);
  box-shadow: inset 0 -2px 0 var(--focus);
}

.notificationCenterScopeTabLabel, .notificationCenterScopeTabCount {
  min-width: 0;
}

.notificationCenterScopeTabLabel {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.notificationCenterScopeTabCount {
  background: color-mix(in srgb, currentColor, transparent 90%);
  font-variant-numeric: tabular-nums;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 22px;
  min-height: 22px;
  padding: 0 7px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  display: inline-flex;
}

.notificationCenterToolbar {
  flex-wrap: wrap;
  align-items: start;
  gap: 10px;
  display: flex;
}

.notificationCenterFilterPanel {
  min-width: 0;
}

.notificationCenterFilterPanel summary {
  border: 1px solid color-mix(in srgb, var(--focus), white 64%);
  width: fit-content;
  min-height: 44px;
  color: var(--focus);
  cursor: pointer;
  background: #fff;
  border-radius: 10px;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  font-weight: 800;
  list-style: none;
  display: inline-flex;
}

.notificationCenterFilterPanel summary::-webkit-details-marker {
  display: none;
}

.notificationCenterFilterControls {
  grid-template-columns: minmax(150px, 220px) minmax(140px, 200px);
  gap: 10px;
  margin-top: 10px;
  display: grid;
}

.notificationCenterFilterField {
  min-width: 0;
  color: var(--muted);
  text-transform: uppercase;
  gap: 5px;
  font-size: 11px;
  font-weight: 850;
  display: grid;
}

.notificationCenterFilterField select {
  border: 1px solid var(--stroke);
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  font-family: var(--font-sans);
  text-transform: none;
  background: #fff;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.notificationCenterList {
  border: 1px solid var(--stroke);
  background: #fff;
  border-radius: 10px;
  display: grid;
  overflow: hidden;
}

.notificationCenterError, .notificationCenterEmpty {
  border: 1px solid var(--stroke);
  color: var(--muted);
  border-radius: 10px;
  padding: 16px;
}

.notificationCenterError {
  border-color: color-mix(in srgb, var(--danger), white 62%);
  color: var(--danger);
}

.notificationCenterLoadMoreRow {
  justify-content: center;
  display: flex;
}

.notificationCenterLoadMore {
  min-width: min(100%, 360px);
  min-height: 44px;
}

.notificationCenterMarkAll {
  min-height: 44px;
}

.notificationPreferencesDisclosure {
  border: 1px solid var(--stroke);
  box-shadow: var(--shadow);
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}

.notificationPreferencesDisclosure > summary {
  cursor: pointer;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 12px 16px;
  list-style: none;
  display: grid;
}

.notificationPreferencesDisclosure > summary::-webkit-details-marker {
  display: none;
}

.notificationPreferencesDisclosure > summary:after {
  content: "⌄";
  color: var(--fg);
  font-size: 24px;
  line-height: 1;
}

.notificationPreferencesDisclosure[open] > summary:after {
  transform: rotate(180deg);
}

.notificationPreferencesDisclosureIcon {
  background: color-mix(in srgb, var(--focus), white 92%);
  width: 42px;
  height: 42px;
  color: var(--focus);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.notificationPreferencesDisclosureIcon svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 22px;
  height: 22px;
}

.notificationPreferencesDisclosure > summary > span:nth-child(2) {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationPreferencesDisclosure > summary strong {
  color: var(--fg);
  font-size: 15px;
}

.notificationPreferencesDisclosure > summary span span {
  color: var(--muted);
}

.notificationPreferencesDisclosureBody {
  gap: 16px;
  padding: 0 16px 16px;
  display: grid;
}

@media (max-width: 720px) {
  .notificationCenterFilterField select, .notificationPreferencesWindowField input, .notificationPreferencesWindowField select {
    font-size: 16px;
  }

  .notificationCenterScopeTabs {
    border-radius: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .notificationDeliverySettingsHeader, .notificationPreferencesHeader, .notificationPreferencesActions {
    grid-template-columns: minmax(0, 1fr);
  }

  .notificationPreferencesHeader, .notificationPreferencesWindowHeader, .notificationPreferencesActions {
    display: grid;
  }

  .notificationPreferencesWindowHeader, .notificationPreferencesWindowSummary, .notificationPreferencesWindowControls, .notificationPreferencesWindowPreview {
    grid-template-columns: minmax(0, 1fr);
  }

  .notificationPreferencesWindowHeader {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .notificationPreferencesWindowBadge {
    width: fit-content;
  }

  .notificationPreferencesWindowSummaryItem {
    border-right: 0;
    border-bottom: 1px solid var(--stroke);
  }

  .notificationPreferencesWindowSummaryItem:last-child {
    border-bottom: 0;
  }

  .notificationPreferencesWindowPreviewItem, .notificationPreferencesWindowPreviewItem:nth-child(3) {
    border-right: 0;
    border-bottom: 1px solid var(--stroke);
  }

  .notificationPreferencesWindowPreviewWeekend {
    border-top: 0;
    border-bottom: 0;
    grid-column: auto;
  }

  .notificationPreferencesWindowField_customTimezone, .notificationPreferencesPolicyToggle, .notificationPreferencesPolicyToggles {
    grid-column: auto;
  }

  .notificationPreferencesPolicyToggles, .notificationDeliverySummary {
    grid-template-columns: minmax(0, 1fr);
  }

  .notificationDeliverySummaryItem {
    border-right: 0;
    border-bottom: 1px solid var(--stroke);
    min-height: 72px;
  }

  .notificationDeliverySummaryItem:last-child {
    border-bottom: 0;
  }

  .notificationPreferencesEmail, .notificationPushSetupAction, .notificationPushDisableAction, .notificationPreferencesReset, .notificationPreferencesSave {
    justify-content: center;
    width: 100%;
  }

  .btn.notificationPushDisableActionCompact {
    padding: 8px 10px;
  }

  .notificationPushDeviceHeader {
    display: none;
  }

  .notificationPushCurrentDevice {
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 10px 12px;
    padding: 16px 12px;
  }

  .notificationPushSetupIcon {
    width: 42px;
    height: 42px;
  }

  .notificationPushSetupIcon svg {
    width: 21px;
    height: 21px;
  }

  .notificationPushSetupStatus, .notificationPushSetupAction {
    grid-column: 1 / -1;
    justify-self: stretch;
  }

  .notificationPushDeviceListSummary {
    grid-template-columns: 44px minmax(0, 1fr) auto 12px;
    gap: 10px;
    min-height: 88px;
    padding: 16px 12px;
  }

  .notificationPushDeviceListSummaryText strong {
    font-size: 16px;
  }

  .notificationPushDeviceListSummaryText small {
    font-size: 13px;
  }

  .notificationPushDeviceCount {
    min-width: 32px;
    height: 32px;
  }

  .notificationPushDeviceListBody {
    padding: 0 12px 12px;
  }

  .notificationPushDeviceRows {
    background: none;
    border: 0;
    border-radius: 0;
    gap: 8px;
    overflow: visible;
  }

  .notificationPushDeviceRow {
    border: 1px solid color-mix(in srgb, var(--stroke), white 12%);
    border-radius: 10px;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 12px;
  }

  .notificationPushDeviceHeader + .notificationPushDeviceRow, .notificationPushDeviceRow {
    border-top: 1px solid color-mix(in srgb, var(--stroke), white 12%);
  }

  .notificationPushDeviceLastSeen {
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    display: flex;
  }

  .notificationPushDeviceLastSeenValue {
    text-align: right;
    justify-content: flex-end;
    min-width: 0;
  }

  .notificationPushDeviceMobileLabel {
    color: var(--muted);
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 900;
    display: inline;
  }

  .notificationPushDeviceActions {
    width: 100%;
  }

  .notificationPushDeviceStatus {
    justify-content: flex-start;
  }

  .notificationPushDeviceNoAction {
    display: none;
  }

  .notificationPreferenceControls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    display: grid;
  }

  .notificationPreferenceChannelHeader, .notificationPreferenceRow {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 10px;
  }

  .notificationPreferenceChannelHeaderSpacer {
    display: none;
  }

  .notificationPreferenceChannelLabels, .notificationPreferenceControls {
    grid-column: 1 / -1;
  }

  .notificationPreferenceIcon, .notificationPreferences[data-surface="admin"] .notificationPreferenceIcon {
    width: 36px;
    height: 36px;
  }

  .notificationPreferenceIcon svg, .notificationPreferences[data-surface="admin"] .notificationPreferenceIcon svg {
    width: 18px;
    height: 18px;
  }

  .notificationPreferenceControl {
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    width: 100%;
  }

  .notificationPreferenceControlLabel {
    display: none;
  }

  .notificationRow {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
  }

  .notificationRow_popup {
    min-height: 82px;
    padding: 12px 14px;
  }

  .notificationRow_center {
    min-height: 96px;
    padding: 14px;
  }

  .notificationRowIcon {
    width: 40px;
    height: 40px;
  }

  .notificationRowMeta {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 8px;
    font-size: 12px;
  }

  .notificationRowTitle {
    font-size: 14px;
  }

  .notificationCenterToolbar, .notificationCenterFilterControls {
    grid-template-columns: minmax(0, 1fr);
    display: grid;
  }

  .notificationCenterMarkAll, .notificationCenterFilterPanel summary, .notificationCenterLoadMore {
    justify-content: center;
    width: 100%;
  }

  .notificationCenterScopeTab {
    border-right: 1px solid var(--stroke);
    border-bottom: 1px solid var(--stroke);
    min-height: 50px;
    padding: 8px 10px;
    font-size: 14px;
    line-height: 1.15;
  }

  .notificationCenterScopeTab:nth-child(2n) {
    border-right: 0;
  }

  .notificationCenterScopeTab:nth-last-child(-n+2) {
    border-bottom: 0;
  }

  .notificationCenterScopeTabLabel {
    white-space: normal;
  }

  .notificationCenterScopeTabCount {
    min-width: 20px;
    min-height: 20px;
    padding: 0 6px;
    font-size: 11px;
  }

  .notificationPreferencesDisclosure > summary {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    padding: 12px;
  }
}

.muted {
  color: var(--muted);
}

.mono {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

.calendarCell {
  text-align: left;
  width: 100%;
  color: inherit;
  font: inherit;
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  display: block;
}

.calendarCell:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 15%);
  outline-offset: 2px;
}

.timesheetCellHint {
  letter-spacing: .04em;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.15;
}

.timesheetCellContent {
  grid-template-rows: auto 1fr;
  gap: 8px;
  min-height: 72px;
  padding: 10px;
  display: grid;
}

.timesheetCellContentLocked {
  position: relative;
}

.timesheetCellContentLocked .timesheetCellHeader {
  padding-right: 16px;
}

.timesheetCellHeader {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  column-gap: 4px;
  display: grid;
  overflow: hidden;
}

.timesheetCellDayNum {
  font-family: var(--font-mono);
  font-size: 13px;
  line-height: 1;
}

.timesheetCellHours {
  white-space: nowrap;
  text-align: right;
  font-size: 12px;
  line-height: 1;
}

.timesheetCellHintSpacer {
  height: 12px;
}

.timesheetCalendarDayLink {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  touch-action: manipulation;
}

.timesheetCellSelectMark {
  border-radius: 2px;
  place-items: center;
  width: 16px;
  height: 16px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: grid;
  position: absolute;
  bottom: 8px;
  right: 8px;
}

.timesheetCellLock {
  width: 14px;
  height: 14px;
  color: color-mix(in srgb, var(--muted), var(--fg) 16%);
  pointer-events: none;
  display: block;
  position: absolute;
  top: 8px;
  right: 8px;
}

.timesheetCellLock svg {
  width: 100%;
  height: 100%;
  display: block;
}

.timesheetCellHint, .timesheetCellHintSpacer {
  align-self: end;
}

.timesheetDayPlaceholder {
  height: 72px;
}

.timesheetCellHoursCompact, .timesheetCellHintShort {
  display: none;
}

.timesheetCellHintFull {
  display: inline;
}

.timesheetMonthGridWrap {
  padding-bottom: 2px;
  overflow: auto hidden;
}

.timesheetMonthGrid {
  min-width: 700px;
}

.timesheetCalendarTopBar {
  justify-content: stretch;
  align-items: center;
  width: 100%;
  min-height: 44px;
  display: flex;
}

.timesheetMonthNav {
  grid-template-columns: 56px minmax(0, 1fr) 56px;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  display: grid;
}

.timesheetMonthNavCenter {
  justify-content: center;
  min-width: 0;
  display: flex;
  position: relative;
}

.timesheetMonthNavBtn {
  color: color-mix(in srgb, var(--fg), black 6%);
  justify-content: center;
  place-self: center;
  align-items: center;
  transition: background-color .15s, color .15s, opacity .15s;
  background: none !important;
  border: 0 !important;
  border-radius: 999px !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  display: inline-flex !important;
}

.timesheetMonthNavChevron {
  border-bottom: 2px solid;
  border-right: 2px solid;
  width: 10px;
  height: 10px;
  display: block;
}

.timesheetMonthNavChevron.isPrev {
  transform: rotate(135deg);
}

.timesheetMonthNavChevron.isNext {
  transform: rotate(-45deg);
}

.timesheetMonthNavDoubleChevron {
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 14px;
  display: inline-flex;
}

.timesheetMonthNavDoubleChevron .timesheetMonthNavChevron {
  width: 8px;
  height: 8px;
}

.timesheetMonthNavDoubleChevron .timesheetMonthNavChevron + .timesheetMonthNavChevron {
  margin-left: -2px;
}

.timesheetMonthNavBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--fg), transparent 91%) !important;
}

.timesheetMonthNavBtn:focus-visible, .timesheetMonthNavTrigger:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 1px;
}

.timesheetMonthNavBtn:disabled {
  opacity: .34;
}

.timesheetMonthNavTrigger {
  width: fit-content;
  min-width: 0;
  max-width: min(100%, 280px);
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  letter-spacing: .01em;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 0 auto;
  padding: 0 10px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  transition: color .15s, background-color .15s;
  display: inline-flex;
}

.timesheetMonthNavTrigger:hover {
  background: color-mix(in srgb, var(--fg), transparent 96%);
}

.timesheetMonthNavLabel {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.timesheetMonthNavLabelChevron {
  border-bottom: 2px solid;
  border-right: 2px solid;
  flex: 0 0 9px;
  width: 9px;
  height: 9px;
  display: block;
  transform: rotate(45deg)translateY(-1px);
}

.timesheetMonthPickerPopover {
  z-index: 1200;
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 3%);
  background: var(--bg);
  width: min(316px, 100vw - 32px);
  box-shadow: 0 20px 42px color-mix(in srgb, var(--fg), transparent 88%);
  border-radius: 12px;
  gap: 10px;
  padding: 12px 12px 10px;
  display: grid;
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
}

.timesheetMonthPickerSheetBackdrop {
  z-index: 2400;
  background: color-mix(in srgb, var(--fg), transparent 58%);
  align-items: end;
  padding: 0;
  display: grid;
  position: fixed;
  inset: 0;
}

.timesheetMonthPickerSheetCard {
  width: min(520px, 100%);
  max-height: min(560px, 100dvh - 18px);
  box-shadow: 0 -12px 34px color-mix(in srgb, var(--fg), transparent 86%);
  border-radius: 16px 16px 0 0;
  margin: 0 auto;
  overflow: hidden;
}

.timesheetMonthPickerSheetBody {
  padding: 10px 16px max(18px, env(safe-area-inset-bottom));
  gap: 10px;
  display: grid;
  overflow: hidden auto;
}

.timesheetMonthPickerSheetHandle {
  background: color-mix(in srgb, var(--muted), white 15%);
  border-radius: 999px;
  width: 44px;
  height: 4px;
  margin: 0 auto;
}

.timesheetMonthPickerYearBtn:focus-visible, .timesheetMonthPickerMonthBtn:focus-visible, .timesheetMonthPickerFooterLink:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 55%);
  outline: none;
}

.timesheetMonthPickerYearRow {
  grid-template-columns: 40px minmax(0, 1fr) 40px;
  align-items: center;
  gap: 6px;
  display: grid;
}

.timesheetMonthPickerYearBtn {
  justify-content: center;
  align-items: center;
  transition: background-color .15s, color .15s, box-shadow .15s;
  background: none !important;
  border: 0 !important;
  border-radius: 999px !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  display: inline-flex !important;
}

.timesheetMonthPickerYearBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--fg), transparent 95%) !important;
}

.timesheetMonthPickerYearLabel {
  font-family: var(--font-mono);
  text-align: center;
  font-size: .98rem;
  font-weight: 700;
}

.timesheetMonthPickerGrid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  display: grid;
}

.timesheetMonthPickerMonthBtn {
  min-height: 42px;
  color: var(--fg);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  font-size: .92rem;
  font-weight: 600;
  line-height: 1.1;
  transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s;
  display: inline-flex;
  position: relative;
}

.timesheetMonthPickerMonthBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--fg), transparent 95%);
}

.timesheetMonthPickerMonthBtn.isSelected {
  background: color-mix(in srgb, var(--focus), white 90%);
  border-color: color-mix(in srgb, var(--focus), transparent 70%);
  color: color-mix(in srgb, var(--focus), black 18%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--focus), transparent 76%);
  border-radius: 8px;
  font-weight: 700;
}

.timesheetMonthPickerMonthBtn.isCurrent:not(.isSelected) {
  color: color-mix(in srgb, var(--focus), black 10%);
}

.timesheetMonthPickerMonthBtn:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.timesheetMonthPickerMonthLabel {
  white-space: nowrap;
  min-width: 0;
}

.timesheetMonthPickerCurrentMarker {
  background: color-mix(in srgb, var(--focus), transparent 38%);
  border-radius: 999px;
  width: 12px;
  height: 2px;
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
}

.timesheetMonthPickerFooterLink {
  color: color-mix(in srgb, var(--focus), black 10%);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  justify-self: center;
  padding: 2px 0 0;
  font-size: .92rem;
  font-weight: 600;
  line-height: 1.2;
  transition: color .15s, opacity .15s;
}

.timesheetMonthPickerFooterLink:hover {
  color: var(--focus);
}

.localizedMonthInput {
  width: 100%;
  min-width: 0;
  position: relative;
}

.localizedMonthInputTrigger {
  text-align: left;
  font: inherit;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  line-height: 1.2;
  display: inline-flex;
}

.localizedMonthInputTrigger:disabled {
  cursor: not-allowed;
  opacity: .68;
}

.localizedMonthInputValue {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.localizedMonthInputValue.isPlaceholder {
  color: color-mix(in srgb, var(--muted), white 28%);
}

.localizedMonthInputIcon {
  color: color-mix(in srgb, var(--muted), var(--fg) 12%);
  flex: none;
}

.localizedMonthInputPopover {
  left: 0;
  transform: none;
}

.localizedMonthInputFooter {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 32px;
  display: flex;
}

.localizedMonthInputFooter .timesheetMonthPickerFooterLink {
  min-height: 32px;
}

.localizedDateInput {
  width: 100%;
  min-width: 0;
  position: relative;
}

.localizedDateInputTrigger {
  text-align: left;
  font: inherit;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  line-height: 1.2;
  display: inline-flex;
}

.localizedDateInputTrigger:disabled {
  cursor: not-allowed;
  opacity: .68;
}

.localizedDateInputPopover {
  width: min(332px, 100vw - 32px);
  overflow: auto;
  transform: none;
}

.localizedDatePickerHeader {
  grid-template-columns: 40px 40px minmax(0, 1fr) 40px 40px;
  align-items: center;
  gap: 6px;
  display: grid;
}

.localizedDatePickerMonthLabel {
  text-align: center;
  text-transform: capitalize;
  min-width: 0;
  font-size: .98rem;
  font-weight: 800;
  line-height: 1.15;
}

.localizedDatePickerGrid {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
  display: grid;
}

.localizedDatePickerWeekday {
  min-height: 24px;
  color: color-mix(in srgb, var(--muted), var(--fg) 12%);
  text-align: center;
  text-transform: uppercase;
  place-items: center;
  font-size: .72rem;
  font-weight: 800;
  line-height: 1;
  display: grid;
}

.localizedDatePickerBlank {
  min-height: 36px;
}

.localizedDatePickerDayBtn {
  min-width: 0;
  min-height: 36px;
  color: var(--fg);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 999px;
  place-items: center;
  padding: 0;
  font-size: .92rem;
  font-weight: 650;
  line-height: 1;
  transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s;
  display: inline-grid;
}

.localizedDatePickerDayBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--fg), transparent 95%);
}

.localizedDatePickerDayBtn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 55%);
  outline: none;
}

.localizedDatePickerDayBtn.isSelected {
  border-color: color-mix(in srgb, var(--focus), transparent 70%);
  background: color-mix(in srgb, var(--focus), white 90%);
  color: color-mix(in srgb, var(--focus), black 18%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--focus), transparent 76%);
  border-radius: 8px;
  font-weight: 800;
}

.localizedDatePickerDayBtn.isToday:not(.isSelected) {
  color: color-mix(in srgb, var(--focus), black 10%);
}

.localizedDatePickerDayBtn.isToday:not(.isSelected):after {
  content: "";
  background: color-mix(in srgb, var(--focus), transparent 38%);
  border-radius: 999px;
  width: 12px;
  height: 2px;
  margin-top: -2px;
}

.localizedDatePickerDayBtn:disabled {
  opacity: .38;
  cursor: not-allowed;
}

.localizedDateTimeInput {
  grid-template-columns: minmax(0, 1fr) minmax(112px, .36fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: grid;
}

.localizedDateTimeInput .localizedDateInput, .localizedDateTimeInput > .input {
  min-width: 0;
}

.timesheetLegendRow {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px 16px;
  display: grid;
}

.timesheetLegendItem {
  grid-template-columns: 12px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  min-width: 0;
  display: grid;
}

.timesheetLegendSwatch {
  width: 12px;
  height: 12px;
}

.timesheetLegendLabel {
  font-size: 13px;
  line-height: 1.25;
}

.field {
  gap: 8px;
  margin-top: 14px;
  display: grid;
}

.labelRow {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  display: flex;
}

.label {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  font-size: 12px;
}

.input {
  appearance: none;
  background: var(--bg-2);
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  outline: none;
  padding: 10px 12px;
  font-size: 16px;
}

.input::placeholder, .textarea::placeholder {
  color: color-mix(in srgb, var(--muted), white 54%);
  opacity: 1;
}

.input:focus {
  border-color: color-mix(in srgb, var(--focus), black 6%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 72%);
}

.input:focus:not(:focus-visible) {
  border-color: var(--stroke);
  box-shadow: none;
}

@media (max-width: 720px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]), textarea, select {
    font-size: 16px;
  }
}

.appBackLink {
  appearance: none;
  width: fit-content;
  min-height: 44px;
  color: color-mix(in srgb, var(--focus), black 8%);
  font: inherit;
  white-space: nowrap;
  cursor: pointer;
  touch-action: manipulation;
  background: none;
  border: 0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 0 9px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  transition: background-color .14s, color .14s;
  display: inline-flex;
}

.appBackLink:hover {
  background: color-mix(in srgb, var(--focus), white 95%);
}

.appBackLink:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 28%);
  outline-offset: 1px;
}

.appBackLinkIcon {
  stroke-width: 2px;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.btn {
  appearance: none;
  border: 1px solid var(--stroke);
  background: var(--bg-2);
  color: var(--fg);
  border-radius: var(--radius);
  text-align: center;
  cursor: pointer;
  touch-action: manipulation;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  padding: 10px 14px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  transition: background-color .14s, border-color .14s, color .14s, box-shadow .14s;
  display: inline-flex;
}

.btn:hover {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 4%);
  border-color: color-mix(in srgb, var(--stroke), black 12%);
}

.btn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 70%);
  outline: none;
}

.btn:disabled {
  cursor: not-allowed;
  opacity: 1;
  color: color-mix(in srgb, var(--fg), var(--muted) 48%);
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 20%);
  box-shadow: none;
}

.btnPrimary {
  border-color: color-mix(in srgb, var(--accent), black 16%);
  background: var(--accent);
  color: #fff;
}

.btnAction {
  border-color: color-mix(in srgb, var(--focus), black 16%);
  background: var(--focus);
  color: #fff;
}

.btnDanger {
  border-color: color-mix(in srgb, var(--danger), black 18%);
  background: var(--danger);
  color: #fff;
}

.btnSuccess {
  border-color: color-mix(in srgb, var(--ok), black 16%);
  background: var(--ok);
  color: #fff;
}

.btnPrimary:hover:not(:disabled) {
  background: color-mix(in srgb, var(--accent), black 10%);
}

.btnAction:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), black 10%);
}

.btnDanger:hover:not(:disabled) {
  background: color-mix(in srgb, var(--danger), black 10%);
}

.btnSuccess:hover:not(:disabled) {
  background: color-mix(in srgb, var(--ok), black 10%);
}

.btnPrimary:disabled {
  background: color-mix(in srgb, var(--accent), white 34%);
  border-color: color-mix(in srgb, var(--accent), black 8%);
  color: #fff;
}

.btnAction:disabled {
  background: color-mix(in srgb, var(--focus), white 34%);
  border-color: color-mix(in srgb, var(--focus), black 8%);
  color: #fff;
}

.btnDanger:disabled {
  background: color-mix(in srgb, var(--danger), white 34%);
  border-color: color-mix(in srgb, var(--danger), black 8%);
  color: #fff;
}

.btnSuccess:disabled {
  background: color-mix(in srgb, var(--ok), white 34%);
  border-color: color-mix(in srgb, var(--ok), black 8%);
  color: #fff;
}

input[type="checkbox"], input[type="radio"] {
  accent-color: var(--focus);
  width: 16px;
  height: 16px;
}

input[type="checkbox"]:focus-visible, input[type="radio"]:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 65%);
  outline-offset: 2px;
}

.pill {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  color: var(--muted);
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  display: inline-flex;
}

.pillStatusDraft {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  color: var(--muted);
}

.pillStatusNew {
  background: color-mix(in srgb, var(--focus), white 88%);
  color: color-mix(in srgb, var(--focus), black 24%);
}

.pillStatusViewed {
  background: color-mix(in srgb, var(--muted), white 88%);
  color: color-mix(in srgb, var(--muted), black 28%);
}

.pillStatusSubmitted {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  background: color-mix(in srgb, var(--focus), white 92%);
  color: var(--fg);
}

.pillStatusPending {
  border-color: color-mix(in srgb, var(--accent), transparent 45%);
  background: color-mix(in srgb, var(--accent), white 92%);
  color: color-mix(in srgb, var(--fg), black 6%);
}

.pillStatusApproved {
  border-color: color-mix(in srgb, var(--ok), transparent 55%);
  background: color-mix(in srgb, var(--ok), white 94%);
  color: var(--fg);
}

.pillStatusRejected {
  border-color: color-mix(in srgb, var(--danger), transparent 48%);
  background: color-mix(in srgb, var(--danger), white 92%);
  color: var(--fg);
}

.pillStatusLocked {
  border-color: color-mix(in srgb, var(--focus), transparent 55%);
  background: color-mix(in srgb, var(--focus), white 94%);
  color: var(--fg);
}

.documentSemanticLabel {
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
  border: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 24px;
  padding: 0 9px;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.1;
  display: inline-flex;
}

:where(.semanticLabel:is(.semanticLabelStatus, .semanticLabelCategory, .semanticLabelAttention, .semanticLabelProvenance)) {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  color: var(--muted);
  display: inline-flex;
}

html:root .semanticLabel:is(.semanticLabelStatus, .semanticLabelCategory, .semanticLabelAttention, .semanticLabelProvenance) {
  width: fit-content;
  max-width: 100%;
  box-shadow: none;
  white-space: nowrap;
  border: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

html:root .semanticLabel.semanticLabelStatus {
  letter-spacing: 0;
  text-transform: none;
  min-height: 24px;
  padding: 0 9px;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.1;
}

html:root .semanticLabel:is(.semanticLabelCategory, .semanticLabelAttention) {
  letter-spacing: .035em;
  text-transform: uppercase;
  min-height: 19px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 750;
  line-height: 1;
}

html:root .semanticLabel.semanticLabelProvenance {
  letter-spacing: 0;
  text-transform: none;
  min-height: 19px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.signaturePlacementViewer {
  gap: 10px;
  display: grid;
}

.signaturePlacementHeader {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  display: grid;
}

.signaturePlacementHeader h2, .signaturePlacementHeader p {
  margin: 0;
}

.signaturePlacementHeader h2 {
  font-size: 17px;
  line-height: 1.15;
}

.signaturePlacementHeader p {
  max-width: 66ch;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.25;
}

.signaturePlacementWorkflowAction {
  justify-content: flex-end;
  align-items: center;
  gap: 2px;
  display: flex;
}

.signaturePlacementOverlay {
  z-index: 2;
  border: 1.5px solid var(--focus);
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border-radius: 7px;
  display: block;
  position: absolute;
  box-shadow: 0 8px 20px #2563eb24;
}

.signaturePlacementReferenceOverlay {
  z-index: 1;
  border: 1px dashed color-mix(in srgb, var(--focus), transparent 35%);
  color: color-mix(in srgb, var(--focus), black 18%);
  letter-spacing: .03em;
  text-align: center;
  text-transform: uppercase;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  background: #ffffff94;
  border-radius: 6px;
  place-items: center;
  padding: 3px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.1;
  display: grid;
  position: absolute;
  overflow: hidden;
}

.signaturePlacementReferenceOverlay.isReserved {
  border-color: color-mix(in srgb, var(--muted), transparent 42%);
  color: color-mix(in srgb, var(--muted), var(--fg) 16%);
  letter-spacing: .01em;
  opacity: .78;
  background: #ffffff5c;
  font-weight: 700;
}

.signaturePlacementOverlay:before {
  content: "";
  position: absolute;
  inset: -12px;
}

.signaturePlacementOverlay:active {
  cursor: grabbing;
}

.signaturePlacementOverlay.isReadOnly {
  cursor: default;
  touch-action: pan-x pan-y pinch-zoom;
}

.signaturePlacementOverlay.isReadOnly:active {
  cursor: default;
}

.signaturePlacementOverlay:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--focus), transparent 32%);
  outline-offset: 3px;
}

.signaturePlacementOverlay img {
  object-fit: contain;
  pointer-events: none;
  mix-blend-mode: multiply;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  position: absolute;
  inset: 2px;
}

.signaturePlacementOverlayLabel {
  width: 100%;
  height: 100%;
  color: var(--focus);
  letter-spacing: .04em;
  text-align: center;
  text-transform: uppercase;
  -webkit-user-select: none;
  user-select: none;
  place-items: center;
  padding: 6px;
  font-size: clamp(10px, 1.2vw, 13px);
  font-weight: 800;
  line-height: 1.15;
  display: grid;
}

.signaturePlacementOverlay.hasFooter img {
  height: calc(100% - 19px);
  bottom: 15px;
}

.signaturePlacementOverlayFooter {
  color: color-mix(in srgb, var(--fg), transparent 16%);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  font-size: clamp(6px, 1.1vw, 9px);
  font-weight: 560;
  line-height: 1.15;
  position: absolute;
  bottom: 1px;
  left: 2px;
  right: 2px;
  overflow: hidden;
}

.signaturePlacementResizeHandle {
  background: var(--focus);
  cursor: nwse-resize;
  touch-action: none;
  border: 2px solid #fff;
  border-radius: 999px;
  width: 28px;
  height: 28px;
  position: absolute;
  bottom: -12px;
  right: -12px;
  box-shadow: 0 5px 16px #2563eb47;
}

.signaturePlacementResizeHandle:before {
  content: "";
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  inset: 8px;
}

@media (max-width: 900px) {
  .signaturePlacementHeader {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 720px) {
  .signaturePlacementViewer {
    gap: 12px;
  }

  .signaturePlacementHeader.hasWorkflowAction {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 10px;
  }

  .signaturePlacementHeader.hasWorkflowAction.hasCompactControls {
    align-items: center;
  }

  .signaturePlacementHeader h2 {
    font-size: 22px;
  }

  .signaturePlacementHeader p {
    font-size: 15px;
  }

  .signaturePlacementResizeHandle {
    width: 44px;
    height: 44px;
    box-shadow: none;
    background: none;
    border: 0;
    bottom: -20px;
    right: -20px;
  }

  .signaturePlacementResizeHandle:after {
    content: "";
    background: var(--focus);
    border: 2px solid #fff;
    border-radius: 999px;
    position: absolute;
    inset: 7px;
    box-shadow: 0 5px 16px #2563eb47;
  }

  .signaturePlacementResizeHandle:before {
    z-index: 1;
    inset: 15px;
  }
}

.topbar {
  z-index: 10;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: color-mix(in srgb, var(--bg-2), transparent 10%);
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  position: sticky;
  top: 0;
}

.topbarInner, .appTopbarInner {
  max-width: var(--container);
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin: 0 auto;
  padding: 14px 20px;
  display: flex;
}

.topbarActions, .appTopbarActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  display: flex;
}

.topbarRight, .appTopbarRight {
  align-items: center;
  gap: 10px;
  display: inline-flex;
}

.brand, .appBrand {
  align-items: center;
  gap: 12px;
  display: flex;
}

.brandLogo, .appBrandLogo {
  flex: none;
  width: auto;
  height: 24px;
}

.brandBlock, .appBrandBlock {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.brandTitle, .appBrandTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  font-size: 18px;
  line-height: 1.1;
}

.brandWelcome, .appBrandWelcome {
  font-size: 12px;
}

.appVersionTag {
  color: var(--muted);
  opacity: .9;
  font-size: 11px;
}

.nav, .appNav {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.navLink, .appNavLink {
  border-radius: var(--radius);
  color: var(--muted);
  border: 1px solid #0000;
  padding: 10px 12px;
}

.navLink:hover, .appNavLink:hover {
  border-color: color-mix(in srgb, var(--stroke), transparent 0%);
  color: var(--fg);
}

.navLink:focus-visible, .appNavLink:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 25%);
  outline-offset: 2px;
  border-color: color-mix(in srgb, var(--stroke), transparent 0%);
  color: var(--fg);
}

.navLinkActive, .appNavLinkActive {
  border-color: color-mix(in srgb, var(--focus), transparent 48%);
  color: var(--fg);
  background: color-mix(in srgb, var(--focus), white 90%);
}

.card:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 25%);
  outline-offset: 2px;
}

.localeSwitcher {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  align-items: center;
  display: inline-flex;
  overflow: hidden;
}

.localeOption {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  border-left: 1px solid var(--stroke);
  padding: 9px 10px;
  font-size: 12px;
}

.localeOption:first-child {
  border-left: none;
}

.localeOption:hover {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 2%);
  color: var(--fg);
}

.localeOption:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 20%);
  outline-offset: -2px;
}

.localeOptionActive {
  background: color-mix(in srgb, var(--accent), white 92%);
  color: var(--fg);
}

.skipLink {
  z-index: 100;
  background: var(--bg-2);
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  opacity: 0;
  pointer-events: none;
  padding: 10px 12px;
  transition: opacity .12s, transform .12s;
  position: absolute;
  top: 10px;
  left: 10px;
  transform: translateY(calc(-100% - 20px));
}

.skipLink:focus, .skipLink:focus-visible {
  opacity: 1;
  pointer-events: auto;
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 15%);
  outline-offset: 2px;
  transition: none;
  transform: translateY(0);
}

.errorBox {
  border: 1px solid color-mix(in srgb, var(--danger), transparent 55%);
  background: color-mix(in srgb, var(--danger), white 92%);
  border-radius: var(--radius);
  color: color-mix(in srgb, var(--danger), black 15%);
  margin-top: 12px;
  padding: 12px 14px;
  font-size: 14px;
}

.loginFormAlert {
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--danger), white 52%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--danger), white 92%);
  width: 100%;
  min-height: 52px;
  color: color-mix(in srgb, var(--danger), black 12%);
  align-items: center;
  margin-top: 14px;
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.4;
  display: flex;
}

.loginCredentialInput[aria-invalid="true"] {
  border-color: color-mix(in srgb, var(--danger), white 28%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--danger), transparent 78%);
}

.loginCredentialInput[aria-invalid="true"]:focus {
  border-color: var(--danger);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--danger), transparent 78%);
}

.loginCredentialInput[aria-invalid="true"]:focus:not(:focus-visible) {
  border-color: color-mix(in srgb, var(--danger), white 28%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--danger), transparent 78%);
}

.loginCredentialError {
  color: color-mix(in srgb, var(--danger), black 10%);
  align-items: flex-start;
  gap: 7px;
  margin: 2px 0 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  display: flex;
}

.loginCredentialErrorIcon {
  background: var(--danger);
  color: #fff;
  border-radius: 50%;
  flex: 0 0 16px;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: inline-flex;
}

.loginCredentialField:has(.loginCredentialError) .passwordCapsSlot:empty {
  min-height: 0;
}

.cmPopover {
  z-index: 20;
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  box-shadow: var(--shadow);
  max-height: 280px;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  overflow: auto;
}

.cmPopoverList {
  gap: 2px;
  padding: 6px;
  display: grid;
}

.cmPopoverOption {
  width: 100%;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 2px;
  gap: 2px;
  padding: 8px 10px;
  display: grid;
}

.cmPopoverOption:hover {
  background: color-mix(in srgb, var(--bg), var(--fg) 4%);
}

.cmPopoverOption.isActive {
  background: color-mix(in srgb, var(--focus), white 88%);
}

.cmPopoverOption:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 20%);
  outline-offset: 1px;
}

@media (max-width: 960px) {
  .topbarInner, .appTopbarInner {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .brand, .appBrand {
    width: 100%;
  }

  .topbarActions, .appTopbarActions {
    justify-content: space-between;
    width: 100%;
  }
}

@media (max-width: 680px) {
  .topbarInner, .appTopbarInner {
    gap: 8px;
    padding: 8px 10px;
  }

  .content {
    padding: 12px 12px 28px;
  }

  .container {
    padding: 12px;
  }

  .topbarActions, .appTopbarActions {
    gap: 6px;
    display: grid;
  }

  .nav, .appNav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    width: 100%;
    display: grid;
  }

  .navLink, .appNavLink {
    text-align: center;
    justify-content: center;
    align-items: center;
    min-height: 44px;
    padding: 6px;
    font-size: 13px;
    line-height: 1.2;
    display: inline-flex;
  }

  .topbarRight, .appTopbarRight {
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 6px;
    width: 100%;
  }

  .localeSwitcher {
    flex: auto;
    min-width: 0;
  }

  .localeOption {
    text-align: center;
    flex: 1 1 0;
    padding: 9px 8px;
  }

  .topbarRight form, .appTopbarRight form {
    flex: none;
  }

  .topbarRight form .btn, .appTopbarRight form .btn {
    min-width: 88px;
    min-height: 44px;
    padding-left: 8px;
    padding-right: 8px;
  }

  .brandTitle {
    font-size: 16px !important;
  }

  .brandWelcome {
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%;
    line-height: 1.2;
    overflow: hidden;
    font-size: 11px !important;
  }
}

@media (max-width: 760px) {
  .timesheetMonthNav {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }

  .timesheetMonthNavTrigger {
    min-width: 0;
    max-width: min(68vw, 240px);
    padding-left: 8px;
    padding-right: 8px;
    font-size: 15px;
  }

  .timesheetMonthPickerPopover {
    width: min(312px, 100vw - 24px);
  }

  .timesheetMonthPickerGrid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .timesheetMonthPickerSheetCard {
    width: 100%;
  }

  .timesheetMonthPickerYearBtn {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  .timesheetMonthPickerYearRow {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }

  .timesheetMonthPickerMonthBtn {
    min-height: 46px;
  }

  .localizedDateInputPopover {
    width: min(312px, 100vw - 24px);
  }

  .localizedDatePickerHeader {
    grid-template-columns: 40px 40px minmax(0, 1fr) 40px 40px;
  }

  .localizedDatePickerDayBtn, .localizedDatePickerBlank {
    min-height: 44px;
  }

  .localizedDateTimeInput {
    grid-template-columns: 1fr;
  }

  .timesheetMonthPickerFooterLink {
    align-self: start;
    min-height: 44px;
  }
}

@media (max-width: 420px) {
  .navLink, .appNavLink {
    font-size: 12px;
  }

  .brandTitle {
    font-size: 15px !important;
  }

  .brandWelcome {
    display: none;
  }
}

.timesheetDayEditorShellBody {
  gap: 12px;
  display: grid;
}

.timesheetDayEditorSection {
  gap: 10px;
  display: grid;
}

.timesheetDayEditorActions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.timesheetDayEditorError {
  margin: 0;
}

.signaturePackageIntegrity {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  gap: 12px;
  min-width: 0;
  padding-top: 14px;
  display: grid;
  container-type: inline-size;
}

.signaturePackageIntegrityResultHead, .signaturePackageIntegrityArtifact {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.signaturePackageIntegrityHead {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: grid;
}

.signaturePackageIntegrityTitle {
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  display: grid;
}

.signaturePackageIntegrityTitle > svg {
  width: 20px;
  height: 20px;
  color: var(--focus);
  flex: none;
}

.signaturePackageIntegrityTitle > div, .signaturePackageIntegrityLocal > div {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.signaturePackageIntegrityTitle strong, .signaturePackageIntegrityLocal strong {
  overflow-wrap: break-word;
}

.signaturePackageIntegrityDescription {
  min-width: 0;
  color: var(--muted);
  margin: 0;
  font-size: .86rem;
  line-height: 1.45;
}

.signaturePackageIntegrityTitle small, .signaturePackageIntegrityLocal small, .signaturePackageIntegrityResultHead small, .signaturePackageIntegrityLocalResult small {
  color: var(--muted);
  line-height: 1.4;
}

.signaturePackageIntegrityVerify, .signaturePackageIntegrityFile {
  flex: none;
  gap: 7px;
}

.signaturePackageIntegrityVerify {
  white-space: nowrap;
}

.signaturePackageIntegrityVerify svg, .signaturePackageIntegrityFile svg {
  width: 17px;
  height: 17px;
}

.signaturePackageIntegrity .isSpinning {
  animation: .8s linear infinite signature-package-integrity-spin;
}

@keyframes signature-package-integrity-spin {
  to {
    transform: rotate(360deg);
  }
}

.signaturePackageIntegrityError {
  color: var(--danger);
  margin: 0;
  font-weight: 600;
}

.signaturePackageIntegrityResult {
  gap: 12px;
  display: grid;
}

.signaturePackageIntegrity.isStatusFirst {
  gap: 0;
}

.signaturePackageIntegritySummary {
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-height: 44px;
  display: grid;
}

.signaturePackageIntegritySummary > svg {
  margin-top: 1px;
}

.signaturePackageIntegritySummary > svg, .signaturePackageIntegrityWarning > svg {
  width: 22px;
  height: 22px;
}

.signaturePackageIntegritySummary > div, .signaturePackageIntegrityWarning > div {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.signaturePackageIntegritySummary small, .signaturePackageIntegrityWarning small {
  color: var(--muted);
  line-height: 1.4;
}

.signaturePackageIntegritySummary.isChecking > svg, .signaturePackageIntegritySummary.isNeutral > svg {
  color: var(--focus);
}

.signaturePackageIntegrityWarning {
  border: 1px solid color-mix(in srgb, var(--danger), transparent 52%);
  background: color-mix(in srgb, var(--danger), white 95%);
  border-radius: 8px;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px 12px;
  padding: 12px;
  display: grid;
}

.signaturePackageIntegrityWarning > svg, .signaturePackageIntegrityWarning strong {
  color: color-mix(in srgb, var(--danger), black 18%);
}

.signaturePackageIntegrityRetry {
  white-space: nowrap;
  gap: 7px;
  min-height: 44px;
}

.signaturePackageIntegrityRetry svg {
  width: 17px;
  height: 17px;
}

.signaturePackageIntegrityTechnical {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
}

.signaturePackageIntegrity.isStatusFirst .signaturePackageIntegrityTechnical {
  border-top: 0;
}

.signaturePackageIntegrityTechnical > summary {
  cursor: pointer;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 0;
  font-weight: 700;
  list-style: none;
  display: flex;
}

.signaturePackageIntegrityTechnical > summary::-webkit-details-marker {
  display: none;
}

.signaturePackageIntegrity.isStatusFirst .signaturePackageIntegrityArtifacts > summary::-webkit-details-marker {
  display: none;
}

.signaturePackageIntegrityLocalDisclosure > summary::-webkit-details-marker {
  display: none;
}

.signaturePackageIntegrityTechnical > summary:after, .signaturePackageIntegrity.isStatusFirst .signaturePackageIntegrityArtifacts > summary:after, .signaturePackageIntegrityLocalDisclosure > summary:after {
  content: "";
  border-right: 2px solid color-mix(in srgb, var(--fg), white 34%);
  border-bottom: 2px solid color-mix(in srgb, var(--fg), white 34%);
  flex: none;
  width: 8px;
  height: 8px;
  transition: transform .15s;
  transform: rotate(-45deg);
}

.signaturePackageIntegrityTechnical[open] > summary:after, .signaturePackageIntegrity.isStatusFirst .signaturePackageIntegrityArtifacts[open] > summary:after, .signaturePackageIntegrityLocalDisclosure[open] > summary:after {
  transform: rotate(45deg);
}

.signaturePackageIntegrityTechnical > summary > span:first-child {
  min-width: 0;
  margin-right: auto;
}

.signaturePackageIntegrityTechnicalBody {
  gap: 0;
  padding-bottom: 2px;
  display: grid;
}

.signaturePackageIntegrityVerifiedAt {
  color: var(--muted);
  padding: 1px 0 10px;
  line-height: 1.4;
}

.signaturePackageIntegrityStatus, .signaturePackageIntegrityArtifactStatus {
  text-align: center;
  border: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 24px;
  padding: 3px 9px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.signaturePackageIntegrityStatus.isVERIFIED, .signaturePackageIntegrityArtifactStatus.isVERIFIED {
  background: color-mix(in srgb, var(--ok), white 89%);
  color: color-mix(in srgb, var(--ok), black 25%);
}

.signaturePackageIntegrityStatus.isISSUES_FOUND, .signaturePackageIntegrityArtifactStatus.isMODIFIED, .signaturePackageIntegrityArtifactStatus.isMISSING {
  background: color-mix(in srgb, var(--danger), white 89%);
  color: color-mix(in srgb, var(--danger), black 25%);
}

.signaturePackageIntegrityStatus.isNOT_SIGNED, .signaturePackageIntegrityArtifactStatus.isNOT_APPLICABLE {
  background: color-mix(in srgb, var(--muted), white 88%);
  color: color-mix(in srgb, var(--muted), black 28%);
}

.signaturePackageIntegrityArtifacts {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
}

.signaturePackageIntegrityArtifacts > summary {
  cursor: pointer;
  min-height: 44px;
  padding: 11px 0;
  font-weight: 700;
}

.signaturePackageIntegrity.isStatusFirst .signaturePackageIntegrityArtifacts > summary, .signaturePackageIntegrityLocalDisclosure > summary {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  list-style: none;
  display: flex;
}

.signaturePackageIntegrityArtifactList {
  padding: 0 0 10px;
  display: grid;
}

.signaturePackageIntegrityArtifact {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 28%);
  min-height: 38px;
  padding: 7px 0;
}

.signaturePackageIntegrityArtifact > span:first-child {
  overflow-wrap: anywhere;
  min-width: 0;
}

.signaturePackageIntegrityLocal {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  display: grid;
}

.signaturePackageIntegrityLocalDisclosure {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
}

.signaturePackageIntegrityLocalDisclosure > summary {
  cursor: pointer;
  min-height: 44px;
  padding: 11px 0;
  font-weight: 700;
}

.signaturePackageIntegrityLocalDisclosureBody {
  gap: 10px;
  padding: 2px 0 12px;
  display: grid;
}

.signaturePackageIntegrityFile {
  cursor: pointer;
}

.signaturePackageIntegrityFileInput {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.signaturePackageIntegrityLocalResult {
  border-left: 3px solid var(--ok);
  background: color-mix(in srgb, var(--ok), white 94%);
  gap: 2px;
  padding: 10px 12px;
  display: grid;
}

.signaturePackageIntegrityLocalResult.isMismatch {
  border-left-color: var(--danger);
  background: color-mix(in srgb, var(--danger), white 94%);
}

@container (max-width: 520px) {
  .signaturePackageIntegrityHead, .signaturePackageIntegrityLocal {
    grid-template-columns: minmax(0, 1fr);
  }

  .signaturePackageIntegrityWarning {
    grid-template-columns: 22px minmax(0, 1fr);
  }

  .signaturePackageIntegrityVerify, .signaturePackageIntegrityFile, .signaturePackageIntegrityRetry {
    width: 100%;
  }

  .signaturePackageIntegrityWarning .signaturePackageIntegrityRetry {
    grid-column: 1 / -1;
  }
}

.cmListEmptyState {
  text-align: center;
  background: none;
  border: 0;
  border-radius: 0;
  align-content: center;
  justify-items: center;
  gap: 10px;
  min-width: 0;
  padding: 32px 20px;
  display: grid;
}

.cmListEmptyStateCompact {
  padding-block: 24px;
}

.cmListEmptyStateIcon {
  color: var(--muted);
  display: inline-flex;
}

.cmListEmptyStateIcon > svg {
  width: 24px;
  height: 24px;
}

.cmListEmptyState[data-empty-state-kind="filtered"] .cmListEmptyStateIcon {
  color: var(--focus);
}

.cmListEmptyState[data-empty-state-kind="error"] .cmListEmptyStateIcon {
  color: var(--danger);
}

.cmListEmptyStateCopy {
  gap: 6px;
  display: grid;
}

.cmListEmptyState :is(h2, h3), .cmListEmptyStateTitle {
  color: var(--fg);
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
}

.cmListEmptyStateDescription {
  max-width: 52ch;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.cmListEmptyStateDescription p {
  margin: 0;
}

.cmListEmptyStateActions {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  max-width: 100%;
  padding-top: 4px;
  display: flex;
}

.cmListEmptyStateActions > :is(a, button) {
  max-width: 100%;
  min-height: 44px;
}

@media (max-width: 640px) {
  .cmListEmptyState {
    padding: 24px 16px;
  }
}

/* [project]/apps/portal/src/app/globals.css [app-client] (css) */
html, body {
  scrollbar-gutter: stable both-edges;
}

html.portalSheetOpen, body.portalSheetOpen, :is(html:has(.loginMain), body:has(.loginMain)) {
  scrollbar-gutter: auto;
}

html {
  --calendar-worked-fill: #f1f8f3;
  --calendar-worked-border: #8fc79e;
  --calendar-worked-text: #2e6b46;
  --calendar-attention-fill: #fcf5ec;
  --calendar-attention-border: #d9a66b;
  --calendar-attention-text: #8a4f1d;
  --calendar-missing-fill: #fdf1f2;
  --calendar-missing-border: #e58a95;
  --calendar-missing-text: #b4232c;
  --calendar-blank-fill: #fff;
  --calendar-blank-border: #e5e7eb;
  --calendar-blank-text: #98a2b3;
  --calendar-weekend-fill: #f8fafc;
  --calendar-weekend-border: #d0d5dd;
  --calendar-weekend-text: #667085;
  --calendar-neutral-fill: #fcfcfd;
  --calendar-neutral-border: #d5d9df;
  --calendar-neutral-text: #667085;
  --calendar-readonly-stripe: #94a3b826;
  overflow-y: auto;
}

@media (max-width: 860px) {
  body[data-portal-mobile-chat-thread] {
    overscroll-behavior: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  html:has(body[data-portal-mobile-chat-thread]) {
    overscroll-behavior: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  body[data-portal-mobile-chat-thread] {
    position: fixed;
    inset: 0;
  }
}

.calendarCell {
  text-align: left;
  width: 100%;
  min-height: 44px;
  color: inherit;
  font: inherit;
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  display: block;
}

.calendarCell:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 15%);
  outline-offset: 2px;
}

.timesheetCellHint {
  letter-spacing: .04em;
  max-width: min(75%, 12ch);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.15;
}

.timesheetCellContent {
  grid-template-rows: auto 1fr;
  gap: 8px;
  min-height: 72px;
  padding: 10px;
  display: grid;
}

.timesheetCellPrimary {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.timesheetCellContentLocked {
  position: relative;
}

.timesheetCellContentLocked .timesheetCellHeader {
  padding-right: 16px;
}

.timesheetCellHeader {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  column-gap: 4px;
  display: grid;
  overflow: hidden;
}

.timesheetCellDayNum {
  font-family: var(--font-mono);
  color: color-mix(in srgb, var(--calendar-neutral-text), var(--fg) 16%);
  font-size: 13px;
  line-height: 1;
}

.timesheetMonthGrid .timesheetCellHeader {
  overflow: visible;
}

.timesheetCellDayNumToday {
  z-index: 0;
  color: #fff;
  width: max-content;
  font-weight: 700;
  position: relative;
}

.timesheetCellDayNumToday:before {
  content: "";
  background: var(--focus);
  z-index: -1;
  pointer-events: none;
  border-radius: 999px;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.timesheetCellHours {
  white-space: nowrap;
  text-align: right;
  font-size: 12px;
  line-height: 1;
}

.timesheetCalendarDayLink {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  touch-action: manipulation;
}

.timesheetCellSelectMark {
  border-radius: 2px;
  place-items: center;
  width: 16px;
  height: 16px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: grid;
  position: absolute;
  bottom: 8px;
  right: 8px;
}

.timesheetCellLock {
  width: 14px;
  height: 14px;
  color: color-mix(in srgb, var(--muted), var(--fg) 16%);
  pointer-events: none;
  display: block;
  position: absolute;
  top: 8px;
  right: 8px;
}

.timesheetCellLock svg {
  width: 100%;
  height: 100%;
  display: block;
}

.timesheetCellHint {
  align-self: end;
}

.timesheetCellHintFull {
  white-space: normal;
  overflow-wrap: anywhere;
  display: block;
}

.timesheetDayPlaceholder {
  height: 72px;
}

.timesheetCellHoursCompact, .timesheetCellHintShort {
  display: none;
}

.timesheetMonthGridWrap {
  padding-bottom: 2px;
  overflow: auto hidden;
}

.timesheetMonthGrid {
  min-width: 700px;
}

.timesheetMainStack {
  gap: 12px;
  display: grid;
}

.timesheetFieldZero {
  margin-top: 0;
}

.portalInputHint {
  margin-top: 3px;
  margin-bottom: 8px;
  font-size: 12px;
  line-height: 1.3;
}

.successBox {
  border: 1px solid color-mix(in srgb, var(--ok), white 22%);
  background: color-mix(in srgb, var(--ok), white 90%);
  color: color-mix(in srgb, var(--ok), black 42%);
  border-radius: var(--radius);
  padding: 10px 12px;
  font-weight: 700;
  line-height: 1.35;
}

.portalNativeDateField {
  min-width: 0;
}

.portalNativeDateControl {
  background: var(--bg-2);
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  transition: border-color .14s, box-shadow .14s, background-color .14s, color .14s;
  display: flex;
  position: relative;
}

.portalNativeDateControl:focus-within {
  border-color: color-mix(in srgb, var(--focus), black 6%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 72%);
  outline: none;
}

.portalNativeDateControlValue {
  min-width: 0;
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-overflow: ellipsis;
  flex: auto;
  font-size: 14px;
  line-height: 1.2;
  overflow: hidden;
}

.portalNativeDateControl.isPlaceholder .portalNativeDateControlValue {
  color: var(--muted);
}

.portalNativeDateControlIcon {
  width: 16px;
  height: 16px;
  color: color-mix(in srgb, var(--fg), white 22%);
  flex: 0 0 16px;
}

.portalNativeDateControlIcon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.portalNativeDateControlInputHidden {
  opacity: 0;
  cursor: pointer;
  z-index: 1;
  background: none;
  border: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  position: absolute;
  inset: 0;
}

.portalNativeDateControlInputHidden::-webkit-date-and-time-value {
  opacity: 0;
}

.portalNativeDateControlInputHidden::-webkit-calendar-picker-indicator {
  opacity: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
}

.portalNativeDateControl.isDisabled {
  cursor: not-allowed;
  color: color-mix(in srgb, var(--fg), var(--muted) 48%);
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 20%);
  box-shadow: none;
}

.portalNativeDateControl.isDisabled .portalNativeDateControlValue, .portalNativeDateControl.isDisabled .portalNativeDateControlIcon {
  color: color-mix(in srgb, var(--fg), var(--muted) 48%);
}

.timesheetRelative {
  position: relative;
}

.timesheetSelectTrigger {
  text-align: left;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding-right: 10px;
  display: flex;
}

.timesheetSelectTriggerDisabled {
  cursor: not-allowed;
}

.timesheetSelectChevron {
  font-size: 12px;
}

.timesheetSelectMenu {
  z-index: 30;
  border: 1px solid var(--stroke);
  overscroll-behavior: contain;
  touch-action: pan-y;
  background: #fff;
  border-radius: 10px;
  gap: 2px;
  max-height: 260px;
  padding: 6px;
  display: grid;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  overflow-y: auto;
  box-shadow: 0 18px 42px #0f172a29;
}

.timesheetSelectMenuLow {
  z-index: 20;
}

.timesheetSelectOption {
  text-align: left;
  width: 100%;
  min-height: 44px;
  color: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  padding: 7px 9px;
  font-size: 14px;
}

.timesheetSelectOption:hover, .timesheetSelectOptionActive, .timesheetSelectOption[aria-selected="true"] {
  background: color-mix(in srgb, var(--focus), white 92%);
}

.timesheetSelectOption:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 28%);
  outline-offset: -1px;
}

.timesheetSelectOptionMono {
  font-family: var(--font-mono);
}

.timesheetSelectOptionSans {
  font-family: var(--font-sans);
}

.timesheetSelectOptionRow {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.timesheetSelectOptionCheck {
  color: color-mix(in srgb, var(--accent), black 20%);
  font-weight: 900;
}

.timesheetWeekdaysRow {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}

.timesheetWeekday {
  text-align: center;
  letter-spacing: .08em;
  font-size: 12px;
}

.timesheetMonthCardBody {
  gap: 14px;
  display: grid;
}

.timesheetTipIconMono {
  font-family: var(--font-mono);
  color: var(--muted);
}

.timesheetLegendInline {
  flex-wrap: wrap;
  gap: 14px;
  display: flex;
}

.timesheetLegendInlineItem {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.timesheetLegendInlineSwatch {
  border: 1px solid var(--stroke);
  width: 12px;
  height: 12px;
}

.timesheetLegendInlineSwatchWorked {
  background: color-mix(in srgb, var(--accent), white 90%);
  border-color: color-mix(in srgb, var(--accent), transparent 60%);
}

.timesheetLegendInlineSwatchAbsence {
  background: color-mix(in srgb, var(--focus), white 92%);
  border-color: color-mix(in srgb, var(--focus), transparent 60%);
}

.timesheetLegendInlineSwatchWeekend {
  background: color-mix(in srgb, var(--bg), var(--fg) 2%);
}

.timesheetLegendInlineText {
  font-size: 13px;
}

.timesheetMonoText {
  font-family: var(--font-mono);
}

.portalPageHero {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 84px;
  display: flex;
}

.portalPageHeroTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: 30px;
  line-height: 1.04;
}

.portalMobilePageStack {
  gap: 12px;
  display: grid;
}

.portalMobileActionCard, .portalMobileListCard {
  display: grid;
}

.portalFlatShellSection {
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.portalFlatShellSection > .cardBody {
  padding-left: 0;
  padding-right: 0;
}

.portalFlatHeaderCard {
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.portalFlatHeaderCard > .cardBody {
  padding-left: 0;
  padding-right: 0;
}

.portalMobileSectionGap {
  gap: 8px;
  display: grid;
}

.portalFormGrid2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.portalFormFieldFull {
  grid-column: 1 / -1;
}

.portalFormActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.portalHeroActionsDesktop {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.portalHeroActionsMobile {
  width: 100%;
  display: none;
}

.portalHeaderActionBtn {
  box-sizing: border-box;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 164px;
  min-height: 44px;
  font-weight: 700;
  line-height: 1.1;
  display: inline-flex;
  padding: 0 14px !important;
}

.portalHeroBackBtn {
  text-align: center;
  justify-content: center;
  align-items: center;
  min-width: 132px;
  min-height: 44px;
  display: inline-flex;
}

.timesheetDayPageHeaderCard {
  background: #fff;
}

.timesheetDayPageHeaderCard.isFlat {
  margin-bottom: 0;
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
}

.dayEditorPageCard {
  background: #fff;
}

.dayEditorPageCardAbsence {
  width: min(100%, 960px);
  margin-inline: auto;
}

.timesheetDayPageHeaderBody {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 12px;
  display: grid;
  padding: 8px 10px !important;
}

.timesheetDayPageHeaderTitle {
  min-width: 0;
  font-family: var(--font-condensed);
  letter-spacing: .01em;
  color: color-mix(in srgb, var(--fg), black 10%);
  margin: 0;
  font-size: clamp(20px, 1.8vw, 24px);
  font-weight: 700;
  line-height: 1.12;
}

.timesheetDayPageHeaderBack {
  min-height: 38px;
  color: color-mix(in srgb, var(--fg), white 30%);
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 500;
  display: inline-flex;
  padding: 5px 10px !important;
}

.timesheetDayPageHeaderBackIcon {
  flex: 0 0 14px;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  display: inline-flex;
}

.timesheetDayPageHeaderBackChevron {
  border-bottom: 2px solid;
  border-left: 2px solid;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
}

.timesheetCalendarTopBar {
  justify-content: stretch;
  align-items: center;
  width: 100%;
  min-height: 44px;
  display: flex;
}

.timesheetBulkInlineToggle {
  background: var(--bg-2);
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 11px 12px;
  display: inline-flex;
}

.timesheetCheckboxControl {
  width: 16px;
  height: 16px;
}

.timesheetBulkCardShell {
  box-shadow: none;
  background: var(--bg-2);
}

.timesheetBulkCardBody {
  gap: 12px;
  display: grid;
}

.timesheetBulkHeader {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.timesheetBulkHeaderLead {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.timesheetSmallMuted {
  font-size: 13px;
}

.timesheetBulkHeaderActions {
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.timesheetBulkSelectedInput {
  white-space: nowrap;
  width: auto;
  min-width: 0;
  min-height: 44px;
  font-family: var(--font-sans);
  letter-spacing: 0;
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  color: var(--fg);
  background: #fff;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  font-size: 15px;
  line-height: 1.2;
  display: inline-flex;
}

.timesheetBulkSelectedInput .mono {
  margin-left: auto;
}

.timesheetBulkSelectedLabelShort {
  display: none;
}

.timesheetBulkSelectionSection {
  gap: 10px;
  display: grid;
}

.timesheetBulkFlags {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.timesheetBulkInlineCheck {
  cursor: pointer;
  width: fit-content;
  color: var(--muted);
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: inline-flex;
}

.timesheetBulkActionSection {
  gap: 10px;
  display: grid;
}

.timesheetBulkModeSwitch {
  grid-template-columns: repeat(3, minmax(160px, max-content));
  justify-content: start;
  max-width: none;
}

.dayEditorTopMain .timesheetBulkModeSwitch {
  max-width: none;
}

.timesheetBulkToggleBtn {
  min-width: 140px;
}

.timesheetBulkCloseBtn, .timesheetBulkCloseBtn:hover, .timesheetBulkCloseBtn:active {
  border-color: var(--stroke);
  background: #fff;
}

.timesheetBulkCloseText {
  display: inline;
}

.timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedInput {
  justify-content: space-between;
  gap: 8px;
  width: 176px;
  min-height: 36px;
  padding: 0 11px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

.timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedInput .mono {
  margin-left: auto;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

.timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn, .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn:hover, .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn:active {
  width: 176px;
  min-width: 176px;
  min-height: 36px;
  font-size: 14px;
  line-height: 1;
  padding: 0 11px !important;
}

.timesheetBulkPanel, .timesheetBulkAdvancedPanel, .timesheetBulkIntervalsStack {
  gap: 12px;
  display: grid;
}

.timesheetBulkPillCheckbox {
  cursor: pointer;
  align-items: center;
  gap: 8px;
  width: fit-content;
  display: inline-flex;
}

.timesheetBulkTwoCol {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}

.timesheetBulkTwoColEnd {
  align-items: end;
}

.timesheetBulkIntervalRow {
  grid-template-columns: 1fr 1fr auto;
  gap: 10px;
  display: grid;
}

.timesheetTipsStack {
  gap: 8px;
  display: grid;
}

.timesheetSubmitPrimaryBtn {
  text-align: center;
  min-width: 180px;
}

.timesheetStatusSuccessPill {
  border-color: color-mix(in srgb, var(--ok), transparent 40%);
  background: color-mix(in srgb, var(--ok), white 92%);
  align-items: center;
  gap: 8px;
  width: fit-content;
  display: inline-flex;
}

.timesheetStatusSuccessIcon {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 25%);
  background: color-mix(in srgb, var(--ok), white 82%);
  width: 16px;
  height: 16px;
  color: color-mix(in srgb, var(--ok), black 20%);
  border-radius: 999px;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: grid;
}

.timesheetStatusText {
  font-size: 13px;
}

.pillStatusAttached {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  background: color-mix(in srgb, var(--focus), white 92%);
  color: var(--fg);
}

.timesheetLegendRow {
  flex-wrap: wrap;
  gap: 8px 16px;
  display: flex;
}

.timesheetLegendGroups {
  gap: 12px;
  display: grid;
}

.timesheetLegendGroups--desktop {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  align-items: start;
  gap: 16px;
  display: none;
}

.timesheetLegendGroups--desktop .timesheetLegendRow {
  grid-template-columns: minmax(0, 1fr);
  row-gap: 8px;
  display: grid;
}

.timesheetLegendDetails {
  display: block;
}

.timesheetLegendGroup {
  align-content: start;
  gap: 6px;
  display: grid;
}

.timesheetLegendGroupTitle {
  color: color-mix(in srgb, var(--muted), var(--fg) 18%);
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .6875rem;
  font-weight: 700;
  line-height: 1.2;
}

.timesheetLegendItem {
  grid-template-columns: 12px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  min-width: 0;
  display: grid;
}

.timesheetLegendSwatch {
  width: 12px;
  height: 12px;
}

.timesheetLegendLabel {
  font-size: 13px;
  line-height: 1.25;
}

.timesheetLegendSummary {
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  appearance: none;
  text-align: left;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  background: none;
  border: 0;
  border-radius: 6px;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 0 2px;
  font-family: inherit;
  font-size: .9375rem;
  font-weight: 700;
  line-height: 1;
  display: inline-grid;
}

.timesheetLegendSummary:hover {
  color: color-mix(in srgb, var(--fg), var(--focus) 20%);
}

.timesheetLegendSummary:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 3px;
}

.timesheetLegendSummaryTitle {
  min-width: 0;
}

.timesheetLegendSummaryChevron {
  color: var(--muted);
  justify-self: start;
  font-size: 1.05rem;
  line-height: 1;
  transition: transform .14s;
}

.timesheetLegendDetails.isOpen .timesheetLegendSummaryChevron {
  transform: rotate(90deg);
}

.timesheetLegendPanel {
  background: none;
  border: 0;
  border-radius: 0;
  margin-top: 2px;
  padding: 0 0 2px 20px;
}

.timesheetLegendPanel .timesheetLegendGroups {
  gap: 12px;
}

@media (min-width: 761px) {
  .timesheetLegendGroups--desktop {
    display: grid;
  }

  .timesheetLegendDetails {
    display: none;
  }
}

.reportListItemPrimary, .reportListItemName {
  min-width: 0;
}

.loginMain {
  background: radial-gradient(circle at 88% 14%, color-mix(in srgb, var(--focus), transparent 93%), transparent 32%),
    linear-gradient(145deg, color-mix(in srgb, var(--bg-2), white 55%), var(--bg) 62%);
  place-items: center;
  max-width: none;
  min-height: 100dvh;
  padding: clamp(24px, 5vw, 64px);
  display: grid;
}

.loginCard {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 7%);
  background: var(--bg);
  width: min(980px, 100%);
  min-height: 560px;
  box-shadow: 0 24px 70px color-mix(in srgb, var(--fg), transparent 88%);
  border-radius: 16px;
  grid-template-columns: minmax(310px, .86fr) minmax(440px, 1.14fr);
  display: grid;
  overflow: hidden;
}

.portalPublicAuthBrandPanel {
  color: #f8fafc;
  background: linear-gradient(#ffffff0a 1px, transparent 1px),
    linear-gradient(90deg, #ffffff0a 1px, transparent 1px),
    linear-gradient(160deg, color-mix(in srgb, #30465e, var(--focus) 8%), #24384f 64%, #1f3044);
  background-size: 32px 32px, 32px 32px, auto;
  align-content: space-between;
  gap: 40px;
  min-width: 0;
  padding: 46px 40px 34px;
  display: grid;
}

.portalPublicAuthBrandContent {
  align-content: start;
  justify-items: start;
  display: grid;
}

.portalPublicAuthBrandLogoFrame {
  background: #fff;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  min-height: 50px;
  margin-bottom: 34px;
  padding: 9px 12px;
  display: inline-flex;
  box-shadow: 0 8px 24px #0f172a29;
}

.loginBrandLogo {
  width: auto;
  height: 28px !important;
}

.portalPublicAuthBrandName {
  color: #cbd5e1;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
}

.portalPublicAuthBrandTitle {
  color: #fff;
  letter-spacing: -.035em;
  max-width: 10ch;
  margin: 0;
  font-size: clamp(32px, 3.1vw, 42px);
  line-height: 1.03;
}

.portalPublicAuthBrandDescription {
  color: #cbd5e1;
  max-width: 31ch;
  margin: 18px 0 0;
  font-size: 15px;
  line-height: 1.55;
}

.portalPublicAuthAccessPanel {
  background: var(--bg);
  align-content: center;
  min-width: 0;
  padding: 48px 52px 40px;
  display: grid;
}

.portalPublicAuthHeader {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 24px;
  display: grid;
}

.portalPublicAuthHeader .localeSwitcher {
  justify-self: end;
}

.portalPublicAuthSupplement {
  margin-top: 20px;
}

.portalPublicAuthBody {
  margin-top: 26px;
}

.loginTitle {
  letter-spacing: -.025em;
  margin: 0;
  font-size: 30px;
  line-height: 1.08;
}

.loginSubtitle {
  max-width: 36ch;
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.45;
}

.loginRouteHint {
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
}

.loginQuietLink {
  color: var(--focus);
  text-decoration: none;
}

.loginQuietLink:hover, .loginQuietLink:focus-visible {
  text-decoration: underline;
}

.loginHelpRow {
  margin-top: 10px;
  font-size: 14px;
}

.loginUtilityGroup {
  gap: 2px;
  margin-top: 10px;
  font-size: 14px;
  display: grid;
}

.loginUtilityLink, .loginUtilityRoute {
  min-height: 32px;
}

.loginUtilityLink {
  align-items: center;
  width: fit-content;
  padding: 4px 0;
  display: inline-flex;
}

.loginUtilityRoute {
  flex-wrap: wrap;
  align-items: center;
  column-gap: .35ch;
  margin: 0;
  padding: 4px 0;
  display: flex;
}

.loginMessageStack {
  gap: 12px;
  display: grid;
}

.loginHelpRow .loginQuietLink, .loginMessageStack > .loginQuietLink {
  align-items: center;
  width: fit-content;
  min-height: 44px;
  display: inline-flex;
}

.loginSubmitRow {
  margin-top: 14px;
}

.portalPublicAuthLoginForm .loginSubmitRow .btn {
  width: 100%;
}

.loginBuildVersion {
  color: #aab8c7;
  align-self: end;
  font-size: 11px;
  line-height: 1.2;
}

.passwordInputControl {
  gap: 4px;
  display: grid;
}

.passwordInputWrap {
  position: relative;
}

.passwordInputField {
  padding-right: 52px !important;
}

.passwordInputField::-ms-reveal {
  display: none;
}

.passwordInputField::-ms-clear {
  display: none;
}

.passwordToggleBtn {
  border-radius: var(--radius);
  width: 44px;
  height: 44px;
  color: color-mix(in srgb, var(--fg), black 8%);
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.passwordToggleBtn:hover {
  background: color-mix(in srgb, var(--fg), transparent 92%);
}

.passwordToggleBtn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 65%);
  outline: none;
}

.passwordToggleIcon {
  width: 20px;
  height: 20px;
  display: block;
}

.passwordCapsSlot {
  align-items: center;
  min-height: 18px;
  display: flex;
}

.passwordCapsMessage {
  color: var(--muted);
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 13px;
  line-height: 1.25;
  display: inline-flex;
}

.passwordCapsInfoIcon {
  width: 18px;
  height: 18px;
  display: block;
}

.localeSwitcher {
  background: none;
  border: 0;
  border-radius: 0;
  width: fit-content;
  min-width: 0;
  display: inline-flex;
  position: relative;
  overflow: visible;
}

.localeTrigger {
  box-sizing: border-box;
  min-width: 72px;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  white-space: nowrap;
  background: none;
  border: 0;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  display: inline-flex;
}

.localeTrigger .localeCode, .localeMenuItem .localeCode {
  letter-spacing: .01em;
  text-align: left;
  width: 26px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.localeFlag {
  object-fit: cover;
  width: 18px;
  height: 12px;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--stroke), transparent 42%);
  border-radius: 2px;
  flex: none;
  display: block;
}

.localeChevron {
  width: 14px;
  height: 14px;
  color: var(--muted);
  flex: 0 0 14px;
  transition: transform .14s;
}

.localeTrigger:hover {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 2%);
}

.localeTrigger:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.localeSwitcherOpen .localeTrigger {
  color: var(--focus);
  background: color-mix(in srgb, var(--focus), transparent 93%);
}

.localeSwitcherOpen .localeChevron {
  transform: rotate(180deg);
}

.localeMenu {
  background: var(--bg);
  border: 1px solid var(--stroke);
  box-sizing: border-box;
  z-index: 60;
  border-radius: 12px;
  gap: 2px;
  width: max-content;
  min-width: 190px;
  max-width: calc(100vw - 24px);
  padding: 6px;
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  box-shadow: 0 18px 44px #0f172a26;
}

.localeSwitcherOpen {
  z-index: 61;
}

.localeSwitcherOpen .localeMenu {
  display: grid;
}

.localeMenuItem {
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  text-align: left;
  box-sizing: border-box;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  grid-template-columns: 18px 26px minmax(76px, 1fr) 16px;
  align-items: center;
  column-gap: 9px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  display: grid;
}

.localeMenuItem.isCurrent {
  background: color-mix(in srgb, var(--focus), transparent 93%);
}

.localeMenuItem:hover, .localeMenuItem:focus-visible {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
}

.localeMenuItem:focus-visible {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--focus), transparent 58%);
  outline: none;
}

.localeMenuLanguage {
  min-width: 0;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
  overflow: hidden;
}

.localeMenuCheck {
  width: 16px;
  height: 16px;
  color: var(--focus);
  justify-self: end;
}

.portalPublicAuthHeader .localeSwitcher {
  flex: none;
}

.portalBrand {
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 44px;
}

.portalBrand .brandBlock {
  min-width: 0;
  overflow: hidden;
}

.portalBrand .brandTitle {
  color: #111827;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  max-width: 100%;
  font-weight: 800;
  overflow: hidden;
}

.portalTopbarInner {
  width: 100%;
  max-width: none;
  padding-right: max(20px, env(safe-area-inset-right, 0px));
  padding-left: max(20px, env(safe-area-inset-left, 0px));
  grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr);
  align-items: center;
  gap: 12px;
  margin: 0;
  display: grid;
}

#main.content {
  padding-right: max(20px, env(safe-area-inset-right, 0px));
  padding-left: max(20px, env(safe-area-inset-left, 0px));
}

.portalTopbarActions {
  display: contents;
}

.portalNavRow {
  justify-self: center;
  align-items: center;
  display: flex;
}

.portalNavRow .nav {
  grid-template-columns: repeat(3, minmax(0, max-content));
  align-items: end;
  gap: 4px;
  width: auto;
  display: grid;
}

.portalNavRow .nav.navTwo {
  grid-template-columns: repeat(2, minmax(0, max-content));
}

.portalNavRow .nav.navFour {
  grid-template-columns: repeat(4, minmax(0, max-content));
}

.portalNavRow .nav.navFive {
  grid-template-columns: repeat(5, minmax(0, max-content));
}

.portalNavRow .nav.navSix {
  grid-template-columns: repeat(6, minmax(0, max-content));
}

.portalNavRow .nav.navOne {
  grid-template-columns: repeat(1, minmax(0, max-content));
}

.portalNavHomeMobileOnly {
  display: none !important;
}

.portalNavRow .navLink {
  text-align: center;
  white-space: nowrap;
  min-width: 0;
  min-height: 44px;
  color: var(--muted);
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  border-radius: 0;
  justify-content: center;
  align-items: center;
  padding: 7px 12px 5px;
  transition: color .14s, border-color .14s, background-color .14s;
  display: inline-flex;
}

.portalNavLinkInner {
  justify-content: center;
  align-items: center;
  gap: 0;
  min-width: 0;
  display: inline-flex;
  position: relative;
}

.portalNavIconBadge {
  display: none;
  position: relative;
  overflow: visible;
}

.portalNavItemBadge {
  z-index: 1;
  background: var(--danger);
  color: #fff;
  pointer-events: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  box-shadow: 0 0 0 2px #fff;
}

.portalNavItemBadgeDesktop {
  top: -12px;
  right: -13px;
}

.portalNavItemBadgeMobile {
  display: none;
}

.portalNavRow .navLink:hover {
  color: var(--fg);
  background: color-mix(in srgb, var(--bg-2), var(--fg) 2%);
}

.portalNavRow .navLink:focus-visible {
  box-shadow: inset 0 -2px 0 0 color-mix(in srgb, var(--focus), transparent 35%);
  border-bottom-color: color-mix(in srgb, var(--focus), transparent 55%);
  outline: none;
}

.portalNavRow .navLinkActive {
  color: var(--fg);
  border-bottom-color: color-mix(in srgb, var(--focus), transparent 24%);
  background: color-mix(in srgb, var(--focus), white 94%);
}

.portalNavIcon {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  display: none;
}

.portalNavIcon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.portalNavLabel {
  display: block;
}

.portalNavLabelCompact {
  display: none;
}

.portalNavLabelFull {
  display: block;
}

.documentsMain, .documentsDetailMain {
  gap: 12px;
  min-width: 0;
  display: grid;
}

.documentsControlsCard, .documentsListCard, .documentsDetailHero, .documentsPreviewCard, .documentsInfoCard, .documentsTimelineCard {
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  display: grid;
}

.documentsHeaderActions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.documentsHeaderActions.portalHeroActionsMobile {
  width: 100%;
  display: none;
}

.documentsFiltersForm {
  gap: 10px;
  display: grid;
}

.documentsFiltersSearchField {
  width: 100%;
  min-width: 0;
  margin-top: 0;
}

.documentsFiltersMobileControls {
  width: 100%;
  display: none;
}

.documentsFiltersToggleBtn {
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  display: inline-flex;
}

.documentsFiltersBottomRow {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-end;
  gap: 10px;
  width: 100%;
  display: grid;
}

.documentsFiltersBottomFilters {
  grid-template-columns: minmax(210px, 1.25fr) minmax(140px, .7fr) minmax(140px, .7fr) minmax(210px, 1.25fr);
  align-items: end;
  gap: 10px;
  min-width: 0;
  display: grid;
}

.documentsSectionWrap, .documentsClassificationWrap, .documentsFilterFromField, .documentsFilterToField {
  min-width: 0;
  margin-top: 0;
}

.documentsFiltersClearField {
  place-self: end;
  display: flex;
}

.documentsToolbarClearBtn {
  min-width: 96px;
  min-height: 44px;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.documentsComposer {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  gap: 12px;
  padding-top: 12px;
  display: grid;
}

.documentsComposerHint {
  margin: 0;
}

.documentsTitleCluster {
  align-items: center;
  gap: 14px;
  min-width: 0;
  display: inline-flex;
}

.documentsUnreadNotificationBadge {
  background: var(--danger);
  color: #fff;
  min-width: 24px;
  min-height: 24px;
  font-family: var(--font-mono);
  cursor: pointer;
  border: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0 6px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  position: relative;
}

.documentsUnreadNotificationBadge:hover, .documentsUnreadNotificationBadge:focus-visible, .documentsUnreadNotificationBadge.isActive {
  background: color-mix(in srgb, var(--danger), black 8%);
}

.documentsUnreadNotificationBadge:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--danger), white 35%);
  outline-offset: 2px;
}

.documentsUnreadNotificationLabel {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.documentsComposerGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.documentsComposerFieldWide {
  grid-column: 1 / -1;
}

.documentsComposerNote {
  resize: vertical;
  min-height: 108px;
}

.documentsComposerFileMeta {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 40px;
  padding: 0 12px;
  display: inline-flex;
}

.documentsComposerActions {
  justify-content: flex-start;
}

.documentsListRows {
  gap: 8px;
  display: grid;
}

.documentsTableWrap {
  overflow-x: auto;
}

.documentsTable {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.documentsTable thead th {
  text-align: left;
  letter-spacing: .01em;
  color: color-mix(in srgb, var(--fg), black 8%);
  border-bottom: 1px solid var(--stroke);
  white-space: nowrap;
  padding: 12px 10px;
  font-size: 14px;
  font-weight: 700;
}

.documentsTable thead th:last-child {
  text-align: right;
}

.documentsTable tbody td {
  vertical-align: middle;
  border-bottom: 0;
  padding: 12px 10px;
  font-size: 14px;
  line-height: 1.25;
}

.documentsTable tbody tr {
  border-bottom: 1px solid var(--stroke);
}

.documentsTable th:first-child, .documentsTable td:first-child {
  width: 140px;
}

.documentsTable th:nth-child(3), .documentsTable td:nth-child(3) {
  width: 170px;
}

.documentsTable th:nth-child(4), .documentsTable td:nth-child(4) {
  width: 160px;
}

.documentsTable th:nth-child(5), .documentsTable td:nth-child(5) {
  width: 130px;
}

.documentsTableRow {
  transition: background-color .14s;
}

.documentsTableRow:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
}

.documentsTableDate {
  min-width: 0;
  color: var(--muted);
  gap: 4px;
  font-size: 12px;
  line-height: 1.2;
  display: grid;
}

.documentsDocumentCell {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.documentsListTile {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 6%);
  background: #fff;
  border-radius: 8px;
  align-content: center;
  justify-items: center;
  gap: 3px;
  width: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 2px;
  display: grid;
}

.documentsListTile.isPdf {
  border-color: color-mix(in srgb, var(--danger), transparent 65%);
}

.documentsListTile.isImage {
  border-color: color-mix(in srgb, var(--focus), transparent 68%);
}

.documentsListTileIcon {
  width: 30px;
  height: 30px;
  display: block;
}

.documentsListTileKind {
  font-family: var(--font-condensed);
  letter-spacing: 0;
  font-size: 14px;
  line-height: 1;
}

.documentsListTileType {
  font-family: var(--font-mono);
  font-size: 11px;
  line-height: 1;
  display: none;
}

.documentsListContent, .documentsListTitleWrap {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.documentsListTitle {
  text-overflow: ellipsis;
  white-space: nowrap;
  align-items: center;
  font-weight: 650;
  line-height: 1.2;
  display: flex;
  overflow: hidden;
}

.documentsUnreadDot {
  background: var(--focus);
  border-radius: 999px;
  flex: none;
  width: 8px;
  height: 8px;
}

.documentsListTitle > .documentsUnreadDot {
  margin-right: 8px;
}

.documentsListTitle > span:last-child {
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}

.documentsTableRow.isUnread .documentsListTitle, .documentsMobileItem.isUnread .documentsMobilePrimary {
  color: var(--fg);
  font-weight: 800;
}

.documentsListMeta, .documentsListFileMeta, .documentsListTimestamp {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  display: flex;
}

.documentsSourceBadge {
  background: color-mix(in srgb, var(--focus), white 96%);
  color: color-mix(in srgb, var(--focus), black 18%);
  gap: 5px;
}

.documentsSourceBadge svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8px;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
  width: 13px;
  height: 13px;
}

.documentsListStatus {
  white-space: nowrap;
  justify-self: start;
}

.documentsListStatus, .documentsMobileStatusPill {
  gap: 6px;
}

.documentsListStatus.pillStatusDraft, .documentsMobileStatusPill.pillStatusDraft {
  background: color-mix(in srgb, var(--bg-2), var(--bg) 22%);
  color: color-mix(in srgb, var(--fg), white 22%);
}

.documentsListStatus.pillStatusSubmitted, .documentsListStatus.pillStatusPending, .documentsMobileStatusPill.pillStatusSubmitted, .documentsMobileStatusPill.pillStatusPending {
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 18%);
}

.documentsListStatus.pillStatusApproved, .documentsMobileStatusPill.pillStatusApproved {
  background: color-mix(in srgb, var(--ok), white 94%);
  color: color-mix(in srgb, var(--ok), black 14%);
}

.documentsListStatus.pillStatusLocked, .documentsMobileStatusPill.pillStatusLocked {
  background: color-mix(in srgb, var(--bg-2), var(--bg) 10%);
  color: color-mix(in srgb, var(--fg), white 32%);
}

.documentsTableActionsCell {
  text-align: right;
}

.documentsRowOpenBtn {
  text-align: center;
  border-color: color-mix(in srgb, var(--stroke), black 10%);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 74px;
  min-height: 38px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  padding: 0 13px !important;
}

.documentsMobileList {
  display: none;
}

.documentsEmptyState {
  justify-items: start;
  gap: 10px;
  display: grid;
}

.documentsEmptyResetBtn {
  min-height: 40px;
}

.documentsRequiredActionPill {
  border: 1px solid color-mix(in srgb, var(--accent), transparent 58%);
  background: color-mix(in srgb, var(--accent), white 94%);
  border-radius: 999px;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.documentsDetailStack {
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  display: grid;
  position: relative;
}

.documentsDetailHero {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px;
}

.documentsDetailHeroMain {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: grid;
}

.documentsDetailIdentity {
  gap: 7px;
  min-width: 0;
  display: grid;
}

.documentsDetailFileTile {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  background: color-mix(in srgb, var(--bg), white 56%);
  border-radius: 10px;
  place-items: center;
  width: 48px;
  height: 48px;
  display: grid;
}

.documentsDetailFileTile.isPdf {
  border-color: color-mix(in srgb, var(--danger), transparent 70%);
}

.documentsDetailFileTile.isImage {
  border-color: color-mix(in srgb, var(--focus), transparent 72%);
}

.documentsDetailFileIcon {
  width: 40px;
  height: 40px;
  display: block;
}

.documentsDetailHeroTop {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.documentsDetailTitle {
  font-family: var(--font-condensed);
  letter-spacing: 0;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: clamp(22px, 3vw, 28px);
  line-height: 1.08;
}

.documentsDetailMeta {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 7px;
  line-height: 1.35;
  display: flex;
}

.documentsDetailNote {
  max-width: 70ch;
  margin: 0;
}

.documentsDetailHeroActions {
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  max-width: none;
  display: grid;
}

.documentsDetailAction {
  white-space: nowrap;
  gap: 7px;
  min-height: 44px;
  padding-inline: 12px;
}

.documentsDetailActionIcon {
  flex: none;
  place-items: center;
  width: 18px;
  height: 18px;
  display: inline-grid;
}

.documentsDetailActionIcon svg {
  width: 18px;
  height: 18px;
  display: block;
}

.documentsDetailActionText {
  min-width: 0;
}

.documentsDetailGrid {
  grid-template-columns: minmax(0, 1fr) 360px;
  align-items: start;
  gap: 16px;
  min-width: 0;
  max-width: 100%;
  display: grid;
}

.documentsDetailSide {
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  display: grid;
}

@media (min-width: 901px) {
  .documentsDetailSide {
    position: sticky;
    top: 88px;
  }
}

@media (min-width: 901px) and (max-width: 1080px) {
  .documentsFiltersBottomFilters {
    grid-template-columns: minmax(140px, .8fr) minmax(140px, .8fr) minmax(220px, 1.4fr);
  }

  .documentsSectionWrap {
    grid-column: 1 / -1;
  }
}

.documentsCardHeader {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.documentsCardTitle {
  margin: 0;
  font-size: 1rem;
  line-height: 1.2;
}

.documentsBackLink {
  display: none !important;
}

.documentsDesktopDetailHeader {
  display: block;
}

.documentsMobileTopBack {
  display: none;
}

.documentsActionPanel {
  gap: 10px;
  display: grid;
}

.documentsActionPanelCard.isPending .documentsActionPanel {
  gap: 14px;
}

.documentsWithdrawCard {
  gap: 10px;
  display: grid;
}

.documentsWithdrawText {
  margin: 0;
}

.documentsWithdrawReasonField {
  gap: 6px;
  display: grid;
}

.documentsWithdrawReasonField span {
  color: var(--muted);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 800;
}

.documentsWorkflowCard {
  gap: 14px;
  display: grid;
}

.documentsWorkflowHead {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.documentsWorkflowSummary {
  color: color-mix(in srgb, var(--fg), white 24%);
  margin: 0;
  font-size: .9rem;
  line-height: 1.4;
}

.documentsWorkflowSteps {
  gap: 18px;
  padding: 8px 0 4px;
  display: grid;
}

.documentsWorkflowStep {
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  display: grid;
}

.documentsWorkflowStepDot {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  width: 26px;
  height: 26px;
  color: var(--muted);
  background: #fff;
  border-radius: 999px;
  place-items: center;
  margin-top: 1px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  display: inline-grid;
  position: relative;
}

.documentsWorkflowStepDot svg {
  stroke-width: 2.1px;
  width: 14px;
  height: 14px;
}

.documentsWorkflowStepDot[data-marker="check"] svg {
  width: 13px;
  height: 13px;
  transform: translate(-.1px, -.2px);
}

.documentsWorkflowStep:not(:last-child) .documentsWorkflowStepDot:after {
  content: "";
  background-image: linear-gradient(to bottom,
    color-mix(in srgb, var(--stroke), transparent 4%) 45%,
    transparent 0);
  background-size: 1px 7px;
  width: 1px;
  height: 36px;
  position: absolute;
  top: 27px;
  left: 50%;
  transform: translateX(-50%);
}

.documentsWorkflowStep.is-complete .documentsWorkflowStepDot {
  border-color: color-mix(in srgb, var(--ok), transparent 32%);
  background: color-mix(in srgb, var(--ok), white 12%);
  color: #fff;
}

.documentsWorkflowStep.is-current .documentsWorkflowStepDot {
  border-color: color-mix(in srgb, var(--warn), transparent 36%);
  background: color-mix(in srgb, var(--warn), white 91%);
  color: color-mix(in srgb, var(--warn), black 18%);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--warn), transparent 90%);
}

.documentsWorkflowStep.is-muted .documentsWorkflowStepDot {
  border-color: color-mix(in srgb, var(--stroke), transparent 14%);
  background: color-mix(in srgb, var(--bg-2), white 56%);
}

.documentsWorkflowStep strong, .documentsWorkflowStep small {
  min-width: 0;
  display: block;
}

.documentsWorkflowStep strong {
  color: var(--fg);
  font-size: .9rem;
}

.documentsWorkflowStep small {
  color: var(--muted);
  margin-top: 2px;
  font-size: .8rem;
  line-height: 1.35;
}

.documentsWorkflowStepMeta {
  font-weight: 700;
  color: color-mix(in srgb, var(--fg), white 34%) !important;
}

.documentsDangerDetails {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  padding-top: 12px;
}

.documentsDangerDetails summary {
  cursor: pointer;
  min-height: 44px;
  color: var(--fg);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  font-size: .92rem;
  font-weight: 800;
  list-style: none;
  display: flex;
}

.documentsDangerDetails summary::-webkit-details-marker {
  display: none;
}

.documentsDangerDetails summary:after {
  content: "";
  border-right: 2px solid color-mix(in srgb, var(--fg), white 34%);
  border-bottom: 2px solid color-mix(in srgb, var(--fg), white 34%);
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
}

.documentsDangerDetails:not([open]) summary:after {
  transform: rotate(-45deg);
}

.documentsDangerBody {
  gap: 8px;
  padding-top: 10px;
  display: grid;
}

.documentsManageActionTitle {
  color: var(--fg);
  font-size: .9rem;
  line-height: 1.25;
}

.documentsDangerButton {
  border-color: color-mix(in srgb, var(--danger), transparent 34%);
  background: var(--surface);
  width: 100%;
  min-height: 44px;
  color: color-mix(in srgb, var(--danger), black 10%);
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-weight: 800;
  display: inline-flex;
}

.documentsDangerButton svg {
  stroke-width: 1.9px;
  flex: none;
  width: 16px;
  height: 16px;
}

.documentsDangerButton:hover, .documentsDangerButton:focus-visible {
  border-color: color-mix(in srgb, var(--danger), transparent 18%);
  background: color-mix(in srgb, var(--danger), white 95%);
}

.documentsActionPanelHead {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  display: grid;
}

.documentsActionPanelHead.isCompletedHeading {
  grid-template-columns: minmax(0, 1fr);
}

.documentsActionPanelCompletedTitle {
  align-items: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  display: flex;
}

.documentsActionPanelCompletedTitle .documentsActionPanelBadge {
  flex: none;
  margin-top: 0;
}

.documentsActionPanelCompletedTitle > span:first-child {
  min-width: 0;
}

.documentsActionPanelCard.isPending .documentsActionPanelHead {
  align-items: start;
  gap: 14px;
}

.documentsActionPanelBadge {
  border: 1px solid color-mix(in srgb, var(--focus), transparent 54%);
  background: color-mix(in srgb, var(--focus), white 92%);
  width: 22px;
  height: 22px;
  color: color-mix(in srgb, var(--focus), black 16%);
  border-radius: 999px;
  place-items: center;
  margin-top: 1px;
  font-size: 12px;
  font-weight: 800;
  display: inline-grid;
}

.documentsSignatureActionIcon {
  border-color: color-mix(in srgb, var(--focus), transparent 70%);
  background: color-mix(in srgb, var(--focus), white 94%);
  width: 48px;
  height: 48px;
  color: var(--focus);
  border-radius: 14px;
  margin-top: 0;
}

.documentsSignatureActionIconSvg, .documentsCompletionCheckIcon, .documentsSignatureActionArrow {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  display: block;
}

.documentsSignatureActionIconSvg {
  stroke-width: 1.8px;
  width: 29px;
  height: 29px;
}

.documentsCompletionCheckIcon {
  stroke-width: 2.4px;
  width: 13px;
  height: 13px;
}

.documentsSignatureActionArrow {
  stroke-width: 2.1px;
  width: 18px;
  height: 18px;
}

.documentsActionPanelCard.isComplete .documentsActionPanelBadge {
  background: var(--ok);
  color: #fff;
  border-color: #0000;
}

.documentsActionPanelCard.isBlocked .documentsActionPanelBadge {
  border-color: color-mix(in srgb, var(--warn), transparent 54%);
  background: color-mix(in srgb, var(--warn), white 90%);
  color: color-mix(in srgb, var(--warn), black 18%);
}

.documentsActionPanelCard.isCorrection .documentsActionPanelBadge {
  border-color: color-mix(in srgb, var(--danger), transparent 54%);
  background: color-mix(in srgb, var(--danger), white 92%);
  color: var(--danger);
}

.documentsActionPanelText {
  color: color-mix(in srgb, var(--fg), white 32%);
  margin: 3px 0 0;
  font-size: .88rem;
  line-height: 1.32;
}

.documentsActionPanelCard.isPending .documentsActionPanelText {
  margin-top: 8px;
  line-height: 1.42;
}

.documentsActionPanelList {
  color: var(--muted);
  gap: 7px;
  margin: 0;
  padding-left: 18px;
  font-size: .84rem;
  line-height: 1.35;
  display: grid;
}

.documentsSignatureEvidenceDetails {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  gap: 8px;
  padding-top: 12px;
  display: grid;
}

.documentsSignatureEvidenceSummaryHead {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  list-style: none;
  display: flex;
}

.documentsSignatureEvidenceSummaryHead::-webkit-details-marker {
  display: none;
}

.documentsSignatureEvidenceSummaryHead:after {
  content: "";
  border-right: 2px solid color-mix(in srgb, var(--fg), white 34%);
  border-bottom: 2px solid color-mix(in srgb, var(--fg), white 34%);
  width: 8px;
  height: 8px;
  transition: transform .15s;
  transform: rotate(45deg);
}

.documentsSignatureEvidenceDetails:not([open]) .documentsSignatureEvidenceSummaryHead:after {
  transform: rotate(-45deg);
}

.documentsSignatureEvidenceSummaryTitle {
  min-width: 0;
  color: var(--fg);
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.2;
}

.documentsSignatureEvidenceBody {
  gap: 8px;
  display: grid;
}

.documentsSignatureEvidenceGrid {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  margin: 0;
  display: grid;
}

.documentsSignatureEvidenceRow {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  grid-template-columns: minmax(0, 1fr) minmax(112px, max-content);
  align-items: baseline;
  gap: 12px;
  min-width: 0;
  padding: 7px 0;
  display: grid;
}

.documentsSignatureEvidenceGrid dt {
  color: color-mix(in srgb, var(--fg), white 34%);
  font-size: .85rem;
  font-weight: 650;
  line-height: 1.25;
}

.documentsSignatureEvidenceGrid dd {
  min-width: 0;
  color: var(--fg);
  text-align: right;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: .86rem;
  font-weight: 750;
  line-height: 1.25;
}

.documentsSignatureEvidenceFiles {
  gap: 4px;
  padding-top: 8px;
  display: grid;
}

.documentsSignatureEvidenceFile {
  min-height: 44px;
  color: var(--fg);
  background: none;
  border: 0;
  border-radius: 0;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 3px 0;
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.25;
  text-decoration: none;
  display: grid;
}

.documentsSignatureEvidenceFile:hover {
  color: color-mix(in srgb, var(--focus), black 8%);
  text-underline-offset: 3px;
  text-decoration: underline;
}

.documentsSignatureEvidenceFile:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 38%);
  outline-offset: 3px;
  border-radius: 6px;
}

.documentsSignatureEvidenceFileIcon {
  width: 22px;
  height: 22px;
  color: color-mix(in srgb, var(--focus), black 10%);
  place-items: center;
  display: inline-grid;
}

.documentsSignatureEvidenceFileIcon.isPdf {
  color: color-mix(in srgb, var(--danger), black 8%);
}

.documentsSignatureEvidenceFileIcon svg {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7px;
  width: 17px;
  height: 17px;
  display: block;
}

.documentsSignatureEvidenceMissing {
  color: var(--muted);
  margin: 0;
  font-size: .82rem;
  line-height: 1.35;
}

.documentsCompanyCountersignBlock {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  gap: 9px;
  padding-top: 12px;
  display: grid;
}

.documentsCompanyCountersignHead {
  gap: 3px;
  display: grid;
}

.documentsCompanyCountersignHead strong {
  color: var(--fg);
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.2;
}

.documentsCompanyCountersignHead small {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 650;
  line-height: 1.35;
}

.documentsCompanyCountersignGrid {
  border-top: 0;
}

.documentsCompanyCountersignNote {
  margin: 0;
  font-size: .82rem;
  line-height: 1.35;
}

.documentsCorrectionRequestBox {
  gap: 5px;
  margin-left: 31px;
  display: grid;
}

.documentsCorrectionRequestBoxHead {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 6px 10px;
  display: flex;
}

.documentsCorrectionRequestBoxHead strong {
  color: var(--muted);
  letter-spacing: .035em;
  text-transform: uppercase;
  font-size: .7rem;
  font-weight: 750;
  line-height: 1.25;
}

.documentsCorrectionRequestBoxHead span {
  color: var(--danger);
  font-size: .78rem;
  font-weight: 750;
  line-height: 1.25;
}

.documentsCorrectionRequestBox p {
  color: var(--fg);
  overflow-wrap: anywhere;
  margin: 0;
  font-size: .86rem;
  font-weight: 560;
  line-height: 1.38;
}

.documentsCorrectionRequestForm {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  gap: 9px;
  padding-top: 12px;
  display: grid;
}

.documentsCorrectionRequestForm .field {
  gap: 6px;
}

.documentsCorrectionRequestActions {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px 12px;
  display: flex;
}

.documentsCorrectionRequestActions p {
  flex: 180px;
  margin: 0;
  font-size: .8rem;
  line-height: 1.35;
}

.documentsSignatureCeremony {
  gap: 10px;
  display: grid;
}

.documentsSignatureCeremonyIntro {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  gap: 5px;
  padding-bottom: 9px;
  display: grid;
}

.documentsSignatureCeremonyIntro p {
  margin: 0;
  font-size: .86rem;
  line-height: 1.35;
}

.documentsSignatureReview {
  gap: 3px;
  display: grid;
}

.documentsSignatureReview strong {
  min-width: 0;
  color: var(--fg);
  font-size: .95rem;
  line-height: 1.25;
}

.documentsSignatureReview small {
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.documentsSignaturePreview {
  gap: 6px;
  display: grid;
}

.documentsSignaturePreviewBox {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  background: color-mix(in srgb, var(--bg-2), white 64%);
  border-radius: 8px;
  place-items: center;
  min-height: 58px;
  display: grid;
  overflow: hidden;
}

.documentsSignaturePreviewBox img {
  object-fit: contain;
  max-width: min(100%, 300px);
  max-height: 64px;
  display: block;
}

.documentsSignaturePreviewFallback {
  margin: 0;
  font-size: .84rem;
}

.documentsSignaturePasskeyBox {
  border: 1px solid color-mix(in srgb, var(--focus), transparent 58%);
  background: color-mix(in srgb, var(--focus), white 96%);
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  display: flex;
}

.documentsSignaturePasskeyBox div {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.documentsSignaturePasskeyBox strong {
  color: var(--fg);
  font-size: .9rem;
  line-height: 1.25;
}

.documentsSignaturePasskeyBox small {
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.documentsSignaturePasskeyBox.is-checking {
  border-color: color-mix(in srgb, var(--stroke), transparent 12%);
  background: color-mix(in srgb, var(--bg-2), white 60%);
}

.documentsSignaturePasskeyConfirmation, .documentsSignaturePasskeyConfirmation.is-checking {
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  background: none;
  border-radius: 0;
  justify-content: stretch;
  align-items: stretch;
  gap: 10px;
  padding: 10px 0 0;
  display: grid;
}

.documentsSignaturePrimaryAction {
  width: 100%;
  min-height: 48px;
}

.documentsSignaturePasswordField {
  gap: 6px;
}

.documentsSignatureError {
  margin: 0;
}

.documentsSignatureEvidenceNote {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  font-size: .8rem;
  line-height: 1.35;
  display: flex;
}

.documentsSignatureDisclosure {
  min-width: 0;
}

.documentsSignatureDisclosure summary {
  cursor: pointer;
  color: color-mix(in srgb, var(--focus), black 8%);
  font-weight: 800;
  list-style: none;
}

.documentsSignatureDisclosure summary::-webkit-details-marker {
  display: none;
}

.documentsSignatureDisclosureBody {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  background: color-mix(in srgb, var(--bg-2), white 58%);
  border-radius: 8px;
  width: min(100%, 320px);
  margin-top: 8px;
  padding: 9px 10px;
}

.documentsSignatureDisclosureBody ul {
  color: color-mix(in srgb, var(--fg), white 24%);
  gap: 6px;
  margin: 0;
  padding-left: 18px;
  font-size: .8rem;
  line-height: 1.35;
  display: grid;
}

.documentsSignatureCeremonyActions {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.documentsSignatureCeremony .documentsSignaturePasswordFallbackToggle {
  color: color-mix(in srgb, var(--focus), black 8%);
  background: none;
  border-color: #0000;
}

.documentsSignatureCeremony .documentsSignaturePasswordFallbackToggle:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), transparent 94%);
  border-color: #0000;
}

.documentsSignatureCeremony.isMobileSheet {
  gap: 12px;
}

.documentsSignatureCeremony.isMobileSheet .documentsSignatureEvidenceNote {
  gap: 2px;
  display: grid;
}

.documentsSignatureCeremony.isMobileSheet .documentsSignatureDisclosure summary {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 24%);
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 24%);
  align-items: center;
  min-height: 44px;
  display: flex;
}

.documentsSignatureCeremony.isMobileSheet .documentsSignatureDisclosureBody {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 24%);
  background: none;
  border-radius: 0;
  width: 100%;
  margin-top: 0;
}

.documentsActionPanelActions .btn, .documentsSignatureCeremonyActions .btn {
  min-height: 44px;
}

.documentsActionPanelCard.isSigning .documentsActionPanel {
  gap: 0;
}

@media (max-width: 720px) {
  .documentsSignaturePasskeyBox {
    flex-direction: column;
    align-items: stretch;
  }

  .documentsSignatureCeremony {
    gap: 12px;
  }

  .documentsSignatureCeremonyIntro, .documentsSignatureReview {
    display: none;
  }

  .documentsSignaturePreview > .label {
    clip: rect(0 0 0 0);
    white-space: nowrap;
    width: 1px;
    height: 1px;
    position: absolute;
    overflow: hidden;
  }

  .documentsSignaturePreviewBox {
    min-height: 66px;
  }

  .documentsSignatureCeremonyActions {
    grid-template-columns: max-content minmax(0, 1fr);
    display: grid;
  }
}

.documentsActionPanelActions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.documentsActionPanelCard.isPending .documentsActionPanelActions {
  justify-content: flex-start;
  padding-left: 0;
}

.documentsSignatureActionButton {
  width: 100%;
  min-height: 48px;
  box-shadow: 0 12px 22px color-mix(in srgb, var(--focus), transparent 86%);
  justify-content: center;
  align-items: center;
  gap: 10px;
  display: inline-flex;
}

.documentsSignatureActionNote {
  color: color-mix(in srgb, var(--fg), white 36%);
  margin: 0;
  padding-top: 2px;
  font-size: .84rem;
  line-height: 1.38;
}

.documentsInfoGrid {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  gap: 0;
  margin: 0;
  display: grid;
}

.documentsInfoRow {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 18%);
  grid-template-columns: minmax(94px, .58fr) minmax(0, 1fr);
  align-items: baseline;
  gap: 12px;
  padding: 8px 0;
  display: grid;
}

.documentsInfoRow dt {
  color: color-mix(in srgb, var(--fg), white 34%);
  font-size: .79rem;
  font-weight: 750;
  line-height: 1.2;
}

.documentsInfoRow dd {
  min-width: 0;
  color: var(--fg);
  text-align: right;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: .9rem;
  line-height: 1.25;
}

.documentsInfoRowLong {
  align-items: start;
}

.documentsInfoRowLong dd {
  text-align: left;
}

@media (max-width: 520px) {
  .documentsInfoRow {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .documentsInfoRow dd {
    text-align: left;
  }
}

.documentsTimeline {
  --documents-timeline-marker-size: 14px;
  --documents-timeline-marker-center: calc(var(--documents-timeline-marker-size) / 2);
  gap: 0;
  margin: 0;
  padding: 4px 0 0;
  list-style: none;
  display: grid;
}

.documentsTimelineItem {
  gap: 3px;
  min-height: 40px;
  padding: 0 0 15px 30px;
  display: grid;
  position: relative;
}

.documentsTimelineItem:before {
  content: "";
  width: var(--documents-timeline-marker-size);
  height: var(--documents-timeline-marker-size);
  background: var(--focus);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--focus), transparent 62%);
  z-index: 1;
  border: 2px solid #fff;
  border-radius: 999px;
  position: absolute;
  top: 3px;
  left: 0;
}

.documentsTimelineItem:not(:last-child):after {
  content: "";
  top: calc(3px + var(--documents-timeline-marker-center));
  bottom: calc(-1 * (3px + var(--documents-timeline-marker-center)));
  left: var(--documents-timeline-marker-center);
  background: color-mix(in srgb, var(--focus), transparent 74%);
  z-index: 0;
  border-radius: 999px;
  width: 1px;
  position: absolute;
  transform: translateX(-50%);
}

.documentsTimelineItem.isComplete:before {
  background: var(--ok);
  color: #fff;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ok), transparent 48%);
  content: "✓";
  place-items: center;
  font-size: 7px;
  font-weight: 900;
  line-height: 1;
  display: grid;
}

.documentsTimelineAction {
  color: var(--fg);
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.18;
}

.documentsTimelineMeta {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  font-size: .84rem;
  line-height: 1.25;
  display: flex;
}

@media (max-width: 900px) {
  .documentsComposerGrid, .documentsDetailGrid, .documentsDetailHero {
    grid-template-columns: 1fr;
  }

  .documentsComposerFieldWide {
    grid-column: auto;
  }

  .documentsDetailHeroActions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: row;
    justify-content: flex-start;
    width: 100%;
  }

  .documentsDetailAction {
    justify-content: center;
  }

  .documentsDetailActionPrimary {
    grid-column: 1 / -1;
  }

  .documentsHeaderActions.portalHeroActionsMobile {
    display: flex;
  }

  .documentsTableWrap {
    display: none;
  }

  .documentsMobileList {
    gap: 10px;
    display: grid;
  }

  .documentsMobileItem {
    border: 1px solid var(--stroke);
    border-radius: var(--radius);
    min-height: 76px;
    color: inherit;
    background: #fff;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 12px 10px 12px 12px;
    text-decoration: none;
    display: grid;
  }

  .documentsMobileItem:hover, .documentsMobileItem:focus-visible {
    border-color: color-mix(in srgb, var(--focus), transparent 45%);
    box-shadow: inset 3px 0 0 color-mix(in srgb, var(--focus), transparent 24%);
    outline: none;
  }

  .documentsMobileMain {
    gap: 5px;
    min-width: 0;
    display: grid;
  }

  .documentsMobileTitle {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    min-width: 0;
    display: grid;
  }

  .documentsMobileTitle > .documentsUnreadDot {
    margin-top: .36em;
  }

  .documentsMobilePrimary {
    white-space: normal;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-width: 0;
    font-weight: 650;
    line-height: 1.2;
    display: -webkit-box;
    overflow: hidden;
  }

  .documentsMobileSecondary, .documentsMobileSupportRow {
    min-width: 0;
    color: var(--muted);
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    line-height: 1.25;
    display: flex;
  }

  .documentsMobileRight {
    align-items: center;
    gap: 8px;
    min-width: 0;
    display: flex;
  }

  .documentsMobileStatusPill {
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 118px;
    overflow: hidden;
  }

  .documentsTitleCluster {
    justify-content: space-between;
    gap: 10px;
    width: 100%;
  }

  .documentsDetailMain {
    overflow-x: clip;
  }

  .documentsDetailStack {
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }

  .documentsDesktopDetailHeader {
    display: none;
  }

  .documentsMobileTopBack {
    width: fit-content;
    min-width: 44px;
    min-height: 44px;
    color: color-mix(in srgb, var(--fg), white 34%);
    justify-content: flex-start;
    margin: -4px 0 -6px;
    display: inline-flex;
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    order: -1 !important;
    padding: 0 !important;
  }

  .timesheetDayPageHeaderBack.documentsMobileTopBack {
    min-height: 44px;
  }

  .documentsMobileTopBack .timesheetDayPageHeaderBackIcon {
    flex-basis: 14px;
    width: 14px;
    height: 14px;
  }

  .documentsMobileTopBack .timesheetDayPageHeaderBackChevron {
    width: 7px;
    height: 7px;
  }

  .documentsMobileTopBack > span:last-child {
    clip: auto;
    white-space: nowrap;
    width: auto;
    height: auto;
    position: static;
    overflow: visible;
  }

  .documentsDetailHero {
    gap: 16px;
    padding: 16px;
  }

  .documentsDetailMeta {
    gap: 4px 6px;
    font-size: 15px;
    display: flex;
  }

  .documentsDetailHeroActions .documentsDetailAction:not(.documentsDetailActionPrimary):last-child:nth-child(2) {
    grid-column: 1 / -1;
  }

  .documentsFiltersMobileControls {
    display: flex;
  }

  .documentsFiltersToggleBtn {
    width: 100%;
    min-width: 0;
  }

  .documentsFiltersBottomRow {
    display: none;
  }

  .documentsFiltersBottomRow.isOpen {
    grid-template-columns: 1fr;
    gap: 8px;
    display: grid;
  }

  .documentsFiltersBottomFilters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
  }

  .documentsSectionWrap, .documentsClassificationWrap {
    grid-column: 1 / -1;
  }

  .documentsFilterFromField, .documentsFilterToField {
    grid-column: span 1;
  }

  .documentsFilterFromField .input, .documentsFilterToField .input {
    min-width: 0;
  }

  .documentsFiltersClearField {
    order: -1;
    width: 100%;
    margin-left: 0;
  }

  .documentsFiltersClearField .documentsToolbarClearBtn {
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }
}

@media (max-width: 720px) {
  .documentsMain {
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }

  .documentsHeaderActions.portalHeroActionsMobile {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    display: grid;
  }

  .documentsPreviewFallback {
    text-align: left;
    justify-content: flex-start;
    align-items: flex-start;
    min-height: 160px;
  }

  .documentsPreviewFallbackTile {
    min-width: 54px;
    min-height: 54px;
    font-size: 18px;
  }
}

.portalTopbarRight {
  justify-self: end;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.portalTopbarRight form {
  width: 100%;
}

.portalTopbar:has(.notificationBellPanel) {
  z-index: 68;
}

.notificationBell {
  z-index: 62;
  justify-content: center;
  align-items: center;
  display: inline-flex;
  position: relative;
}

.notificationBellButton {
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  color: var(--fg);
  box-shadow: none;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex;
  position: relative;
}

.notificationBellButton:hover {
  background: color-mix(in srgb, var(--bg-2), white 52%);
  border-color: #0000;
}

.notificationBellButton:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 74%);
  outline: none;
}

.notificationBellButton svg {
  width: 20px;
  height: 20px;
}

.notificationBellBadge {
  background: var(--danger);
  color: #fff;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  top: -5px;
  right: -5px;
  box-shadow: 0 0 0 2px #fff;
}

.notificationBellPanel {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  width: min(520px, 100vw - 24px);
  max-height: min(640px, 100dvh - 110px);
  color: var(--fg);
  box-shadow: 0 18px 34px color-mix(in srgb, var(--fg), transparent 88%);
  background: #fff;
  border-radius: 10px;
  grid-template-rows: auto minmax(0, 1fr) auto;
  display: grid;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  overflow: hidden;
  container: portal-notification-popup / inline-size;
}

.notificationBellPanel.notificationBellPanel_empty {
  grid-template-rows: auto auto auto;
  width: min(360px, 100vw - 24px);
}

.notificationBellHeader {
  border-bottom: 1px solid var(--stroke);
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "heading actions";
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  display: grid;
}

.notificationBellHeading {
  overflow-wrap: anywhere;
  min-width: 0;
  font-weight: 800;
}

.notificationBellHeadingBlock {
  grid-area: heading;
  gap: 2px;
  min-width: 0;
  display: grid;
}

.notificationBellTitleRow {
  align-items: center;
  gap: 0;
  min-width: 0;
  display: inline-flex;
}

.notificationBellSubheading {
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.notificationBellHeaderActions {
  grid-area: actions;
  justify-content: flex-end;
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.notificationBellSettings {
  width: 44px;
  min-height: 44px;
  color: var(--focus);
  background: none;
  border: 0;
  border-radius: 8px;
  flex: none;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: inline-flex;
}

.notificationBellSettings:hover {
  color: color-mix(in srgb, var(--focus), var(--fg) 20%);
  background: none;
}

.notificationBellSettings:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 78%);
  outline: none;
}

.notificationBellSettings svg {
  width: 22px;
  height: 22px;
}

.notificationBellMarkAll {
  border: 1px solid color-mix(in srgb, var(--focus), white 62%);
  min-height: 44px;
  color: var(--focus);
  white-space: nowrap;
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  padding: 8px 12px;
  font-size: .875rem;
  font-weight: 700;
  position: relative;
}

.notificationBellMarkAll:after {
  display: none;
}

.notificationBellMarkAll:disabled {
  cursor: default;
  color: var(--muted);
  background: color-mix(in srgb, var(--bg-2), white 20%);
}

.notificationBellError, .notificationBellEmpty {
  color: var(--muted);
  padding: 16px;
  font-size: 13px;
}

.notificationBellEmpty {
  align-items: center;
  min-height: 56px;
  display: flex;
}

.notificationBellError {
  color: var(--danger);
  border-bottom: 1px solid color-mix(in srgb, var(--danger), white 82%);
}

.notificationBellList {
  align-content: start;
  min-height: 0;
  max-height: none;
  display: grid;
  overflow-y: auto;
}

.notificationBellPanel.notificationBellPanel_empty .notificationBellList {
  overflow-y: visible;
}

.notificationBellItem {
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--stroke), white 20%);
  width: 100%;
  min-height: 120px;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 0;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 0;
  padding: 14px;
  display: grid;
}

.notificationBellItem:first-child {
  border-top: 0;
}

.notificationBellItem:not(:disabled):hover {
  background: color-mix(in srgb, var(--accent), white 94%);
}

.notificationBellItem:disabled {
  cursor: default;
  opacity: 1;
}

.notificationBellItem_action {
  border-left: 3px solid color-mix(in srgb, var(--focus), white 18%);
}

.notificationBellItem_warning {
  border-left: 3px solid #d97706;
}

.notificationBellItem_critical {
  border-left: 3px solid var(--danger);
}

.notificationBellItemLinked:not(:disabled):hover .notificationBellItemTitle {
  color: var(--focus);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.notificationBellItemContent {
  align-content: start;
  gap: 7px;
  min-width: 0;
  display: grid;
}

.notificationBellItemMeta {
  color: var(--muted);
  letter-spacing: 0;
  text-transform: uppercase;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  display: grid;
}

.notificationBellItemSeverity, .notificationBellItemFlag, .notificationBellItemAction {
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 24px;
  padding: 4px 7px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
}

.notificationBellItemSeverity {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  background: color-mix(in srgb, var(--bg-2), white 35%);
  color: var(--muted);
}

.notificationBellItemSeverity[data-severity="ACTION"] {
  border-color: color-mix(in srgb, var(--focus), white 58%);
  background: color-mix(in srgb, var(--focus), white 92%);
  color: var(--focus);
}

.notificationBellItemSeverity[data-severity="WARNING"] {
  color: #92400e;
  background: #fbf1e6;
  border-color: #efc696;
}

.notificationBellItemSeverity[data-severity="CRITICAL"] {
  border-color: color-mix(in srgb, var(--danger), white 58%);
  background: color-mix(in srgb, var(--danger), white 90%);
  color: var(--danger);
}

.notificationBellItemCategory {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.notificationBellItemTime {
  white-space: nowrap;
}

.notificationBellItemTitle, .notificationBellItemBody, .notificationBellItemAction, .notificationBellItemFooter, .notificationBellItemFlag {
  overflow-wrap: anywhere;
  min-width: 0;
}

.notificationBellItemTitle {
  font-weight: 800;
}

.notificationBellItemBody {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.notificationBellItemAction {
  border: 1px solid color-mix(in srgb, var(--focus), white 62%);
  color: var(--focus);
  background: #fff;
  margin-left: auto;
}

.notificationBellItemFooter {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 6px 8px;
  padding-top: 2px;
  display: flex;
}

.notificationBellItemFlag {
  border: 1px solid color-mix(in srgb, var(--accent), white 58%);
  background: color-mix(in srgb, var(--accent), white 90%);
  color: color-mix(in srgb, var(--accent), #111 28%);
}

.notificationBellItemFlag, .notificationBellItemAction {
  white-space: nowrap;
}

.notificationBellViewAll {
  border-top: 1px solid var(--stroke);
  min-height: 52px;
  color: var(--focus);
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  display: flex;
}

.notificationBellViewAll:hover {
  background: color-mix(in srgb, var(--focus), white 94%);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.notificationBellViewAll:focus-visible {
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.notificationCenterPage, .notificationSettingsPage {
  gap: 16px;
  display: grid;
}

.notificationSettingsPage .notificationPreferencesWindowField input, .notificationSettingsPage .notificationPreferencesWindowField select {
  min-height: 44px;
}

.portalNotificationHeaderCopy {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.notificationPageTitleRow {
  align-items: center;
  gap: 0;
  min-width: 0;
  display: inline-flex;
}

.notificationPageTitleRow h1 {
  min-width: 0;
}

.notificationSettingsIntro {
  max-width: 58ch;
  margin: 0;
}

.notificationPageSettingsLink {
  width: 44px;
  min-height: 44px;
  color: var(--focus);
  background: none;
  border: 0;
  border-radius: 8px;
  flex: none;
  justify-content: center;
  align-items: center;
  padding: 0;
  text-decoration: none;
  display: inline-flex;
}

.notificationPageSettingsLink:hover {
  color: color-mix(in srgb, var(--focus), var(--fg) 20%);
  background: none;
}

.notificationPageSettingsLink:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 78%);
  outline: none;
}

.notificationPageSettingsLink svg {
  width: 22px;
  height: 22px;
}

.notificationCenterCardBody, .notificationCenter {
  gap: 14px;
  display: grid;
}

.notificationCenterStatusText {
  min-width: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.notificationCenterMarkAll {
  min-height: 44px;
}

.notificationCenterFilters {
  border: 1px solid var(--stroke);
  background: color-mix(in srgb, var(--bg-2), white 28%);
  border-radius: 10px;
  grid-template-columns: auto minmax(150px, 1fr) minmax(140px, .85fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  display: grid;
}

.notificationCenterReadTabs {
  border: 1px solid var(--stroke);
  background: #fff;
  border-radius: 10px;
  grid-template-columns: repeat(3, minmax(0, auto));
  gap: 4px;
  padding: 3px;
  display: inline-grid;
}

.notificationCenterReadTab {
  min-height: 38px;
  color: var(--muted);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  padding: 7px 10px;
  font-weight: 800;
}

.notificationCenterReadTab.isActive {
  background: color-mix(in srgb, var(--focus), white 90%);
  color: var(--focus);
}

.notificationCenterReadTab:focus-visible, .notificationCenterFilterField select:focus-visible, .notificationCenterActionToggle:focus-within, .notificationCenterItem:focus-visible, .notificationCenterLoadMore:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.notificationCenterFilterField {
  min-width: 0;
  color: var(--muted);
  text-transform: uppercase;
  gap: 5px;
  font-size: 11px;
  font-weight: 850;
  display: grid;
}

.notificationCenterFilterField select {
  border: 1px solid var(--stroke);
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  font-family: var(--font-sans);
  text-transform: none;
  background: #fff;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.notificationCenterActionToggle {
  border: 1px solid var(--stroke);
  min-height: 44px;
  color: var(--fg);
  background: #fff;
  border-radius: 10px;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 800;
  display: inline-flex;
}

.notificationCenterActionToggle input {
  width: 18px;
  height: 18px;
  accent-color: var(--focus);
}

.notificationCenterError, .notificationCenterEmpty {
  border: 1px solid var(--stroke);
  color: var(--muted);
  border-radius: 10px;
  padding: 14px;
}

.notificationCenterError {
  border-color: color-mix(in srgb, var(--danger), white 62%);
  color: var(--danger);
}

.notificationCenterList {
  border: 1px solid var(--stroke);
  background: #fff;
  border-radius: 10px;
  display: grid;
  overflow: hidden;
}

.notificationCenterItem {
  border: 0;
  border-top: 1px solid var(--stroke);
  width: 100%;
  min-height: 112px;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  background: #fff;
  grid-template-columns: minmax(0, 1fr);
  padding: 14px;
  display: grid;
}

.notificationCenterItem:first-child {
  border-top: 0;
}

.notificationCenterItem:not(:disabled):hover {
  background: color-mix(in srgb, var(--accent), white 95%);
}

.notificationCenterItem_action {
  border-left: 4px solid color-mix(in srgb, var(--focus), white 18%);
}

.notificationCenterItem_warning {
  border-left: 4px solid #d97706;
}

.notificationCenterItem_critical {
  border-left: 4px solid var(--danger);
}

.notificationCenterItemLinked:not(:disabled):hover .notificationCenterItemTitle {
  color: var(--focus);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.notificationCenterItemContent {
  gap: 7px;
  min-width: 0;
  display: grid;
}

.notificationCenterItemMeta {
  min-width: 0;
  color: var(--muted);
  letter-spacing: 0;
  text-transform: uppercase;
  grid-template-columns: auto auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 850;
  display: grid;
}

.notificationCenterItemSeverity, .notificationCenterItemFlag, .notificationCenterItemAction {
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 26px;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  display: inline-flex;
}

.notificationCenterItemSeverity {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  background: color-mix(in srgb, var(--bg-2), white 35%);
  color: var(--muted);
}

.notificationCenterItemSeverity[data-severity="ACTION"] {
  border-color: color-mix(in srgb, var(--focus), white 58%);
  background: color-mix(in srgb, var(--focus), white 92%);
  color: var(--focus);
}

.notificationCenterItemSeverity[data-severity="WARNING"] {
  color: #92400e;
  background: #fbf1e6;
  border-color: #efc696;
}

.notificationCenterItemSeverity[data-severity="CRITICAL"] {
  border-color: color-mix(in srgb, var(--danger), white 58%);
  background: color-mix(in srgb, var(--danger), white 90%);
  color: var(--danger);
}

.notificationCenterItemCategory, .notificationCenterItemTitle, .notificationCenterItemBody, .notificationCenterItemFooter, .notificationCenterItemFlag, .notificationCenterItemAction {
  overflow-wrap: anywhere;
  min-width: 0;
}

.notificationCenterItemCategory {
  color: var(--muted);
}

.notificationCenterItemTime {
  white-space: nowrap;
  justify-self: end;
}

.notificationCenterItemTitle {
  font-weight: 850;
}

.notificationCenterItemBody {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}

.notificationCenterItemFooter {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.notificationCenterItemFlag {
  border: 1px solid color-mix(in srgb, var(--accent), white 58%);
  background: color-mix(in srgb, var(--accent), white 90%);
  color: color-mix(in srgb, var(--accent), #111 28%);
}

.notificationCenterItemAction {
  border: 1px solid color-mix(in srgb, var(--focus), white 62%);
  color: var(--focus);
  background: #fff;
  margin-left: auto;
}

.notificationCenterLoadMoreRow {
  justify-content: center;
  display: flex;
}

.notificationCenterLoadMore {
  min-width: 160px;
  min-height: 44px;
}

@media (max-width: 720px) {
  .notificationCenterFilterField select {
    font-size: 16px;
  }

  .notificationCenterFilters {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  .notificationCenterMarkAll, .notificationCenterLoadMore {
    width: 100%;
  }

  .notificationCenterReadTabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .notificationCenterReadTab {
    padding: 7px 6px;
  }

  .notificationCenterItem {
    min-height: 104px;
    padding: 12px;
  }

  .notificationCenterItemMeta {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .notificationCenterItemTime {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

.portalTopbarRight form .btn {
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  display: inline-flex;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.portalTopbarSignOutBtn {
  gap: 8px;
}

.portalTopbarSignOutIcon {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  display: none;
}

.portalTopbarSignOutIcon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.portalTopbarSignOutLabel {
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.portalAccountMenu {
  z-index: 64;
  margin-left: 2px;
  position: relative;
}

.portalAccountSummary {
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  box-shadow: none;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 10px;
  grid-template-columns: 40px max-content 16px;
  align-items: center;
  gap: 10px;
  padding: 2px 8px 2px 2px;
  list-style: none;
  display: inline-grid;
}

.portalAccountSummary:hover {
  background: color-mix(in srgb, var(--bg-2), white 52%);
}

.portalAccountSummary:focus:not(:focus-visible) {
  box-shadow: none;
  outline: none;
}

.portalAccountSummary:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.portalAccountSummary::-webkit-details-marker {
  display: none;
}

.portalAccountAvatar {
  flex: none;
}

.portalAccountText {
  gap: 1px;
  min-width: 0;
  max-width: 150px;
  display: grid;
}

.portalAccountText strong {
  min-width: 0;
  color: var(--fg);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  overflow: hidden;
}

.portalAccountText span {
  min-width: 0;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  line-height: 1.2;
  overflow: hidden;
}

.portalAccountChevron {
  width: 16px;
  height: 16px;
  color: var(--fg);
  justify-content: center;
  align-items: center;
  transition: transform .14s;
  display: inline-flex;
}

.portalAccountChevron svg {
  width: 16px;
  height: 16px;
  display: block;
}

.portalAccountMenu[open] .portalAccountChevron {
  transform: rotate(180deg);
}

.portalAccountMenuPanel {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 4%);
  width: 260px;
  min-width: 0;
  box-shadow: 0 16px 36px color-mix(in srgb, var(--fg), transparent 88%);
  background: #fff;
  border-radius: 12px;
  padding: 6px;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
}

.portalAccountMenuPanel form {
  margin: 0;
}

.portalAccountMenuItem, .portalAccountMenuButton {
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 9px;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
}

.portalAccountMenuItem:hover, .portalAccountMenuItem:focus-visible, .portalAccountMenuButton:hover, .portalAccountMenuButton:focus-visible {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  outline: none;
}

.portalAccountMenuIcon {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.portalAccountMenuSeparator {
  background: color-mix(in srgb, var(--stroke), transparent 12%);
  height: 1px;
  margin: 8px 4px;
}

.portalAccountMenuSectionLabel {
  color: var(--muted);
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 4px 10px 6px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.portalAccountLanguageList {
  gap: 2px;
  display: grid;
}

.portalAccountLanguageItem {
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 9px;
  grid-template-columns: 18px 34px minmax(0, 1fr) 18px;
  align-items: center;
  column-gap: 10px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  display: grid;
}

.portalAccountLanguageItem:hover, .portalAccountLanguageItem:focus-visible {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  outline: none;
}

.portalAccountLanguageItem.isCurrent {
  background: color-mix(in srgb, var(--focus), transparent 93%);
}

.portalAccountLanguageFlag {
  object-fit: cover;
  width: 18px;
  height: 12px;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--stroke), transparent 40%);
  border-radius: 2px;
  display: block;
}

.portalAccountLanguageCode {
  color: var(--fg);
  font-size: inherit;
  font-weight: 700;
  line-height: inherit;
}

.portalAccountLanguageName {
  min-width: 0;
  color: var(--muted);
  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.portalAccountLanguageCheck {
  width: 16px;
  height: 16px;
  color: var(--focus);
  justify-self: end;
}

.supportReadOnlyBannerCard {
  border-color: color-mix(in srgb, var(--focus), transparent 35%);
  background: color-mix(in srgb, var(--focus), white 94%);
  margin-bottom: 12px;
}

.supportReadOnlyBannerBody {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  display: flex;
}

.supportReadOnlyBannerTitle {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}

.supportReadOnlyBannerText {
  margin: 4px 0 0;
}

.supportStartForm {
  gap: 12px;
  display: grid;
}

.supportStartField {
  gap: 6px;
  display: grid;
}

.supportStartActions {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
}

.reportEditorMetaBar {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 42px;
}

.portalBackBar {
  background: var(--bg-2);
  border: 1px solid var(--stroke);
  min-height: 54px;
  padding: 10px 14px;
}

.reportEditorBackLink {
  min-height: 0;
  font-size: 14px;
}

.portalBackLink {
  min-height: 36px;
  color: var(--fg);
  align-items: center;
  gap: 8px;
  line-height: 1.1;
  display: inline-flex;
  border: 0 !important;
  padding: 0 !important;
}

.portalBackLink:hover, .portalBackLink:focus-visible {
  background: none !important;
  border-color: #0000 !important;
}

.portalBackIcon {
  width: 30px;
  height: 30px;
  color: color-mix(in srgb, var(--fg), black 8%);
  border-radius: 999px;
  flex: 0 0 30px;
  justify-content: center;
  align-items: center;
  transition: background-color .15s, color .15s;
  display: inline-flex;
}

.portalBackChevron {
  border-bottom: 2px solid;
  border-left: 2px solid;
  width: 10px;
  height: 10px;
  transform: translateX(1px)rotate(45deg);
}

.portalBackText {
  align-items: center;
  line-height: 1;
  display: inline-flex;
}

.portalBackLink:hover .portalBackIcon, .portalBackLink:focus-visible .portalBackIcon {
  background: color-mix(in srgb, var(--fg), transparent 91%);
}

.portalBackLink:active .portalBackIcon {
  background: color-mix(in srgb, var(--fg), transparent 86%);
}

.reportEditorMetaPill {
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.reportEditorMetaDate {
  color: var(--accent);
}

.reportEditorTitleBlock {
  gap: 6px;
  display: grid;
}

.dayEditorTopRow {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  display: grid;
}

.dayEditorTopLead {
  min-width: 0;
}

.dayEditorSideControls {
  grid-area: 1 / 2;
}

.dayEditorMainColumn {
  min-width: 0;
}

.dayEditorCardBody {
  gap: 12px;
  display: grid;
}

.dayEditorTopToast {
  top: calc(env(safe-area-inset-top) + 88px);
  z-index: 85;
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 14%);
  background: var(--bg);
  width: min(560px, 100vw - 24px);
  min-height: 40px;
  box-shadow: var(--shadow);
  border-radius: var(--radius);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  display: flex;
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
}

.dayEditorTopToast--success {
  border-color: color-mix(in srgb, var(--ok), transparent 45%);
  background: color-mix(in srgb, var(--ok), white 92%);
  color: color-mix(in srgb, var(--ok), black 22%);
}

.dayEditorTopToast--error {
  border-color: color-mix(in srgb, var(--danger), transparent 45%);
  background: color-mix(in srgb, var(--danger), white 93%);
  color: color-mix(in srgb, var(--danger), black 18%);
}

.dayEditorTopToastMessage {
  min-width: 0;
  font-size: 13px;
  line-height: 1.25;
}

.dayEditorTopToastActions {
  align-items: center;
  gap: 6px;
  margin-left: auto;
  display: inline-flex;
}

.dayEditorTopToastAction {
  white-space: nowrap;
  min-width: 0;
  min-height: 44px;
  font-size: 12px;
  padding: 4px 9px !important;
}

.dayEditorTopToastClose {
  border-radius: 999px;
  flex: none;
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  font-size: 18px;
  line-height: 1;
  padding: 0 !important;
}

.dayEditorControlStack, .dayEditorDayTypeField {
  gap: 8px;
  display: grid;
}

.dayEditorModeSwitch {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  max-width: 360px;
  display: grid;
}

.dayEditorModeSwitch.timesheetBulkModeSwitch {
  grid-template-columns: repeat(3, minmax(160px, max-content));
  justify-content: start;
  max-width: none;
}

.dayEditorModeBtn {
  min-width: 0;
  min-height: 44px;
}

.dayEditorModeBtn.isActive {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 12%);
}

.dayEditorMainColumnAbsence .dayEditorModeBtn.isActive {
  border-color: color-mix(in srgb, var(--calendar-absence-border), transparent 38%);
  background: color-mix(in srgb, var(--calendar-absence-fill), white 22%);
  color: var(--calendar-absence-text);
}

.dayEditorAbsenceField {
  border: 0;
  gap: 8px;
  min-width: 0;
  max-width: 720px;
  margin: 0;
  padding: 0;
  display: grid;
}

.dayEditorAbsenceField legend {
  padding: 0;
}

.dayEditorAbsenceOptionGrid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 8px;
  display: grid;
}

.dayEditorAbsenceOption {
  --day-editor-family-fill: var(--calendar-absence-fill);
  --day-editor-family-border: var(--calendar-absence-border);
  --day-editor-family-text: var(--calendar-absence-text);
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  background: var(--bg);
  min-height: 48px;
  color: var(--fg);
  cursor: pointer;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  transition: background-color .15s, border-color .15s, box-shadow .15s;
  display: flex;
  position: relative;
}

.dayEditorAbsenceOption:hover {
  border-color: color-mix(in srgb, var(--day-editor-family-border), transparent 52%);
  background: color-mix(in srgb, var(--day-editor-family-fill), white 55%);
}

.dayEditorAbsenceOption--dayOff {
  --day-editor-family-fill: var(--calendar-day-off-fill);
  --day-editor-family-border: var(--calendar-day-off-border);
  --day-editor-family-text: var(--calendar-day-off-text);
}

.dayEditorAbsenceOption--holiday {
  --day-editor-family-fill: var(--calendar-holiday-fill);
  --day-editor-family-border: var(--calendar-holiday-border);
  --day-editor-family-text: var(--calendar-holiday-text);
}

.dayEditorAbsenceOption.isSelected {
  border-color: color-mix(in srgb, var(--day-editor-family-border), transparent 22%);
  background: var(--day-editor-family-fill);
  color: var(--day-editor-family-text);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--day-editor-family-border), transparent 78%);
}

.dayEditorAbsenceOptionInput {
  opacity: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  margin: 0;
  position: absolute;
  inset: 0;
}

.dayEditorAbsenceOption:focus-within {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 35%);
  outline-offset: 2px;
}

.dayEditorAbsenceOptionLabel {
  min-width: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
}

.dayEditorAbsenceOptionCheck {
  color: currentColor;
  opacity: 0;
  flex: none;
  font-size: 14px;
  font-weight: 900;
}

.dayEditorAbsenceOption.isSelected .dayEditorAbsenceOptionCheck {
  opacity: 1;
}

.dayEditorAbsenceNotesField {
  max-width: 720px;
}

.dayEditorAbsenceNotes {
  resize: vertical;
  min-height: 92px;
}

.dayEditorHintText, .dayEditorRowError {
  font-size: 12px;
}

.dayEditorAbsenceHint {
  margin-top: 0;
}

.dayEditorRowError {
  grid-column: 1 / -1;
}

.dayEditorSideControlsFixed {
  justify-items: stretch;
  gap: 8px;
  display: grid;
}

.dayEditorSideControlsNarrow {
  width: 176px;
}

.dayEditorTotalPill {
  justify-content: space-between;
  width: 100%;
  min-height: 44px;
}

.dayEditorFullWidthBtn {
  width: 100%;
}

.dayEditorTotalInfoRow {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  background: color-mix(in srgb, var(--bg-2), white 54%);
  border-radius: var(--radius);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  padding: 7px 10px;
  display: flex;
}

.dayEditorTotalInfoLabel {
  font-size: 13px;
}

.dayEditorTotalInfoValue {
  color: color-mix(in srgb, var(--muted), var(--fg) 12%);
}

.dayEditorSecondaryActionRow {
  gap: 8px;
  display: grid;
}

.dayEditorSecondaryActionBtn {
  color: #2156c8;
  background: #e5ecfd;
  border-color: #4c7fef;
  width: 100%;
  min-height: 44px;
  font-weight: 800;
}

.dayEditorSecondaryActionBtn:hover {
  background: #d8e3fb;
  border-color: #2563eb;
}

.dayEditorMainColumnStack, .dayEditorTopSection {
  gap: 10px;
  display: grid;
}

.dayEditorTopMain {
  gap: 8px;
  min-width: 0;
  display: grid;
}

.dayEditorTemplateHint {
  margin-top: 0;
  font-size: 12px;
}

.dayEditorSectionTitle {
  color: var(--fg);
  font-weight: 800;
}

.dayEditorSectionTitleRow {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.dayEditorWorkEntryHeader {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  display: grid;
}

.dayEditorWorkEntryControls {
  gap: 8px;
  display: grid;
}

.dayEditorWorkEntryLead {
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.4;
}

.dayEditorEmptyIntervals {
  border: 1px dashed color-mix(in srgb, var(--stroke), transparent 10%);
  background: color-mix(in srgb, var(--bg-2), white 62%);
  border-radius: 8px;
  gap: 4px;
  padding: 12px;
  display: grid;
}

.dayEditorEmptyIntervals p, .dayEditorEmptyIntervals span {
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
}

.dayEditorEmptyIntervals p {
  color: var(--fg);
  font-weight: 700;
}

.dayEditorReplacementNotice {
  border: 1px solid color-mix(in srgb, var(--warn), white 28%);
  background: color-mix(in srgb, var(--warn), white 88%);
  border-radius: 8px;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  display: grid;
}

.dayEditorReplacementNoticeIcon {
  border: 1px solid color-mix(in srgb, var(--warn), var(--fg) 8%);
  background: color-mix(in srgb, var(--warn), white 78%);
  width: 22px;
  height: 22px;
  color: color-mix(in srgb, var(--warn), var(--fg) 58%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
}

.dayEditorReplacementNotice p {
  color: color-mix(in srgb, var(--warn), var(--fg) 58%);
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}

.dayEditorReplacementNoticeTitle {
  font-weight: 800;
  color: var(--fg) !important;
}

.dayEditorReplacementNoticeTitle + p {
  margin-top: 2px;
}

.dayEditorTimeclockReviewSection {
  gap: 10px;
  display: grid;
}

.dayEditorWorkHoursSection {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 16%);
  margin-top: 4px;
  padding-top: 16px;
}

.dayEditorTimeclockReviewHeader {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.dayEditorTimeclockReviewTitle {
  margin: 0;
}

.dayEditorTimeclockReviewMeta {
  font-size: 13px;
}

.dayEditorTimeclockReviewHint {
  font-size: 13px;
  line-height: 1.45;
}

.dayEditorTimeclockReviewList {
  gap: 8px;
  display: grid;
}

.dayEditorTimeclockReviewRow {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 16%);
  background: color-mix(in srgb, var(--bg-2), white 58%);
  border-radius: 10px;
  gap: 6px;
  padding: 10px 12px;
  display: grid;
}

.dayEditorTimeclockReviewRowPrimary {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.dayEditorTimeclockReviewRowSecondary {
  font-size: 13px;
}

.dayEditorTimeclockReviewRowValue {
  white-space: nowrap;
}

.dayEditorIntervalRow {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  display: grid;
}

.dayEditorIntervalLabels {
  color: var(--muted);
  letter-spacing: .04em;
  text-transform: uppercase;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
  gap: 10px;
  margin-bottom: -4px;
  font-size: 11px;
  font-weight: 700;
  display: grid;
}

.dayEditorIntervalRow > .timesheetRelative {
  min-width: 0;
}

.dayEditorIntervalRemove {
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dayEditorTemplateField {
  margin-top: 8px;
}

.dayEditorTemplateField .labelRow {
  margin-bottom: 4px;
}

.dayEditorTemplateField .label {
  color: var(--muted);
  letter-spacing: .04em;
  font-size: 12px;
  font-weight: 700;
}

.dayEditorAddInterval {
  width: 100%;
  min-height: 44px;
}

.dayEditorFooter {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.dayEditorFooterActions {
  align-items: center;
  gap: 10px;
  display: inline-flex;
}

.dayEditorFooterActionBtn {
  min-width: 116px;
}

.dayEditorStatusText {
  font-size: 13px;
}

.dayEditorSavedPill {
  border-color: color-mix(in srgb, var(--ok), transparent 40%);
  background: color-mix(in srgb, var(--ok), white 92%);
  align-items: center;
  gap: 8px;
  width: fit-content;
  display: inline-flex;
}

.dayEditorSavedIcon {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 25%);
  background: color-mix(in srgb, var(--ok), white 82%);
  width: 16px;
  height: 16px;
  color: color-mix(in srgb, var(--ok), black 20%);
  border-radius: 999px;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: grid;
}

@media (min-width: 761px) {
  .dayEditorMainColumnAbsence {
    align-items: start;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    display: grid;
  }

  .dayEditorMainColumnAbsence .dayEditorTopMain {
    gap: 10px;
  }

  .dayEditorMainColumnAbsence .dayEditorTopSection.dayEditorTopSectionAbsence, .dayEditorMainColumnAbsence.dayEditorMainColumnReplacing .dayEditorReplacementNotice {
    width: 100%;
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceField {
    max-width: 860px;
  }

  .dayEditorMainColumnAbsence .dayEditorFooterAbsence {
    justify-content: flex-end;
    max-width: 860px;
    margin-top: 0;
  }

  .dayEditorMainColumnAbsence .dayEditorFooterStatus {
    display: none;
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceNotesRow {
    max-width: 860px;
  }

  .dayEditorTopSection {
    grid-template-columns: minmax(0, 1fr) minmax(228px, 280px);
    align-items: start;
    gap: 10px 16px;
  }

  .dayEditorTopSection.dayEditorTopSectionAbsence {
    grid-template-columns: minmax(0, 1fr);
  }

  .dayEditorTopMain .dayEditorModeSwitch {
    max-width: 372px;
  }

  .dayEditorTopMain .dayEditorModeSwitch.timesheetBulkModeSwitch {
    max-width: none;
  }

  .dayEditorWorkEntryHeader {
    grid-template-columns: minmax(0, 1fr) minmax(228px, 280px);
    column-gap: 16px;
  }

  .dayEditorWorkEntryControls {
    justify-self: end;
    width: min(100%, 280px);
  }
}

@media (min-width: 960px) {
  .dayEditorMainColumnAbsence {
    grid-template-columns: minmax(320px, 420px) minmax(0, 1fr);
    gap: 14px 20px;
  }

  .dayEditorMainColumnAbsence.dayEditorMainColumnReplacing .dayEditorReplacementNotice {
    grid-column: 1 / -1;
  }

  .dayEditorMainColumnAbsence .dayEditorTopSection.dayEditorTopSectionAbsence {
    grid-column: 1;
    align-self: start;
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceField {
    max-width: none;
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceOptionGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceNotesRow {
    grid-column: 2;
    align-self: stretch;
    max-width: none;
  }

  .dayEditorMainColumnAbsence .dayEditorAbsenceNotes {
    min-height: 184px;
  }

  .dayEditorMainColumnAbsence .dayEditorFooterAbsence {
    grid-column: 2;
    justify-content: flex-end;
    max-width: none;
  }
}

.timesheetSubmitCardBody {
  gap: 10px;
  display: grid;
}

.timesheetSubmitSingleCardBody {
  gap: 12px;
  display: grid;
}

.timesheetSubmitMonthHeading {
  font-family: var(--font-condensed);
  letter-spacing: .01em;
  color: color-mix(in srgb, var(--fg), black 10%);
  margin: 0;
  font-size: clamp(20px, 1.8vw, 24px);
  font-weight: 700;
  line-height: 1.15;
}

.timesheetSubmitSimpleSummary {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 24px;
  display: flex;
}

.timesheetSubmitSimpleMetric {
  align-items: baseline;
  gap: 6px;
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
  display: inline-flex;
}

.timesheetSubmitSimpleMetric .timesheetMonoText {
  color: color-mix(in srgb, var(--muted), var(--fg) 14%);
  font-size: 16px;
  font-weight: 600;
}

.timesheetSubmitTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: 30px;
}

.timesheetSubmitMonthPill {
  width: fit-content;
}

.timesheetSubmitSummaryGrid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.timesheetSubmitSummaryGridCompact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.timesheetSubmitSummaryPill {
  justify-content: space-between;
}

.timesheetSubmitMetricPill {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  display: flex;
  border-color: color-mix(in srgb, var(--stroke), transparent 6%) !important;
}

.timesheetSubmitMetricLabel {
  color: color-mix(in srgb, var(--muted), var(--fg) 16%);
  font-size: 13px;
  line-height: 1.2;
}

.timesheetSubmitMetricValue {
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
  color: color-mix(in srgb, var(--muted), var(--fg) 8%);
  font-size: 38px;
  line-height: 1;
}

.timesheetSubmitConfirmBody {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  gap: 10px;
  padding-top: 10px;
  display: grid;
}

.timesheetSubmitConfirmPill {
  align-items: center;
}

.timesheetSubmitConfirmIcon {
  color: var(--accent);
}

.timesheetSubmitConfirmText {
  margin: 0;
}

.timesheetSubmitConfirmCheck {
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.timesheetSubmitConfirmInlineCheck {
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
  align-items: flex-start;
  gap: 10px;
  font-size: 16px;
  line-height: 1.35;
  display: flex;
}

.timesheetSubmitConfirmCheck input[type="checkbox"], .timesheetSubmitConfirmInlineCheck input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--focus);
  flex: 0 0 18px;
  margin-top: 2px;
}

.reportCreateDialogOption input[type="checkbox"], .reportSubmitConfirm input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--focus);
  flex: 0 0 18px;
  margin: 0;
}

.reportListMain, .reportCreateMain {
  gap: 12px;
  display: grid;
}

.reportCreateHero, .reportCreateBody, .reportFiltersCard, .reportListItemsBody {
  display: grid;
}

.reportCreateHero {
  gap: 6px;
}

.reportCreateHeroWithBack {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.reportCreateBody, .reportFiltersCard, .reportListItemsBody {
  gap: 10px;
}

.reportCreateTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: 30px;
}

.reportCreateHint, .portalListEmptyText {
  margin: 0;
}

.reportCreateField {
  margin-top: 0;
}

.reportListItemsPill, .reportListNewBtn {
  box-sizing: border-box;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 164px;
  height: 44px;
  min-height: 44px;
  display: inline-flex;
}

.reportListItemsPill {
  padding-top: 0;
  padding-bottom: 0;
}

.reportListNewBtn {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.reportListRows {
  gap: 8px;
  display: grid;
}

.reportListPager {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 4px 0;
  display: flex;
}

.reportListPagerText {
  min-width: 0;
  color: var(--muted);
  align-items: baseline;
  gap: 10px;
  font-size: 12px;
  line-height: 1.25;
  display: flex;
}

.reportListPagerText span:first-child {
  color: color-mix(in srgb, var(--fg), white 22%);
  font-weight: 600;
}

.reportListPagerActions {
  flex: none;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: inline-flex;
}

.reportListPagerNumbers {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.reportListPagerBtn {
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--stroke), var(--bg) 8%);
  min-width: 36px;
  height: 36px;
  color: color-mix(in srgb, var(--fg), black 6%);
  font-family: var(--font-sans);
  cursor: pointer;
  background: #fff;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  transition: background-color .14s, border-color .14s, color .14s, box-shadow .14s;
  display: inline-flex;
}

.reportListPagerBtn:hover:not(.isDisabled):not(:disabled) {
  background: color-mix(in srgb, var(--focus), white 96%);
  border-color: color-mix(in srgb, var(--focus), transparent 68%);
}

.reportListPagerBtn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), white 72%);
  outline: none;
}

.reportListPagerBtn:disabled, .reportListPagerBtn.isDisabled {
  cursor: not-allowed;
  color: color-mix(in srgb, var(--muted), black 8%);
  border-color: color-mix(in srgb, var(--stroke), transparent 18%);
  background: color-mix(in srgb, #fff, var(--bg) 12%);
  pointer-events: none;
}

.reportListPagerArrow {
  min-width: 34px;
  color: color-mix(in srgb, var(--fg), black 10%);
  background: none;
  border-color: #0000;
  font-size: 18px;
  font-weight: 400;
}

.reportListPagerArrow:hover:not(.isDisabled):not(:disabled) {
  background: color-mix(in srgb, var(--focus), white 95%);
  border-color: #0000;
}

.reportListPagerArrow.isDisabled, .reportListPagerArrow:disabled {
  background: none;
  border-color: #0000;
}

.reportListPagerNumber {
  font-size: 15px;
}

.reportListPagerBtnPlain {
  min-width: 30px;
  color: color-mix(in srgb, var(--fg), black 10%);
  background: none;
  border-color: #0000;
  padding: 0 6px;
}

.reportListPagerBtnPlain:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), white 95%);
  border-color: #0000;
}

.reportListPagerBtnCurrent {
  border-color: color-mix(in srgb, var(--focus), transparent 44%);
  background: color-mix(in srgb, var(--focus), white 91%);
  color: color-mix(in srgb, var(--focus), black 14%);
  cursor: default;
  font-weight: 600;
}

.reportListPagerEllipsis {
  min-width: 14px;
  color: var(--muted);
  justify-content: center;
  align-items: center;
  font-size: 15px;
  line-height: 1;
  display: inline-flex;
}

.reportListTableWrap {
  overflow-x: auto;
}

.reportListTable {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

.reportListTable thead th {
  text-align: left;
  letter-spacing: .01em;
  color: color-mix(in srgb, var(--fg), black 8%);
  border-bottom: 1px solid var(--stroke);
  white-space: nowrap;
  padding: 12px 10px;
  font-size: 14px;
  font-weight: 700;
}

.reportListTable thead th:last-child {
  text-align: right;
}

.reportListTable tbody td {
  border-bottom: 1px solid var(--stroke);
  vertical-align: middle;
  padding: 12px 10px;
  font-size: 14px;
  line-height: 1.25;
}

.reportListTableRow {
  transition: background-color .14s;
}

.reportListTableRow:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
}

.reportListTableDate {
  white-space: nowrap;
}

.reportListSiteCell {
  align-items: baseline;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.reportListSiteCode {
  color: var(--muted);
  white-space: nowrap;
  font-size: 12px;
}

.reportListSiteName {
  min-width: 0;
  font-size: 14px;
}

.reportListSourceTag {
  border: 1px solid color-mix(in srgb, var(--stroke), black 4%);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 24%);
  min-height: 20px;
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  white-space: nowrap;
  border-radius: 999px;
  flex: none;
  justify-content: center;
  align-items: center;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.reportListSourceTag.isImport {
  border-color: color-mix(in srgb, var(--focus), white 62%);
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 18%);
}

.reportListSourceTag.isOffice {
  border-color: color-mix(in srgb, var(--warn), white 58%);
  background: color-mix(in srgb, var(--warn), white 92%);
  color: color-mix(in srgb, var(--warn), black 34%);
}

.reportListTableActionsCell {
  text-align: right;
}

.reportListTableWorkedHeader, .reportListTableWorkedCell {
  width: 112px;
}

.reportListTableWorkedCell {
  white-space: nowrap;
}

.reportListWorkedStack {
  align-content: start;
  gap: 2px;
  display: grid;
}

.reportListWorkedTasksLine {
  color: var(--muted);
  align-items: baseline;
  font-size: 12px;
  line-height: 1.22;
  display: flex;
  overflow: visible;
}

.reportListTaskCountHint {
  -webkit-text-decoration: underline dotted color-mix(in srgb, var(--muted), var(--fg) 20%);
  text-decoration: underline dotted color-mix(in srgb, var(--muted), var(--fg) 20%);
  text-underline-offset: 2px;
  cursor: default;
  outline: none;
}

.reportListTaskCountTooltip {
  z-index: 120;
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  min-width: 180px;
  max-width: min(360px, 72vw);
  max-height: 220px;
  color: color-mix(in srgb, var(--fg), black 8%);
  white-space: normal;
  opacity: 1;
  pointer-events: none;
  background: #fff;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.35;
  position: fixed;
  overflow: auto;
  box-shadow: 0 10px 24px #00000029;
}

.reportListTaskCountTooltipLine {
  display: block;
}

.reportListTicketsCountCell {
  text-align: center;
  width: 84px;
}

.reportListRowActions {
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.reportListOpenBtn {
  text-align: center;
  border-color: color-mix(in srgb, var(--stroke), black 10%);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 74px;
  min-height: 38px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  padding: 0 13px !important;
}

.reportListMoreMenuWrap {
  display: inline-flex;
  position: relative;
}

.reportListMoreBtn {
  min-width: 44px;
  min-height: 44px;
  color: color-mix(in srgb, var(--fg), white 22%);
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex;
}

.reportListMoreBtn:hover {
  color: color-mix(in srgb, var(--fg), black 8%);
}

.reportListMoreBtn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 30%);
  border-radius: 6px;
  outline: none;
}

.reportListKebabDots {
  background: currentColor;
  border-radius: 999px;
  width: 4px;
  height: 4px;
  display: inline-block;
  box-shadow: 0 -7px, 0 7px;
}

.reportListMoreMenu {
  border: 1px solid var(--stroke);
  z-index: 30;
  background: #fff;
  border-radius: 10px;
  gap: 2px;
  min-width: 170px;
  padding: 6px;
  display: grid;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  box-shadow: 0 18px 42px #0f172a29;
}

.reportListMoreMenuFloating {
  z-index: 40;
  position: fixed;
  top: 0;
  left: 0;
  right: auto;
}

.reportListMoreMenuItem {
  width: 100%;
  min-height: 44px;
  color: var(--fg);
  font: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  align-items: center;
  padding: 7px 9px;
  font-size: 14px;
  line-height: 1.25;
  text-decoration: none;
  display: flex;
}

.reportListMoreMenuItem:hover, .reportListMoreMenuItem:focus-visible {
  background: color-mix(in srgb, var(--focus), white 95%);
}

.reportListMoreMenuItem:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 28%);
  outline-offset: -1px;
}

.reportListMoreMenuItem.isDanger {
  color: color-mix(in srgb, var(--danger), black 22%);
}

.reportListMoreMenuItem:disabled {
  cursor: not-allowed;
  opacity: .6;
}

.reportListMoreMenuItem:disabled:hover, .reportListMoreMenuItem:disabled:focus-visible {
  background: none;
}

.reportListMobile {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: #fff;
  display: none;
  overflow: hidden;
  container: portal-report-list / inline-size;
}

.reportListMobileItem {
  border: 0;
  border-bottom: 1px solid var(--stroke);
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  background: #fff;
  border-radius: 0;
  grid-template-columns: minmax(0, 1fr) max-content 14px;
  grid-template-areas: "main status chevron";
  align-items: center;
  gap: 10px;
  padding: 12px;
  text-decoration: none;
  transition: background-color .14s;
  display: grid;
}

.reportListMobileItem:last-child {
  border-bottom: 0;
}

.reportListMobileItem:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
}

.reportListMobileItem:active {
  background: color-mix(in srgb, var(--fg), white 95%);
}

.reportListMobileMain {
  grid-area: main;
  gap: 3px;
  min-width: 0;
  display: grid;
}

.reportListMobilePrimary {
  overflow-wrap: anywhere;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  min-width: 0;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.25;
  display: -webkit-box;
  overflow: hidden;
}

.reportListMobileSecondary {
  white-space: nowrap;
  min-width: 0;
  color: var(--muted);
  flex: 1 1 0;
  align-items: center;
  gap: 6px;
  font-size: .75rem;
  display: flex;
  overflow: hidden;
}

.reportListMobileWorkedSummary {
  white-space: nowrap;
  min-width: 0;
  color: var(--muted);
  align-items: center;
  gap: 6px;
  font-size: .75rem;
  line-height: 1.2;
  display: flex;
  overflow: hidden;
}

.reportListMobileWorkedValue, .reportListMobileWorkedTasks {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.reportListMobileWorkedValue {
  color: color-mix(in srgb, var(--fg), black 8%);
}

.reportListMobileMetaDate, .reportListMobileMetaSeparator {
  flex: none;
}

.reportListMobileMetaValue {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.reportListMobileRight {
  display: contents;
}

.reportListMobileStatusPill {
  letter-spacing: .02em;
  white-space: nowrap;
  grid-area: status;
  place-self: center end;
  min-height: 20px;
  padding: 2px 8px;
  font-size: .625rem;
  line-height: 1.1;
}

.mobileRowChevron {
  width: 14px;
  height: 14px;
  color: var(--muted);
  flex: 0 0 14px;
}

.reportListMobileRight .mobileRowChevron {
  grid-area: chevron;
  place-self: center end;
}

.reportFiltersForm {
  gap: 10px;
  display: grid;
}

.reportFiltersField {
  min-width: 0;
  margin-top: 0;
}

.reportFiltersFieldSearch {
  width: 100%;
  min-width: 0;
}

.filtersToggleIcon {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.reportFiltersClearBtn {
  text-align: center;
  min-width: 120px;
}

.reportFiltersClearBtnCompact {
  min-width: 96px;
  min-height: 44px;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.reportCreateHintText, .reportCreateSearchState, .reportCreateOptionHint {
  font-size: 12px;
}

.reportCreateSearchWrap {
  position: relative;
}

.portalSearchPickerTrigger {
  text-align: left;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: 100%;
  display: flex;
}

.portalSearchPickerTriggerDisabled {
  cursor: not-allowed;
}

.portalSearchPickerTriggerText {
  min-width: 0;
  color: var(--fg);
  white-space: nowrap;
  text-overflow: ellipsis;
  flex: auto;
  overflow: hidden;
}

.portalSearchPickerTriggerText.isPlaceholder {
  color: var(--muted);
}

.portalSearchPickerTriggerChevron {
  flex: none;
  font-size: 12px;
}

.portalSearchPickerMobileOnly {
  width: 100%;
  min-width: 0;
  display: none;
}

.portalSearchPickerDesktopOnly {
  display: block;
}

.reportCreateSearchState {
  margin-top: 3px;
}

.reportCreateOptionMain {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  display: flex;
}

.cmPopover {
  overscroll-behavior: contain;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 18px 42px #0f172a29;
}

.cmPopoverOption {
  border-radius: 7px;
  min-height: 44px;
  padding: 7px 9px;
}

.cmPopoverOption.isSelected, .cmPopoverOption[aria-selected="true"] {
  background: color-mix(in srgb, var(--focus), white 92%);
}

.cmPopoverOption.isSpecial {
  background: color-mix(in srgb, var(--accent), white 94%);
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--accent), white 30%);
}

.reportCreateOptionCode {
  color: var(--muted);
  font-size: 13px;
}

.reportCreateOptionName {
  font-size: 14px;
}

.reportCreateOptionDescription {
  color: var(--muted);
  flex-basis: 100%;
  font-size: 12px;
  line-height: 1.25;
}

.reportObraSelectedPill {
  border-color: color-mix(in srgb, var(--ok), transparent 55%);
  background: color-mix(in srgb, var(--ok), white 93%);
  align-items: center;
  gap: 8px;
  width: fit-content;
  margin-top: 8px;
  display: inline-flex;
}

.reportObraSelectedCheck {
  color: color-mix(in srgb, var(--ok), black 20%);
  font-weight: 900;
}

.reportObraSelectedClearBtn {
  min-height: 28px;
  padding: 2px 8px;
  font-size: 12px;
}

.reportCreateActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.reportCreateCancelBtn {
  min-width: 120px;
}

.reportCreateSubmitBtn {
  min-width: 132px;
}

.reportCreateDialogBackdrop {
  z-index: 70;
  background: color-mix(in srgb, var(--fg), transparent 75%);
  place-items: center;
  padding: 16px;
  display: grid;
  position: fixed;
  inset: 0;
}

.reportCreateDialogCard {
  width: min(560px, 100%);
  box-shadow: var(--shadow-2);
}

.reportCreateDialogBody {
  gap: 12px;
  display: grid;
}

.reportCreateDialogTitle {
  font-weight: 800;
}

.reportCreateDialogSourcePill {
  width: fit-content;
}

.reportCreateDialogOptions {
  gap: 8px;
  display: grid;
}

.reportCreateDialogLabel {
  margin: 0;
}

.reportCreateDialogOption {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.reportCreateDialogOption.isDisabled {
  color: var(--muted);
}

.profileMain {
  gap: 14px;
  display: grid;
}

.profileCardBody {
  gap: 0;
  display: grid;
}

.profileSection {
  border-bottom: 1px solid var(--stroke);
  gap: 14px;
  padding-block: 16px;
  display: grid;
}

.profileSection:first-child {
  padding-top: 0;
}

.profileSection:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
}

.profileSectionHeader {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.profileAvatarSectionHeader {
  align-items: flex-start;
}

.profileSectionTitle {
  letter-spacing: -.008em;
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;
}

.profileAvatarRow {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.profileAvatarInfo {
  align-items: center;
  gap: 12px;
  display: flex;
}

.profileAvatarMeta {
  gap: 4px;
  display: grid;
}

.profileMetaText {
  font-size: 12px;
}

.profileAppVersion {
  min-height: 44px;
  color: var(--muted);
  cursor: copy;
  text-align: right;
  -webkit-user-select: none;
  user-select: none;
  touch-action: manipulation;
  background: none;
  border: 0;
  justify-self: end;
  margin: -8px 0 -6px;
  padding: 12px 6px;
  font-size: 10px;
  line-height: 1.2;
}

.profileAppVersion:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
  border-radius: 6px;
}

.profileAppVersionCopied {
  color: color-mix(in srgb, var(--ok), black 20%);
}

.profileAvatarActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.profileFieldsGrid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
  display: grid;
}

.profileFieldsStack {
  gap: 10px;
  display: grid;
}

.profileFieldsStackAccount, .profileFieldsStackPersonal {
  max-width: 100%;
}

.profileFieldsStackAccount {
  align-items: start;
}

.profileFieldSpanFull {
  grid-column: 1 / -1;
}

.profileField {
  min-width: 0;
  margin-top: 0;
}

.profileEmailVerificationRow {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  margin-top: 0;
  display: flex;
}

.profileEmailVerificationStatus {
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.profileEmailVerificationStatus.isVerified {
  border: 1px solid color-mix(in srgb, var(--ok), white 55%);
  min-height: 28px;
  color: color-mix(in srgb, var(--ok), black 24%);
  background: color-mix(in srgb, var(--ok), white 91%);
  box-shadow: 0 1px 0 color-mix(in srgb, var(--ok), white 78%);
  border-radius: 999px;
  padding: 5px 9px 5px 7px;
}

.profileEmailVerificationStatus.isUnverified {
  color: var(--muted);
}

.profileEmailVerificationIcon {
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
  width: 16px;
  height: 16px;
}

.profileEmailVerificationIcon circle {
  fill: color-mix(in srgb, var(--ok), white 84%);
}

.profileEmailVerificationBtn {
  appearance: none;
  width: fit-content;
  min-height: 44px;
  color: var(--focus);
  font: inherit;
  white-space: nowrap;
  cursor: pointer;
  touch-action: manipulation;
  background: none;
  border: 0;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  padding: 0 6px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.profileEmailVerificationBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), transparent 93%);
}

.profileEmailVerificationBtn:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 70%);
  outline: none;
}

.profileEmailVerificationBtn:disabled {
  color: color-mix(in srgb, var(--focus), var(--muted) 60%);
  cursor: not-allowed;
}

.profileAddressSearchBlock {
  gap: 8px;
  display: grid;
}

.profileAddressSearchRow {
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  display: grid;
}

.profileAddressSearchTrigger {
  width: 100%;
}

.profileAddressSearchDesktopControls {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  display: grid;
}

.profileAddressSearchSuggestions {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  border-radius: var(--radius);
  background: var(--bg);
  max-height: 220px;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
}

.profileAddressSearchSuggestionItem {
  text-align: left;
  width: 100%;
  color: var(--fg);
  cursor: pointer;
  background: none;
  border: 0;
  min-height: 44px;
  padding: 9px 11px;
}

.profileAddressSearchSuggestionItem:hover {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 4%);
}

.profileAddressSearchSuggestionItem:focus-visible {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 4%);
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 28%);
  outline-offset: -2px;
}

.profileMonoReadOnly {
  font-family: var(--font-mono);
}

.profileSaveActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
  display: flex;
}

.profilePasswordForm {
  border-top: 0;
  gap: 12px;
  width: 100%;
  padding-top: 0;
  display: grid;
}

.profilePasswordFormCompact {
  border-top: 0;
  padding-top: 0;
}

.profilePasswordHelp, .profilePasswordForceHint {
  margin: 0;
  font-size: 12px;
}

.profilePasswordPolicyList {
  gap: 4px;
  margin: 0;
  padding-left: 0;
  font-size: 12px;
  list-style: none;
  display: grid;
}

.profilePasswordPolicyItem {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.profilePasswordPolicyItem.isMet {
  color: color-mix(in srgb, var(--ok), black 10%);
}

.profilePasswordPolicyMark {
  text-align: center;
  width: 14px;
  font-weight: 800;
  line-height: 1;
}

.profilePasswordFields {
  grid-template-columns: 1fr;
  gap: 8px;
  width: 100%;
  display: grid;
}

.profilePasswordFields .profileField {
  gap: 4px;
}

.profilePasswordFields .passwordInputControl {
  gap: 2px;
}

.profilePasswordFields .passwordCapsSlot {
  min-height: 16px;
}

.profilePasswordFields .passwordCapsMessage {
  font-size: 12px;
  line-height: 1.2;
}

.profilePasswordFields .passwordCapsInfoIcon {
  width: 16px;
  height: 16px;
}

.profilePasswordDesktopGrid {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  align-items: stretch;
  gap: 24px;
  width: 100%;
  display: grid;
}

.profilePasswordInputsColumn {
  gap: 10px;
  min-width: 0;
  display: grid;
}

.profilePasswordRequirementsColumn {
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  min-height: 100%;
  display: flex;
}

.profilePasswordRequirementsTop {
  gap: 8px;
  display: grid;
}

.profilePasswordRequirementsPanel {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 24%);
  overflow-wrap: anywhere;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  display: grid;
}

.profilePasswordRequirementsPanel .profilePasswordHelp, .profilePasswordRequirementsPanel .profilePasswordForceHint {
  font-size: 13px;
}

.profilePasswordInlineActionRow {
  justify-content: flex-end;
  width: 100%;
  margin-top: 24px;
}

.profilePasswordRightActionRow {
  justify-content: flex-end;
  width: 100%;
  margin-top: auto;
}

.profilePasswordActionRowStandalone {
  justify-content: flex-end;
  width: 100%;
  margin-top: 24px;
}

.profileForcedPasswordCard {
  width: min(760px, 100%);
  margin-inline: auto;
}

.profileForcedPasswordBody {
  gap: 12px;
  display: grid;
}

@media (max-width: 1180px) {
  .profilePasswordDesktopGrid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .profilePasswordRequirementsColumn {
    gap: 10px;
  }

  .profilePasswordRightActionRow {
    margin-top: 0;
  }
}

.profileSignatureSectionBody {
  gap: 12px;
  display: grid;
}

.profileHiddenInput {
  display: none;
}

.profileActionBtn {
  justify-content: center;
  min-width: 96px;
}

.profileAvatarButton {
  background: none;
  border: 0;
  border-radius: 999px;
  place-items: center;
  width: 72px;
  height: 72px;
  padding: 0;
  display: grid;
}

.profileAvatarImage {
  flex: none;
}

.profileAvatarPlaceholder {
  text-align: center;
  padding: 8px;
  font-size: 12px;
}

.profileActionBtnWide {
  min-width: 120px;
}

.profileSaveBtn {
  min-width: 96px;
}

.profileSignatureHeader {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  width: 100%;
  display: flex;
}

.profileSignatureMeta {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.profileSignatureHeaderActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.profileSignatureModeActions {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.profileSignatureModeBtn {
  background: var(--bg);
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 10%);
  min-width: 96px;
  color: var(--fg);
  min-height: 44px;
}

.profileSignatureModeBtn:hover, .profileSignatureModeBtn:focus-visible {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 4%);
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 22%);
}

.profileSignatureModeBtn.isSelected {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 12%);
}

.profileSignatureRemoveBtn {
  color: color-mix(in srgb, var(--danger), black 8%);
  border-color: color-mix(in srgb, var(--danger), transparent 70%);
  background: var(--bg);
  min-height: 44px;
}

.profileSignatureRemoveBtn:hover, .profileSignatureRemoveBtn:focus-visible {
  color: color-mix(in srgb, var(--danger), black 6%);
  border-color: color-mix(in srgb, var(--danger), transparent 56%);
  background: color-mix(in srgb, var(--danger), white 94%);
}

.profileSignatureWorkspace {
  width: 100%;
  min-width: 0;
}

.profileSignatureUploadZone {
  appearance: none;
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 12%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--bg-2), white 42%);
  cursor: pointer;
  width: 100%;
  min-width: 0;
  min-height: 84px;
  color: inherit;
  font: inherit;
  text-align: left;
  outline: none;
  gap: 6px;
  padding: 14px;
  display: grid;
}

.profileSignatureUploadZone:hover, .profileSignatureUploadZone:focus-visible {
  border-color: color-mix(in srgb, var(--focus), black 12%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 74%);
}

.profileSignatureUploadZone.isDragActive {
  border-color: color-mix(in srgb, var(--focus), black 8%);
  background: color-mix(in srgb, var(--focus), white 92%);
}

.profileSignatureUploadTitle {
  margin: 0;
  font-weight: 700;
}

.profileSignaturePreviewPanel {
  appearance: none;
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  cursor: pointer;
  width: 100%;
  min-width: 0;
  color: inherit;
  font: inherit;
  text-align: left;
  background: #fff;
  outline: none;
  gap: 8px;
  padding: 10px;
  display: grid;
}

.profileSignaturePreviewPanel:hover, .profileSignaturePreviewPanel:focus-visible {
  border-color: color-mix(in srgb, var(--focus), black 12%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 74%);
}

.profileSignaturePreviewImage {
  object-fit: contain;
  background: none;
  justify-self: center;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: 120px;
  display: block;
}

.profileSecuritySectionBody {
  gap: 10px;
  display: grid;
}

.profileSignaturePadRoot {
  gap: 10px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.profileSignaturePadHint {
  margin: 0;
  font-size: 12px;
}

.profileSignaturePadFooter {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.profileSignaturePadCanvas {
  background: color-mix(in srgb, var(--bg-2), white 55%);
  border: 1px dashed color-mix(in srgb, var(--stroke), var(--fg) 18%);
  border-radius: var(--radius);
  touch-action: none;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: 180px;
  display: block;
}

@media (min-width: 901px) {
  .profileFieldsStackAccount, .profileFieldsStackPersonal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .profileFieldsStackAccount > .profileField:not(.profileFieldSpanFull) {
    grid-template-rows: auto minmax(44px, auto) minmax(36px, auto);
    align-content: start;
  }

  .profilePasswordFormCompact .profilePasswordDesktopGrid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.reportEditorMain {
  gap: 12px;
  display: grid;
}

.reportEditorContextBody {
  gap: 10px;
  display: grid;
}

.reportEditorContextHeader {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.reportEditorContextSite {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  display: inline-flex;
}

.reportEditorContextSiteCode {
  color: color-mix(in srgb, var(--focus), black 8%);
}

.reportEditorWorkTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: 28px;
}

.reportEditorMetaLine {
  font-size: 12px;
}

.reportEditorStatusPill {
  justify-content: center;
  align-items: center;
  min-width: 132px;
  min-height: 42px;
  display: inline-flex;
}

.reportEditorReadOnlyPill {
  background: color-mix(in srgb, var(--focus), white 93%);
  width: fit-content;
}

.reportEditorReadOnlyMark {
  color: var(--accent);
}

.reportEditorTopActionsInline, .reportEditorTopActionGroup {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.reportEditorDeleteBtn {
  min-width: 140px;
}

.reportEditorSaveBtn {
  min-width: 120px;
}

.reportSubmitBtnLocked:disabled {
  opacity: .62;
}

.btnSuccess:disabled, .btnAction:disabled {
  color: #fff;
  opacity: .62;
}

.btnSuccess:disabled {
  background: var(--ok);
  border-color: color-mix(in srgb, var(--ok), black 16%);
}

.btnAction:disabled {
  background: var(--focus);
  border-color: color-mix(in srgb, var(--focus), black 16%);
}

.portalFeedbackToastHost {
  top: calc(env(safe-area-inset-top) + 14px);
  z-index: 3000;
  pointer-events: none;
  position: fixed;
  right: 14px;
}

.portalFeedbackToast {
  pointer-events: auto;
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 14%);
  border-radius: var(--radius);
  background: var(--bg);
  width: min(420px, 100vw - 24px);
  min-height: 42px;
  box-shadow: var(--shadow);
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  display: inline-flex;
}

.portalFeedbackToastSuccess {
  border-color: color-mix(in srgb, var(--ok), transparent 42%);
  background: color-mix(in srgb, var(--ok), white 92%);
  color: color-mix(in srgb, var(--ok), black 22%);
}

.portalFeedbackToastError {
  border-color: color-mix(in srgb, var(--danger), transparent 42%);
  background: color-mix(in srgb, var(--danger), white 93%);
  color: color-mix(in srgb, var(--danger), black 18%);
}

.portalFeedbackToastIcon {
  border-radius: 999px;
  flex: none;
  place-items: center;
  width: 16px;
  height: 16px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: inline-grid;
}

.portalFeedbackToastSuccess .portalFeedbackToastIcon {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 25%);
  background: color-mix(in srgb, var(--ok), white 82%);
  color: color-mix(in srgb, var(--ok), black 20%);
}

.portalFeedbackToastError .portalFeedbackToastIcon {
  border: 1px solid color-mix(in srgb, var(--danger), transparent 24%);
  background: color-mix(in srgb, var(--danger), white 84%);
  color: color-mix(in srgb, var(--danger), black 14%);
}

.portalFeedbackToastMessage {
  min-width: 0;
  font-size: 13px;
  line-height: 1.25;
}

.portalFeedbackToastActions {
  align-items: center;
  gap: 6px;
  margin-left: auto;
  display: inline-flex;
}

.portalFeedbackToastAction {
  white-space: nowrap;
  min-width: 0;
  min-height: 30px;
  font-size: 12px;
  padding: 4px 9px !important;
}

.portalFeedbackToastClose {
  border-radius: 999px;
  flex: none;
  width: 28px;
  min-width: 28px;
  min-height: 28px;
  font-size: 18px;
  line-height: 1;
  padding: 0 !important;
}

.portalUpdateBanner {
  left: 50%;
  bottom: calc(env(safe-area-inset-bottom) + 14px);
  z-index: 120;
  border: 1px solid color-mix(in srgb, var(--focus), transparent 38%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--focus), white 93%);
  width: min(520px, 100vw - 24px);
  box-shadow: var(--shadow);
  color: color-mix(in srgb, var(--focus), black 18%);
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  display: flex;
  position: fixed;
  transform: translateX(-50%);
}

.portalUpdateBannerText {
  gap: 2px;
  min-width: 0;
  font-size: 13px;
  line-height: 1.25;
  display: grid;
}

.portalUpdateBannerText strong {
  font-size: 13px;
  line-height: 1.2;
}

.portalUpdateBannerAction {
  white-space: nowrap;
  min-height: 44px;
  margin-left: auto;
}

.reportEditorSavedToast {
  z-index: 80;
  border: 1px solid color-mix(in srgb, var(--ok), transparent 35%);
  background: color-mix(in srgb, var(--ok), white 92%);
  min-height: 38px;
  color: color-mix(in srgb, var(--ok), black 20%);
  box-shadow: var(--shadow);
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  display: inline-flex;
  position: fixed;
  bottom: 16px;
  right: 16px;
}

.reportEditorSavedToastMark {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 25%);
  background: color-mix(in srgb, var(--ok), white 82%);
  border-radius: 999px;
  place-items: center;
  width: 18px;
  height: 18px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  display: grid;
}

.reportEditorReadOnlyMain, .ticketsReadOnlyStack {
  gap: 14px;
  display: grid;
}

.reportDetailHeroCard {
  border-color: color-mix(in srgb, var(--stroke), var(--focus) 18%);
  background: color-mix(in srgb, var(--bg), var(--focus) 4%);
}

.reportReadOnlyHeroCard {
  border-color: color-mix(in srgb, var(--stroke), transparent 12%);
  box-shadow: none;
  background: #fff;
}

.portalDetailHeroBody {
  gap: 16px;
  display: grid;
  padding: 20px !important;
}

.reportReadOnlyHeroBody {
  gap: 14px;
  padding: 18px !important;
}

.portalDetailHeroTop {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.reportReadOnlyHeroTop {
  align-items: flex-start;
}

.portalDetailHeroTitleBlock {
  gap: 10px;
  min-width: 0;
  display: grid;
}

.reportReadOnlyHeroTitleBlock {
  flex: auto;
  max-width: min(100%, 620px);
}

.portalDetailHeroCode.reportReadOnlyHeroCode {
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  display: block;
}

.reportReadOnlyHeroTitle {
  overflow-wrap: anywhere;
  max-width: 100%;
  line-height: 1.08;
  display: block;
}

.operationsClosedSummary {
  gap: 8px;
  display: grid;
}

.operationsClosedSummary p {
  margin: 0;
}

.portalDetailKicker {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.portalDetailHeroTitleRow {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 12px;
  display: flex;
}

.portalDetailHeroCode {
  color: color-mix(in srgb, var(--focus), black 10%);
  font-size: 13px;
  line-height: 1.1;
}

.portalDetailHeroTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1;
}

.portalDetailHeroAside {
  justify-items: end;
  gap: 10px;
  display: grid;
}

.reportReadOnlySummaryBar {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-self: start;
  align-items: center;
  gap: 0;
  display: inline-flex;
}

.reportReadOnlyStatusPill {
  min-height: 34px;
  padding-left: 12px;
  padding-right: 12px;
}

.portalDetailStatusPill {
  white-space: nowrap;
  min-height: 38px;
  padding-left: 14px;
  padding-right: 14px;
}

.portalDetailSummaryChip {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--focus) 16%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, white, var(--focus) 4%);
  text-align: right;
  gap: 4px;
  min-width: 148px;
  padding: 12px 14px;
  display: grid;
}

.portalDetailSummaryLabel {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.portalDetailSummaryValue {
  font-size: 24px;
  line-height: 1;
}

.portalDetailFieldGrid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.reportReadOnlyFieldGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.reportReadOnlyFieldGrid .portalDetailField {
  background: #fff;
}

.portalDetailField {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, var(--bg-2), white 45%);
  gap: 6px;
  min-width: 0;
  padding: 12px 13px;
  display: grid;
}

.portalDetailFieldLabel {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.portalDetailFieldValue {
  min-width: 0;
  color: color-mix(in srgb, var(--fg), black 10%);
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.35;
}

.portalDetailFieldValue.isMono {
  font-family: var(--font-mono);
}

.portalDetailContentCard {
  background: color-mix(in srgb, var(--bg), white 18%);
}

.reportReadOnlyContentCard {
  border-color: color-mix(in srgb, var(--stroke), transparent 12%);
  box-shadow: none;
  background: #fff;
}

.reportReadOnlyContentCard .portalDetailListRow, .reportReadOnlyContentCard .portalDetailTextBlock {
  background: #fff;
}

.ticketsReadOnlyHeroCard {
  border-color: color-mix(in srgb, var(--stroke), var(--focus) 16%);
  background: color-mix(in srgb, white, var(--focus) 4%);
}

.ticketsReadOnlyHeroBody {
  gap: 14px;
}

.ticketsReadOnlyHeroTitleBlock {
  flex: auto;
  max-width: min(100%, 620px);
}

.ticketsReadOnlyHeroTitle {
  max-width: 100%;
  display: block;
}

.ticketsReadOnlyFieldGrid .portalDetailField {
  background: #fff;
}

.ticketsReadOnlyFieldGrid.isExpense, .ticketsReadOnlyFieldGrid.isMisc {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ticketsReadOnlyFieldGrid.isMisc {
  align-items: start;
}

@media (min-width: 901px) {
  .ticketsReadOnlyFieldGrid.isExpense, .ticketsReadOnlyFieldGrid.isMisc, .ticketsReadOnlyFieldGrid.isMaterial {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldDate {
    order: 1;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldSubmitted {
    order: 2;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldCategory {
    order: 3;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldAmount {
    order: 4;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldTarget, .ticketsReadOnlyFieldGrid.isMisc .ticketsReadOnlyFieldTarget {
    order: 5;
    grid-column: 1 / -1;
  }
}

.ticketsReadOnlyCombinedField {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  display: grid;
}

.ticketsReadOnlyCombinedFieldBlock {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.ticketsReadOnlyCombinedFieldDivider {
  background: color-mix(in srgb, var(--stroke), transparent 10%);
  align-self: stretch;
  width: 1px;
}

.ticketsReadOnlyContentCard, .ticketsReadOnlyContentCard .portalDetailListRow, .ticketsReadOnlyContentCard .portalDetailTextBlock, .ticketsReadOnlyContentCard .ticketsAttachmentPreviewBtn {
  background: color-mix(in srgb, white, var(--focus) 4%);
}

.ticketsReadOnlyContentCard .portalDetailListRow, .ticketsReadOnlyContentCard .portalDetailTextBlock, .ticketsReadOnlyContentCard .ticketsAttachmentPreviewBtn {
  background: #fff;
}

.portalDetailContentBody {
  gap: 0;
  display: grid;
  padding: 0 !important;
}

.portalDetailSection {
  gap: 12px;
  padding: 18px 20px;
  display: grid;
}

.portalDetailSection + .portalDetailSection {
  border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
}

.portalDetailSectionHeader {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.portalDetailList {
  gap: 8px;
  display: grid;
}

.portalDetailListRow {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, var(--bg-2), white 48%);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  display: grid;
}

.portalDetailListTitle {
  min-width: 0;
  font-weight: 700;
  line-height: 1.3;
}

.portalDetailListValue {
  flex: none;
  font-size: 15px;
  line-height: 1.1;
}

.ticketQuantityValue {
  grid-template-columns: 5.5ch 7ch;
  justify-content: end;
  align-items: baseline;
  column-gap: .7ch;
  display: inline-grid;
}

.ticketQuantityAmount {
  text-align: right;
  font-variant-numeric: tabular-nums;
  min-width: 0;
}

.ticketQuantityUnit {
  text-align: right;
  white-space: nowrap;
  min-width: 0;
}

.portalDetailTextBlock {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, var(--bg-2), white 48%);
  white-space: pre-wrap;
  margin: 0;
  padding: 14px 16px;
  line-height: 1.55;
}

.portalDetailEmpty {
  margin: 0;
}

.reportDetailTaskList {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: var(--radius);
  background: #fff;
  gap: 0;
  overflow: hidden;
  container: portal-report-detail-task-ledger / inline-size;
}

.reportDetailTaskList .reportDetailTaskRow {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  background: #fff;
  border-radius: 0;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
}

.reportDetailTaskList .reportDetailTaskRow:last-child {
  border-bottom: 0;
}

.reportDetailTaskList .portalDetailListValue {
  justify-self: end;
}

.reportDetailTaskRow.isTotal {
  background: #fff;
}

.reportDetailTaskRow.isTotal .portalDetailListTitle, .reportDetailTaskRow.isTotal .portalDetailListValue {
  color: var(--fg);
  font-weight: 800;
}

.reportReadOnlyTaskTitle {
  overflow-wrap: anywhere;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  line-height: 1.4;
  display: flex;
}

.reportReadOnlyTaskTitle.isProcessing {
  color: var(--focus);
  font-size: 14px;
  font-weight: 600;
}

.reportReadOnlyTaskTitle.isFailed {
  color: var(--fg);
}

.reportReadOnlyTaskText, .reportReadOnlyTaskStatusText, .reportReadOnlyTaskReason {
  overflow-wrap: anywhere;
  min-width: 0;
}

.reportReadOnlyTaskText, .reportReadOnlyTaskReason {
  white-space: normal;
}

.reportReadOnlyTaskStatusText {
  flex: 0 auto;
}

.reportReadOnlyTaskReason {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

@container portal-report-detail-task-ledger (max-width: 12rem) {
  .reportDetailTaskList .reportDetailTaskRow {
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
  }

  .reportDetailTaskList .portalDetailListValue {
    justify-self: start;
  }
}

.reportReadOnlyTaskBadge {
  border-radius: 999px;
  flex: none;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.reportReadOnlyTaskBadge svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 14px;
  height: 14px;
}

.reportReadOnlyTaskBadge.isFailed {
  color: #b42318;
  background: #fef0ef;
  border: 1px solid #f0443847;
}

.reportReadOnlyTaskTitle .reportWorkerTaskDictationSpinner {
  flex: none;
  width: 12px;
  height: 12px;
}

.reportEditorSectionBody, .reportSubmitSectionBody {
  gap: 12px;
  display: grid;
}

.reportSectionTitle {
  font-family: var(--font-condensed);
  letter-spacing: .02em;
  margin: 0;
  font-size: 22px;
}

.reportSubmitReadOnlyText {
  margin: 0;
}

.reportValidationIssueList {
  gap: 6px;
  display: grid;
}

.reportSubmitRequirementsCard {
  box-shadow: none;
  background: var(--bg-2);
  border-color: color-mix(in srgb, var(--stroke), transparent 15%);
}

.reportSubmitRequirementsBody {
  gap: 6px;
  display: grid;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.reportSubmitReqHeader {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.reportSubmitReqHeading {
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
}

.reportSubmitReadyPill {
  border-color: color-mix(in srgb, var(--ok), transparent 40%);
}

.reportSubmitReadyMark {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 24%);
  background: color-mix(in srgb, var(--ok), white 86%);
  width: 16px;
  height: 16px;
  color: color-mix(in srgb, var(--ok), black 20%);
  border-radius: 999px;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  display: inline-grid;
}

.reportSubmitMissingPill {
  border-color: color-mix(in srgb, var(--danger), transparent 35%);
  background: color-mix(in srgb, var(--danger), white 94%);
}

.reportSubmitMissingMark {
  color: color-mix(in srgb, var(--danger), black 18%);
  font-weight: 900;
}

.reportSubmitMissingCount {
  color: color-mix(in srgb, var(--danger), black 18%);
  font-weight: 700;
}

.reportSubmitWarnPill {
  background: #faf5e5;
  border-color: #d4aa2acc;
}

.reportSubmitWarnMark {
  color: #926d00;
  font-weight: 900;
}

.reportSubmitWarnCount {
  color: #795900;
  font-weight: 700;
}

.reportSubmitReqList {
  justify-items: start;
  gap: 6px;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.reportSubmitReqItem {
  justify-self: start;
  align-items: center;
  gap: 8px;
  width: min(100%, 760px);
  padding: 7px 9px;
  display: flex;
}

.reportSubmitReqItem.isOk {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 45%);
  background: color-mix(in srgb, var(--ok), white 95%);
}

.reportSubmitReqItem.isMissing {
  border: 1px solid color-mix(in srgb, var(--warn), transparent 40%);
  background: color-mix(in srgb, var(--warn), white 95%);
}

.reportSubmitReqItem.isWarn {
  background: #fcf9f0;
  border: 1px solid #d4aa2ab3;
}

.reportSubmitReqIcon {
  border-radius: 999px;
  place-items: center;
  width: 18px;
  height: 18px;
  font-size: 12px;
  font-weight: 900;
  display: grid;
}

.reportSubmitReqItem.isOk .reportSubmitReqIcon {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 30%);
  color: color-mix(in srgb, var(--ok), black 20%);
  background: color-mix(in srgb, var(--ok), white 88%);
}

.reportSubmitReqItem.isMissing .reportSubmitReqIcon {
  border: 1px solid color-mix(in srgb, var(--warn), transparent 30%);
  color: var(--warn-ink);
  background: color-mix(in srgb, var(--warn), white 88%);
}

.reportSubmitReqItem.isWarn .reportSubmitReqIcon {
  color: #785800;
  background: #f9f3e1;
  border: 1px solid #b28500c7;
}

.reportSubmitReqText {
  color: var(--fg);
  font-size: 13px;
}

.reportSubmitReqItem.isMissing .reportSubmitReqText {
  color: var(--warn-ink);
}

.reportSubmitReqItem.isWarn .reportSubmitReqText {
  color: var(--fg);
}

.reportSubmitConfirm {
  justify-self: start;
  align-items: center;
  gap: 10px;
  width: min(100%, 760px);
  margin: 0;
  padding: 0;
  display: flex;
}

.reportSubmitConfirm input[type="checkbox"], .reportSubmitConfirm span {
  margin: 0;
}

.reportSubmitActions {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.reportWorkerContextBody {
  gap: 10px;
}

.reportWorkerFieldGrid {
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) minmax(188px, 220px);
  align-items: end;
  gap: 8px;
  display: grid;
}

.reportWorkerSiteField {
  min-width: 0;
}

.reportWorkerSiteSearchWrap {
  width: 100%;
}

.reportWorkerObraPopover {
  z-index: 66;
  width: 100%;
  max-width: 100%;
  left: 0;
  right: 0;
}

.reportWorkerClosestSiteWrap {
  place-self: end stretch;
  width: 100%;
  min-width: 0;
  display: flex;
}

.reportWorkerClosestSiteBtn {
  width: 100%;
  min-width: 0;
  min-height: 44px;
}

.reportWorkerClosestSiteAlert {
  border: 1px solid color-mix(in srgb, var(--focus), transparent 58%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--focus), white 95%);
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin-top: 4px;
  padding: 12px;
  display: grid;
}

.reportWorkerClosestSiteAlertIcon {
  border: 1px solid color-mix(in srgb, var(--focus), transparent 42%);
  background: color-mix(in srgb, var(--focus), white 82%);
  width: 28px;
  height: 28px;
  color: color-mix(in srgb, var(--focus), black 14%);
  font-family: var(--font-condensed);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.reportWorkerClosestSiteAlertBody {
  gap: 12px;
  min-width: 0;
  display: grid;
}

.reportWorkerClosestSiteAlertCopy {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.reportWorkerClosestSiteAlertTitle {
  color: var(--fg);
  font-family: var(--font-condensed);
  margin: 0;
  font-size: 15px;
  line-height: 1.15;
}

.reportWorkerClosestSiteAlertText, .reportWorkerClosestSiteAlertHelp {
  max-width: 68ch;
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}

.reportWorkerClosestSiteAlertFallback {
  color: color-mix(in srgb, var(--fg), var(--muted) 34%);
}

.reportWorkerClosestSiteAlertHelp {
  color: color-mix(in srgb, var(--fg), var(--muted) 46%);
}

.reportWorkerClosestSiteAlertActions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.reportWorkerClosestSiteAlertActionBtn {
  min-height: 44px;
}

.reportWorkerSaveRow {
  justify-content: flex-end;
  display: flex;
}

.reportWorkerSaveRow .reportWorkerSaveBtn {
  width: 220px;
  min-width: 220px;
}

.reportWorkerTasksBody {
  gap: 10px;
}

.reportWorkerTaskHeaderRow {
  grid-template-columns: minmax(0, 1fr) 160px 44px;
  align-items: start;
  gap: 8px;
  display: grid;
}

.reportWorkerTaskHeaderRow .label {
  margin: 0;
}

.reportWorkerTaskHoursHeader {
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  gap: 6px;
  display: grid;
}

.reportWorkerTaskHoursHeader > span {
  text-align: center;
  grid-column: 2;
}

.reportWorkerTaskList {
  gap: 8px;
  display: grid;
}

.reportWorkerTaskRow {
  grid-template-columns: minmax(0, 1fr) 160px 44px;
  align-items: center;
  gap: 8px;
  display: grid;
}

.reportWorkerTaskNameField, .reportWorkerTaskHoursField {
  min-width: 0;
  margin: 0;
}

.reportWorkerTaskHoursField {
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 6px;
  display: grid;
}

.reportWorkerTaskHoursInput {
  text-align: center;
}

.reportWorkerTaskDurationField {
  min-width: 0;
  position: relative;
}

.reportWorkerTaskDurationTrigger {
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  display: grid;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.reportWorkerTaskDurationTriggerValue {
  text-align: center;
  grid-column: 2;
}

.reportWorkerTaskDurationTriggerValue.isPlaceholder {
  color: color-mix(in srgb, var(--muted), var(--fg) 24%);
}

.reportWorkerTaskDurationTriggerIcon {
  grid-column: 3;
  justify-content: center;
  justify-self: end;
  align-items: center;
  width: 12px;
  height: 12px;
  display: inline-flex;
}

.reportWorkerTaskDurationTriggerCaret {
  border-bottom: 2px solid;
  border-right: 2px solid;
  width: 8px;
  height: 8px;
  transition: transform .16s;
  transform: rotate(45deg)translateY(-1px);
}

.reportWorkerTaskDurationTriggerCaret.isOpen {
  transform: rotate(225deg)translateY(-1px);
}

.reportWorkerTaskDurationField.isError .reportWorkerTaskDurationTrigger {
  border-color: color-mix(in srgb, var(--warn), transparent 25%);
}

.reportWorkerTaskDurationModalBody {
  gap: 10px;
  min-height: 0;
  overflow: hidden;
  padding: 12px !important;
}

.reportWorkerTaskDurationModalHeader {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  column-gap: 10px;
  display: grid;
}

.reportWorkerTaskDurationModalTitleBlock {
  gap: 0;
  min-width: 0;
  display: grid;
}

.reportWorkerTaskDurationModalTitleBlock .reportEditorDialogTitle {
  margin: 0;
  font-size: 17px;
  line-height: 1.05;
}

.reportWorkerTaskDurationModalValue {
  border-color: color-mix(in srgb, var(--focus), transparent 55%);
  background: color-mix(in srgb, var(--focus), white 94%);
  justify-content: center;
  justify-self: end;
  align-items: center;
  min-width: 74px;
  min-height: 28px;
  padding: 3px 8px;
  font-size: 12px;
  line-height: 1;
  display: inline-flex;
}

.reportWorkerTaskDurationModalValue .mono {
  letter-spacing: .01em;
  font-size: .95rem;
}

.reportWorkerTaskDurationPopoverWheels {
  grid-template-columns: 108px auto 108px;
  justify-content: center;
  align-items: stretch;
  gap: 10px;
  padding: 0;
  display: grid;
}

.reportWorkerTaskDurationWheelCol {
  justify-items: center;
  gap: 8px;
  min-height: 0;
  display: grid;
}

.reportWorkerTaskDurationWheelLabel {
  text-align: center;
  letter-spacing: .08em;
  font-size: 10px;
  line-height: 1;
}

.reportWorkerTaskDurationWheelDivider {
  color: color-mix(in srgb, var(--muted), var(--fg) 26%);
  align-self: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  transform: translateY(12px);
}

.reportWorkerTaskDurationWheelList {
  overscroll-behavior: contain;
  scrollbar-width: none;
  -ms-overflow-style: none;
  background: #fff;
  border: 0;
  border-radius: 0;
  gap: 4px;
  width: 108px;
  max-height: 176px;
  padding: 2px;
  scroll-padding-block: 52px;
  display: grid;
  overflow-y: auto;
}

.reportWorkerTaskDurationWheelList::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.reportWorkerTaskDurationWheelItem {
  width: 92px;
  min-height: 34px;
  color: var(--fg);
  font-family: var(--font-mono);
  text-align: center;
  background: none;
  border: 1px solid #0000;
  border-radius: 10px;
  padding: 6px 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.reportWorkerTaskDurationWheelItem.isSelected {
  border-color: color-mix(in srgb, var(--focus), transparent 40%);
  background: color-mix(in srgb, var(--focus), white 93%);
  color: color-mix(in srgb, var(--focus), black 22%);
}

.reportWorkerTaskDurationWheelItem:hover:not(:disabled) {
  background: color-mix(in srgb, var(--fg), transparent 95%);
}

.reportWorkerTaskDurationWheelItem:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--focus), transparent 24%);
  outline-offset: 1px;
}

.reportWorkerTaskDurationWheelItem:disabled {
  opacity: .34;
}

.reportWorkerTaskDurationPopoverActions {
  grid-template-columns: 84px minmax(0, 1fr);
  justify-content: end;
  gap: 10px;
  width: 100%;
  margin-top: 0;
  display: grid;
}

.reportWorkerTaskDurationPopoverActions .btn {
  width: 100%;
}

.reportWorkerTaskDurationCloseBtn {
  min-width: 0;
  min-height: 38px;
  padding: 0 12px !important;
}

.reportWorkerTaskDurationModalBackdrop {
  z-index: 120;
  padding: 16px;
}

.reportWorkerTaskDurationModal {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 6%);
  width: min(332px, 100vw - 32px);
  max-height: min(420px, 100dvh - 32px);
  box-shadow: 0 20px 48px color-mix(in srgb, var(--fg), transparent 82%);
  overflow: hidden;
}

.reportWorkerTaskStepBtn {
  min-width: 34px;
  min-height: 44px;
  padding: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}

.reportWorkerTaskNameField {
  position: relative;
}

.reportWorkerTaskNameInputShell {
  min-width: 0;
  position: relative;
}

.reportWorkerTaskNameControl {
  padding-right: 48px !important;
}

.reportWorkerTaskNameControl .portalSearchPickerTriggerChevron {
  margin-right: 32px;
}

.reportWorkerDictationField {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 7%);
  background: var(--surface);
  width: 100%;
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  padding: 4px 6px 4px 14px;
  transition: border-color .14s, box-shadow .14s, background-color .14s;
  display: flex;
  overflow: hidden;
  box-shadow: inset 0 1px #fff9;
}

.reportWorkerDictationField:focus-within {
  border-color: color-mix(in srgb, var(--focus), transparent 38%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 78%);
}

.reportWorkerDictationField.isError {
  border-color: color-mix(in srgb, var(--warn), transparent 25%);
}

.reportWorkerDictationField.isRecording {
  border-color: color-mix(in srgb, var(--focus), transparent 28%);
  background: color-mix(in srgb, var(--focus), transparent 96%);
}

.reportWorkerDictationField.isUploading, .reportWorkerDictationField.isQueued, .reportWorkerDictationField.isProcessing, .reportWorkerDictationField.isPermission {
  color: color-mix(in srgb, var(--focus), black 8%);
}

.reportWorkerDictationField.isFailed {
  border-color: color-mix(in srgb, var(--warn), transparent 40%);
}

.reportWorkerDictationInput {
  min-width: 0;
  height: 34px;
  color: var(--fg);
  font: inherit;
  background: none;
  border: 0;
  outline: 0;
  flex: auto;
  padding: 0;
  line-height: 1.2;
}

textarea.reportWorkerDictationInput {
  resize: none;
}

.reportWorkerDictationInput:disabled {
  cursor: not-allowed;
  color: color-mix(in srgb, var(--fg), transparent 28%);
  -webkit-text-fill-color: color-mix(in srgb, var(--fg), transparent 28%);
}

.reportWorkerDictationInput::placeholder {
  color: color-mix(in srgb, var(--muted), transparent 12%);
}

.reportWorkerDictationStatusMain {
  flex: auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.reportWorkerDictationStatusText {
  white-space: nowrap;
  min-width: max-content;
}

.reportWorkerDictationLiveDot {
  background: var(--focus);
  width: 8px;
  height: 8px;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--focus), transparent 84%);
  border-radius: 999px;
  flex: none;
}

.reportWorkerDictationWaveform {
  min-width: 92px;
  max-width: 560px;
  height: 28px;
  color: var(--focus);
  flex: 220px;
  align-items: center;
  gap: 2px;
  display: flex;
  overflow: hidden;
}

.reportWorkerDictationWaveform > span {
  opacity: .92;
  background: currentColor;
  border-radius: 999px;
  flex: 0 0 2px;
  width: 2px;
  height: 12px;
  animation: .9s ease-in-out infinite alternate reportWorkerTaskDictationWave;
}

.reportWorkerDictationWaveform > span:nth-child(2n) {
  height: 20px;
  animation-delay: -120ms;
}

.reportWorkerDictationWaveform > span:nth-child(3n) {
  height: 28px;
  animation-delay: -240ms;
}

.reportWorkerDictationWaveform > span:nth-child(4n) {
  height: 16px;
  animation-delay: -360ms;
}

.reportWorkerDictationWaveform > span:nth-child(5n) {
  height: 24px;
  animation-delay: -480ms;
}

.reportWorkerDictationWaveform > span:nth-child(7n) {
  height: 9px;
  animation-delay: -600ms;
}

.reportWorkerDictationWaveform > span:nth-last-child(-n+7) {
  opacity: .22;
}

.reportWorkerDictationActions {
  white-space: nowrap;
  flex: none;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.reportWorkerDictationHint {
  color: var(--muted);
  font-size: 13px;
}

.reportWorkerDictationMicBtn {
  width: 34px;
  height: 34px;
  color: color-mix(in srgb, var(--focus), black 6%);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  flex: none;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: background-color .14s, border-color .14s, color .14s, box-shadow .14s;
  display: inline-flex;
}

.reportWorkerDictationMicBtn svg, .reportWorkerTaskRemoveBtn svg, .reportWorkerDictationBadge svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 17px;
  height: 17px;
}

.reportWorkerDictationMicBtn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), transparent 92%);
  color: color-mix(in srgb, var(--focus), black 8%);
}

.reportWorkerDictationMicBtn:focus-visible, .reportWorkerDictationTextAction:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 74%);
  outline: none;
}

.reportWorkerDictationMicBtn:disabled {
  cursor: not-allowed;
  color: color-mix(in srgb, var(--focus), var(--muted) 18%);
  opacity: .72;
}

.reportWorkerDictationMicBtn.isRecording {
  background: color-mix(in srgb, var(--focus), transparent 89%);
  color: color-mix(in srgb, var(--focus), black 6%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--focus), transparent 35%);
}

.reportWorkerDictationMicBtn.isMuted {
  opacity: .44;
}

.reportWorkerDictationTextAction {
  min-height: 32px;
  color: color-mix(in srgb, var(--focus), black 6%);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  padding: 0 8px;
  font-size: 14px;
  font-weight: 600;
}

.reportReadOnlyTaskRetryButton {
  min-height: 44px;
}

.reportWorkerDictationTextAction:hover {
  background: color-mix(in srgb, var(--focus), transparent 92%);
}

.reportWorkerDictationTextAction.isNeutral {
  color: var(--fg);
}

.reportWorkerDictationTextAction.isNeutral:hover {
  background: color-mix(in srgb, var(--fg), transparent 94%);
}

.reportWorkerDictationDivider {
  background: color-mix(in srgb, var(--stroke), var(--fg) 5%);
  width: 1px;
  height: 24px;
}

.reportWorkerDictationBadge {
  border: 1px solid;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
}

.reportWorkerDictationBadge.isDone {
  color: color-mix(in srgb, var(--ok), black 16%);
  background: color-mix(in srgb, var(--ok), transparent 91%);
  border-color: color-mix(in srgb, var(--ok), transparent 50%);
}

.reportWorkerDictationBadge.isFailed {
  color: color-mix(in srgb, var(--danger), black 12%);
  background: color-mix(in srgb, var(--danger), transparent 93%);
  border-color: color-mix(in srgb, var(--danger), transparent 62%);
}

.portalSrOnly {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.portalAudioDictationTextareaField, .portalAudioDictationTextareaShell {
  min-width: 0;
  position: relative;
}

.portalAudioDictationTextarea {
  resize: vertical;
  width: 100%;
  min-height: 108px;
  padding-right: 56px !important;
}

.portalAudioDictationTextareaField.isPermission .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isRecording .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isUploading .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isProcessing .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isCompleted .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isFailed .portalAudioDictationTextarea {
  padding-top: 52px;
}

.portalAudioDictationTextareaField.isRecording .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isUploading .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isProcessing .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isPermission .portalAudioDictationTextarea {
  background: color-mix(in srgb, var(--focus), transparent 97%);
  border-color: color-mix(in srgb, var(--focus), transparent 48%);
}

.portalAudioDictationTextareaField.isFailed .portalAudioDictationTextarea {
  border-color: color-mix(in srgb, var(--danger), transparent 50%);
}

.portalAudioDictationMicButton {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 5%);
  background: color-mix(in srgb, var(--surface), var(--bg) 36%);
  width: 38px;
  height: 38px;
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
  cursor: pointer;
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: background-color .14s, border-color .14s, color .14s, box-shadow .14s;
  display: inline-flex;
  position: absolute;
  top: 10px;
  right: 10px;
}

.portalAudioDictationMicButton svg, .portalAudioDictationHeaderAction svg, .portalAudioDictationBadge svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 18px;
  height: 18px;
}

.portalAudioDictationMicButton:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--focus), transparent 55%);
  background: color-mix(in srgb, var(--focus), transparent 92%);
  color: color-mix(in srgb, var(--focus), black 8%);
}

.portalAudioDictationMicButton:focus-visible, .portalAudioDictationHeaderAction:focus-visible, .portalAudioDictationTextAction:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 74%);
  outline: none;
}

.portalAudioDictationMicButton:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.portalAudioDictationStatusBar {
  z-index: 1;
  border: 1px solid color-mix(in srgb, var(--focus), transparent 70%);
  background: color-mix(in srgb, var(--surface), var(--focus) 4%);
  min-height: 36px;
  color: color-mix(in srgb, var(--focus), black 7%);
  border-radius: 9px;
  align-items: center;
  gap: 8px;
  padding: 3px 6px 3px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  display: flex;
  position: absolute;
  top: 8px;
  left: 10px;
  right: 10px;
}

.portalAudioDictationStatusText {
  white-space: nowrap;
  text-overflow: ellipsis;
  flex: 0 auto;
  min-width: 0;
  overflow: hidden;
}

.portalAudioDictationLiveDot {
  background: var(--focus);
  width: 8px;
  height: 8px;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--focus), transparent 84%);
  border-radius: 999px;
  flex: none;
}

.portalAudioDictationSpinner {
  border: 2px solid color-mix(in srgb, var(--focus), transparent 76%);
  border-top-color: var(--focus);
  border-radius: 999px;
  flex: none;
  width: 13px;
  height: 13px;
  animation: .8s linear infinite reportWorkerTaskDictationSpin;
}

.portalAudioDictationReadOnlyStatus {
  border: 1px solid color-mix(in srgb, var(--focus), transparent 78%);
  background: color-mix(in srgb, var(--surface), var(--focus) 4%);
  max-width: 100%;
  color: color-mix(in srgb, var(--focus), black 7%);
  border-radius: 9px;
  align-items: center;
  gap: 8px;
  padding: 6px 9px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}

.portalAudioDictationReadOnlyStatus.isFailed {
  border-color: color-mix(in srgb, var(--danger), transparent 68%);
  background: color-mix(in srgb, var(--surface), var(--danger) 5%);
  color: color-mix(in srgb, var(--danger), black 12%);
}

.portalAudioDictationReadOnlyStatus.isFailed .portalAudioDictationSpinner {
  display: none;
}

.portalAudioDictationWaveform {
  min-width: 64px;
  height: 24px;
  color: var(--focus);
  flex: 120px;
  align-items: center;
  gap: 2px;
  display: flex;
  overflow: hidden;
}

.portalAudioDictationWaveform > span {
  opacity: .86;
  background: currentColor;
  border-radius: 999px;
  flex: 0 0 2px;
  width: 2px;
  height: 10px;
  animation: .9s ease-in-out infinite alternate reportWorkerTaskDictationWave;
}

.portalAudioDictationWaveform > span:nth-child(2n) {
  height: 18px;
  animation-delay: -120ms;
}

.portalAudioDictationWaveform > span:nth-child(3n) {
  height: 24px;
  animation-delay: -240ms;
}

.portalAudioDictationWaveform > span:nth-child(4n) {
  height: 14px;
  animation-delay: -360ms;
}

.portalAudioDictationWaveform > span:nth-last-child(-n+6) {
  opacity: .24;
}

.portalAudioDictationStatusSpacer {
  flex: auto;
  min-width: 12px;
}

.portalAudioDictationActions {
  white-space: nowrap;
  flex: none;
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.portalAudioDictationTextAction {
  min-height: 28px;
  color: color-mix(in srgb, var(--focus), black 6%);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  padding: 0 8px;
  font-size: 13px;
  font-weight: 600;
}

.portalAudioDictationTextAction:hover {
  background: color-mix(in srgb, var(--focus), transparent 92%);
}

.portalAudioDictationTextAction:disabled {
  cursor: not-allowed;
  opacity: .56;
}

.portalAudioDictationTextAction.isNeutral {
  color: var(--fg);
}

.portalAudioDictationTextAction.isNeutral:hover {
  background: color-mix(in srgb, var(--fg), transparent 94%);
}

.portalAudioDictationDivider {
  background: color-mix(in srgb, var(--stroke), var(--fg) 5%);
  width: 1px;
  height: 22px;
}

.portalAudioDictationBadge {
  white-space: nowrap;
  border: 1px solid;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  min-width: 0;
  min-height: 28px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.portalAudioDictationBadge span {
  text-overflow: ellipsis;
  overflow: hidden;
}

.portalAudioDictationBadge.isDone {
  color: color-mix(in srgb, var(--ok), black 16%);
  background: color-mix(in srgb, var(--ok), transparent 91%);
  border-color: color-mix(in srgb, var(--ok), transparent 50%);
}

.portalAudioDictationBadge.isFailed {
  color: color-mix(in srgb, var(--danger), black 12%);
  background: color-mix(in srgb, var(--danger), transparent 93%);
  border-color: color-mix(in srgb, var(--danger), transparent 62%);
}

.portalAudioDictationTextareaField.isToolbar {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.portalAudioDictationFieldHeader {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 32px;
  display: flex;
}

.portalAudioDictationFieldLabel {
  min-width: 0;
  margin: 0;
}

.portalAudioDictationHeaderActions {
  flex: 0 auto;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.portalAudioDictationHeaderAction {
  min-height: 34px;
  color: color-mix(in srgb, var(--focus), black 6%);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 0 4px;
  font-size: 14px;
  font-weight: 650;
  line-height: 1;
  display: inline-flex;
}

.portalAudioDictationHeaderAction:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), transparent 93%);
}

.portalAudioDictationHeaderAction:disabled {
  cursor: not-allowed;
  opacity: .52;
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationTextareaShell {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 7%);
  background: var(--surface);
  border-radius: 10px;
  transition: border-color .14s, box-shadow .14s, background-color .14s;
  overflow: hidden;
}

.portalAudioDictationTextareaField.isToolbar:focus-within .portalAudioDictationTextareaShell {
  border-color: color-mix(in srgb, var(--focus), transparent 35%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 78%);
}

.portalAudioDictationTextareaField.isToolbar.isRecording .portalAudioDictationTextareaShell, .portalAudioDictationTextareaField.isToolbar.isUploading .portalAudioDictationTextareaShell, .portalAudioDictationTextareaField.isToolbar.isProcessing .portalAudioDictationTextareaShell, .portalAudioDictationTextareaField.isToolbar.isPermission .portalAudioDictationTextareaShell {
  border-color: color-mix(in srgb, var(--focus), transparent 42%);
}

.portalAudioDictationTextareaField.isToolbar.isFailed .portalAudioDictationTextareaShell {
  border-color: color-mix(in srgb, var(--danger), transparent 46%);
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationTextarea {
  min-height: 116px;
  box-shadow: none !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 12px !important;
}

.portalAudioDictationTextareaField.isToolbar.isPermission .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isToolbar.isRecording .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isToolbar.isUploading .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isToolbar.isProcessing .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isToolbar.isCompleted .portalAudioDictationTextarea, .portalAudioDictationTextareaField.isToolbar.isFailed .portalAudioDictationTextarea {
  padding-top: 12px !important;
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationStatusBar {
  z-index: auto;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 20%);
  background: color-mix(in srgb, var(--focus), transparent 96%);
  border-radius: 0;
  min-height: 42px;
  padding: 6px 10px 6px 12px;
  font-size: 14px;
  font-weight: 500;
  position: static;
}

.portalAudioDictationTextareaField.isToolbar.isFailed .portalAudioDictationStatusBar {
  background: color-mix(in srgb, var(--danger), transparent 95%);
  color: color-mix(in srgb, var(--danger), black 10%);
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationBadge {
  min-height: 28px;
  font-weight: 650;
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationWaveform {
  flex-basis: 150px;
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationTextAction {
  min-height: 32px;
  font-size: 14px;
  font-weight: 600;
}

.portalAudioDictationTextareaField.isToolbar .portalAudioDictationStatusText {
  flex: none;
  font-weight: 500;
}

@media (max-width: 900px) {
  .loginMain {
    padding: 24px;
  }

  .loginCard {
    grid-template-columns: minmax(0, 1fr);
    width: min(640px, 100%);
    min-height: 0;
  }

  .portalPublicAuthBrandPanel {
    gap: 26px;
    padding: 30px 34px 26px;
  }

  .portalPublicAuthBrandLogoFrame {
    min-height: 46px;
    margin-bottom: 24px;
  }

  .portalPublicAuthBrandTitle {
    max-width: none;
    font-size: 34px;
  }

  .portalPublicAuthBrandDescription {
    max-width: 42ch;
    margin-top: 12px;
  }

  .portalPublicAuthAccessPanel {
    padding: 34px;
  }
}

@media (max-width: 760px) {
  .portalAudioDictationFieldHeader {
    min-height: 30px;
  }

  .portalAudioDictationHeaderAction {
    gap: 4px;
    min-height: 30px;
    padding-inline: 2px;
    font-size: 13px;
    font-weight: 650;
  }

  .portalAudioDictationHeaderAction svg {
    width: 15px;
    height: 15px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationStatusBar {
    gap: 4px;
    min-height: 36px;
    padding: 4px 6px;
    font-size: 13px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationTextAction {
    min-height: 30px;
    padding-inline: 5px;
    font-size: 13px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationWaveform {
    flex-basis: 46px;
    gap: 1.5px;
    min-width: 28px;
    height: 20px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationWaveform > span {
    flex-basis: 1.5px;
    width: 1.5px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationStatusText {
    font-size: 13px;
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationLiveDot {
    width: 7px;
    height: 7px;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 86%);
  }

  .portalAudioDictationTextareaField.isToolbar .portalAudioDictationDivider {
    height: 18px;
  }
}

.reportWorkerMobileTaskTrigger {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 7%);
  background: var(--surface);
  border-radius: 10px;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-height: 44px;
  padding: 4px;
  display: flex;
  overflow: hidden;
  box-shadow: inset 0 1px #ffffff94;
}

.reportWorkerMobileTaskTrigger.isError {
  border-color: color-mix(in srgb, var(--warn), transparent 25%);
}

.reportWorkerMobileTaskTrigger.isRecording {
  border-color: color-mix(in srgb, var(--focus), transparent 28%);
  background: color-mix(in srgb, var(--focus), transparent 96%);
}

.reportWorkerMobileTaskTrigger.isPermission, .reportWorkerMobileTaskTrigger.isUploading, .reportWorkerMobileTaskTrigger.isQueued, .reportWorkerMobileTaskTrigger.isProcessing {
  color: color-mix(in srgb, var(--focus), black 8%);
}

.reportWorkerMobileTaskTriggerMain {
  min-width: 0;
  min-height: 44px;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  flex: auto;
  align-items: center;
  padding: 0 6px;
  display: flex;
}

.reportWorkerMobileTaskTriggerMain:disabled {
  cursor: not-allowed;
}

.reportWorkerMobileTaskTriggerMain:focus-visible, .reportWorkerMobileTaskTriggerMic:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 74%);
  outline: none;
}

.reportWorkerMobileTaskTriggerText, .reportWorkerMobileTaskTriggerStatusText {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.reportWorkerMobileTaskTriggerText {
  color: var(--fg);
  font-size: 14px;
  line-height: 1.2;
}

.reportWorkerMobileTaskTriggerText.isPlaceholder {
  color: color-mix(in srgb, var(--muted), transparent 12%);
}

.reportWorkerMobileTaskTriggerStatus {
  width: 100%;
  min-width: 0;
  color: color-mix(in srgb, var(--focus), black 8%);
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.reportWorkerMobileTaskTriggerStatus.isFailed {
  color: color-mix(in srgb, var(--danger), black 12%);
}

.reportWorkerMobileTaskTriggerStatus svg, .reportWorkerMobileTaskTriggerBadge svg, .reportWorkerMobileTaskTriggerMic svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 16px;
  height: 16px;
}

.reportWorkerMobileTaskTrigger .reportWorkerDictationWaveform {
  flex: 52px;
  gap: 1px;
  min-width: 28px;
  max-width: 78px;
}

.reportWorkerMobileTaskTrigger .reportWorkerDictationWaveform > span:nth-child(n+13) {
  display: none;
}

.reportWorkerMobileTaskTriggerBadge {
  border: 1px solid color-mix(in srgb, var(--ok), transparent 54%);
  background: color-mix(in srgb, var(--ok), transparent 92%);
  max-width: min(112px, 28vw);
  min-height: 32px;
  color: color-mix(in srgb, var(--ok), black 16%);
  white-space: nowrap;
  border-radius: 8px;
  align-items: center;
  gap: 4px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  overflow: hidden;
}

.reportWorkerMobileTaskTriggerBadge span {
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}

.reportWorkerMobileTaskTriggerMic {
  width: 36px;
  min-width: 36px;
  height: 36px;
  color: color-mix(in srgb, var(--focus), black 6%);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex;
}

.reportWorkerMobileTaskTriggerMic:disabled {
  cursor: not-allowed;
  color: color-mix(in srgb, var(--focus), var(--muted) 18%);
  opacity: .72;
}

.reportWorkerMobileTaskTriggerMic:hover:not(:disabled) {
  background: color-mix(in srgb, var(--focus), transparent 92%);
  color: color-mix(in srgb, var(--focus), black 8%);
}

.reportWorkerMobileTaskTriggerMic.isRecording {
  background: color-mix(in srgb, var(--focus), transparent 89%);
  color: color-mix(in srgb, var(--focus), black 6%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--focus), transparent 35%);
}

.reportWorkerTaskNameDialogAction {
  justify-self: stretch;
  width: 100%;
  min-height: 48px;
}

.reportWorkerTaskNameDialogEntry {
  gap: 10px;
}

.reportWorkerTaskNameDialogResults {
  min-height: 160px;
}

.reportWorkerTaskDictationBtn {
  z-index: 2;
  width: 32px;
  height: 32px;
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: background-color .14s, border-color .14s, color .14s, box-shadow .14s;
  display: inline-flex;
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translateY(-50%);
}

.reportWorkerTaskDictationBtn svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 17px;
  height: 17px;
}

.reportWorkerTaskDictationBtn:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--focus), transparent 70%);
  background: color-mix(in srgb, var(--focus), transparent 91%);
  color: color-mix(in srgb, var(--focus), black 10%);
}

.reportWorkerTaskDictationBtn:focus-visible {
  border-color: color-mix(in srgb, var(--focus), transparent 38%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 76%);
  color: color-mix(in srgb, var(--focus), black 10%);
  outline: none;
}

.reportWorkerTaskDictationBtn:disabled {
  cursor: not-allowed;
  opacity: .48;
}

.reportWorkerTaskDictationBtn.isRecording {
  border-color: color-mix(in srgb, var(--danger), transparent 58%);
  background: color-mix(in srgb, var(--danger), transparent 90%);
  color: color-mix(in srgb, var(--danger), black 8%);
}

.reportWorkerTaskDictationStatus {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 4%);
  background: color-mix(in srgb, var(--surface), var(--focus) 4%);
  width: fit-content;
  max-width: 100%;
  min-height: 28px;
  color: var(--muted);
  border-radius: 999px;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 1.3;
  display: flex;
}

.reportWorkerTaskDictationStatus.isRecording {
  border-color: color-mix(in srgb, var(--danger), transparent 68%);
  background: color-mix(in srgb, var(--danger), transparent 93%);
  color: color-mix(in srgb, var(--danger), black 18%);
}

.reportWorkerTaskDictationStatus.isPending {
  border-color: color-mix(in srgb, var(--focus), transparent 72%);
  background: color-mix(in srgb, var(--focus), transparent 93%);
  color: color-mix(in srgb, var(--focus), black 18%);
}

.reportWorkerTaskDictationStatus.isFailed {
  border-color: color-mix(in srgb, var(--danger), transparent 70%);
  background: color-mix(in srgb, var(--danger), transparent 94%);
  color: color-mix(in srgb, var(--danger), black 18%);
}

.reportWorkerTaskDictationStatus.isDone {
  border-color: color-mix(in srgb, var(--ok), transparent 66%);
  background: color-mix(in srgb, var(--ok), transparent 91%);
  color: color-mix(in srgb, var(--ok), black 20%);
}

.reportWorkerTaskDictationPulse, .reportWorkerTaskDictationSpinner {
  border-radius: 999px;
  flex: none;
  width: 8px;
  height: 8px;
}

.reportWorkerTaskDictationPulse {
  box-shadow: 0 0 0 4px color-mix(in srgb, currentColor, transparent 82%);
  background: currentColor;
}

.reportWorkerTaskDictationSpinner {
  border: 2px solid color-mix(in srgb, currentColor, transparent 70%);
  border-top-color: currentColor;
  animation: .8s linear infinite reportWorkerTaskDictationSpin;
}

.reportWorkerDictationField .reportWorkerTaskDictationSpinner {
  width: 12px;
  height: 12px;
}

.reportWorkerTaskDictationStatusBtn {
  border-radius: 999px;
  min-height: 24px;
  padding: 2px 8px;
  font-size: 12px;
  line-height: 1.2;
}

@keyframes reportWorkerTaskDictationSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes reportWorkerTaskDictationWave {
  from {
    transform: scaleY(.72);
  }

  to {
    transform: scaleY(1.08);
  }
}

.reportWorkerTaskRemoveBtn {
  min-width: 44px;
  min-height: 44px;
  padding: 0;
}

.reportWorkerTaskRemoveBtn svg {
  width: 18px;
  height: 18px;
}

.reportWorkerTaskRow .input.isError {
  border-color: color-mix(in srgb, var(--warn), transparent 25%);
}

.reportWorkerAddTaskBtn {
  justify-self: start;
}

.reportWorkerTotalRow {
  grid-template-columns: minmax(0, 1fr) 160px 44px;
  align-items: end;
  gap: 8px;
  display: grid;
}

.reportWorkerTotalHoursCol {
  justify-items: end;
  gap: 2px;
  display: grid;
}

.reportWorkerTotalValue {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}

.reportWorkerSuggestHint {
  margin: 0;
}

.reportWorkerTicketsSectionBody {
  gap: 10px;
  display: grid;
}

.reportWorkerTicketsHead {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.reportWorkerTicketsHint {
  margin: 0;
}

.portalDialogBackdrop, .reportEditorDialogBackdrop, .portalUnsavedChangesDialogBackdrop {
  z-index: 1200;
  box-sizing: border-box;
  padding: max(16px, env(safe-area-inset-top, 0px))
    max(16px, env(safe-area-inset-right, 0px))
    max(16px, env(safe-area-inset-bottom, 0px))
    max(16px, env(safe-area-inset-left, 0px));
  overscroll-behavior: contain;
  background: color-mix(in srgb, var(--fg), transparent 64%);
  place-items: center;
  display: grid;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

dialog.portalDialogBackdrop, dialog.reportEditorDialogBackdrop, dialog.portalResponsiveSheetBackdrop {
  width: 100vw;
  max-width: none;
  height: 100dvh;
  max-height: none;
  color: inherit;
  border: 0;
  margin: 0;
  left: calc(50% - 50vw);
  right: auto;
}

dialog.portalResponsiveSheetBackdrop {
  box-sizing: border-box;
  padding: 0;
}

dialog.portalDialogBackdrop::backdrop, dialog.reportEditorDialogBackdrop::backdrop, dialog.portalResponsiveSheetBackdrop::backdrop {
  background: none;
}

.portalDialogCard, .reportEditorDialogCard, .portalUnsavedChangesDialogCard {
  width: min(520px, 100%);
  max-height: calc(100dvh - 32px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 6%);
  background: var(--bg-2);
  box-shadow: 0 18px 48px color-mix(in srgb, var(--fg), transparent 80%);
  border-radius: 12px;
  overflow: hidden;
}

.reportEditorDialogCardLeft {
  text-align: left;
}

.portalDialogBody, .reportEditorDialogBody, .portalUnsavedChangesDialogBody {
  min-height: 0;
  max-height: inherit;
  text-align: left;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  place-items: start stretch;
  gap: 14px;
  display: grid;
  overflow-y: auto;
}

.reportWorkerTaskDurationModal .portalDialogBody, .reportWorkerTaskDurationModal .reportEditorDialogBody {
  overflow: hidden;
}

.portalDialogTitle, .reportEditorDialogTitle, .portalUnsavedChangesDialogTitle {
  text-align: left;
  margin: 0;
  font-size: 20px;
  font-weight: 750;
  line-height: 1.2;
}

.portalDialogTitleLeft, .reportEditorDialogTitleLeft {
  justify-self: start;
}

.portalDialogMessage, .reportEditorDialogMessage, .portalUnsavedChangesDialogMessage {
  color: var(--muted);
  text-align: left;
  justify-self: start;
  margin: 0;
  line-height: 1.45;
}

.portalUnsavedChangesDialogBackdrop {
  z-index: 2200;
  padding: 18px;
}

.portalUnsavedChangesDialogCard {
  width: min(440px, 100%);
}

.portalUnsavedChangesDialogBody {
  gap: 12px;
}

.portalDialogActions, .reportEditorDialogActions, .portalUnsavedChangesDialogActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  width: 100%;
  margin-top: 2px;
  display: flex;
}

.portalDialogActions .btn, .reportEditorDialogActions .btn, .portalUnsavedChangesDialogActions .btn {
  min-height: 44px;
}

.portalSearchPickerBackdrop {
  padding: calc(var(--portal-search-picker-offset-top, 0px) + env(safe-area-inset-top) + 12px) 12px calc(env(safe-area-inset-bottom) + 12px);
  place-items: start stretch;
}

.portalSearchPickerCard {
  --portal-search-picker-shell-height: calc(var(--portal-search-picker-visible-height, 100dvh) - var(--portal-search-picker-offset-top, 0px) - env(safe-area-inset-bottom) - 24px);
  width: min(100%, 640px);
  height: var(--portal-search-picker-shell-height);
  max-height: var(--portal-search-picker-shell-height);
  min-height: 0;
  box-shadow: var(--shadow-2);
  border-radius: 18px 18px 12px 12px;
  flex-direction: column;
  margin-inline: auto;
  display: flex;
  overflow: hidden;
}

.portalSearchPickerBody {
  block-size: 100%;
  flex: auto;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 10px;
  min-height: 0;
  display: grid;
  overflow: hidden;
}

.portalSearchPickerHeader {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.portalSearchPickerTitleWrap {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.portalSearchPickerTitle {
  margin: 0;
}

.portalSearchPickerCloseBtn {
  white-space: nowrap;
  min-height: 44px;
}

.portalSearchPickerEntryPanel {
  gap: 8px;
  display: grid;
}

.portalSearchPickerUseTypedBtn {
  width: 100%;
  min-height: 48px;
}

.portalSearchPickerResults {
  block-size: 100%;
  overscroll-behavior: contain;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
  grid-auto-rows: max-content;
  align-content: start;
  align-items: start;
  gap: 8px;
  min-height: 0;
  padding-right: 2px;
  display: grid;
  overflow: hidden auto;
}

.portalSearchPickerDialogAction {
  justify-self: start;
  min-height: 44px;
}

.portalSearchPickerOption {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--focus) 14%);
  width: 100%;
  min-height: 60px;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  padding: 12px 14px;
  transition: border-color .14s, box-shadow .14s, background-color .14s;
  display: grid;
}

.portalSearchPickerOption:hover {
  border-color: color-mix(in srgb, var(--focus), var(--stroke) 36%);
  background: color-mix(in srgb, #fff, var(--focus) 4%);
}

.portalSearchPickerOption:focus-visible {
  border-color: color-mix(in srgb, var(--focus), black 10%);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--focus), transparent 76%);
  outline: none;
}

.portalSearchPickerOption.isSelected {
  border-color: color-mix(in srgb, var(--focus), transparent 38%);
  background: color-mix(in srgb, var(--focus), white 94%);
}

.portalSearchPickerOption.isSpecial {
  border-color: color-mix(in srgb, var(--focus), var(--stroke) 36%);
  background: color-mix(in srgb, var(--focus), white 92%);
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--focus), black 8%);
}

.portalSearchPickerOptionCode {
  min-width: 0;
  font-family: var(--font-mono);
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  font-size: 13px;
  line-height: 1.2;
}

.portalSearchPickerOptionName {
  overflow-wrap: anywhere;
  grid-column: 1;
  min-width: 0;
  font-size: 15px;
  line-height: 1.3;
}

.portalSearchPickerOptionDescription {
  min-width: 0;
  color: var(--muted);
  overflow-wrap: anywhere;
  grid-column: 1;
  font-size: 13px;
  line-height: 1.3;
}

.portalSearchPickerOptionSimple {
  grid-template-columns: minmax(0, 1fr);
}

.portalSearchPickerOptionSimpleMain {
  overflow-wrap: anywhere;
  min-width: 0;
  font-size: 15px;
  line-height: 1.35;
}

.portalSearchPickerOptionCheck {
  color: color-mix(in srgb, var(--focus), black 14%);
  grid-area: 1 / 2 / span 2;
  align-self: center;
  font-size: 18px;
  font-weight: 900;
}

.portalSearchPickerEmpty {
  text-align: center;
  place-items: center;
  min-height: 56px;
  display: grid;
}

.homeTrackerPrivacyBody {
  gap: 10px;
  display: grid;
}

.homeTrackerPrivacyBody p {
  margin: 0;
}

.homeTrackerPrivacyBody strong {
  color: var(--fg);
  font-weight: 800;
}

.reportEditorDialogActions {
  justify-content: flex-end;
  gap: 10px;
  display: flex;
}

.reportDeleteDialogCard {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 6%);
  width: min(560px, 100%);
  box-shadow: 0 16px 40px color-mix(in srgb, var(--fg), transparent 82%);
}

.reportDeleteDialogBody {
  text-align: left;
  align-items: start;
  gap: 10px;
}

.reportDeleteDialogTitle {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}

.reportDeleteDialogActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.reportDeleteDialogActions .btn {
  min-height: 44px;
}

.reportDeleteDialogActions .btnDanger {
  min-width: 136px;
}

.timesheetBulkFooter {
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.timesheetBulkApplyBtn:disabled {
  color: color-mix(in srgb, var(--fg), var(--muted) 42%);
  background: color-mix(in srgb, var(--focus), white 72%);
  border-color: color-mix(in srgb, var(--stroke), var(--focus) 18%);
}

.timesheetBulkFooterStatus {
  margin-right: auto;
}

.timesheetSubmitRow {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.timesheetSubmitActions {
  justify-content: flex-end;
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.timesheetDayOffRequestBody, .timesheetDayOffListBody {
  gap: 14px;
  display: grid;
}

.timesheetDayOffListTitle, .timesheetDayOffEmergencyNote {
  margin: 0;
}

.timesheetDayOffSummary {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--bg-2), white 72%);
  grid-template-columns: minmax(180px, .72fr) minmax(260px, 1fr);
  gap: 0;
  display: grid;
  overflow: hidden;
}

.timesheetDayOffMetric {
  background: none;
  border: 0;
  border-radius: 0;
  align-content: center;
  gap: 4px;
  min-height: 88px;
  padding: 14px 16px;
  display: grid;
}

.timesheetDayOffMetric + .timesheetDayOffMetric {
  border-left: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
}

.timesheetDayOffMetricLabel {
  color: color-mix(in srgb, var(--muted), var(--fg) 10%);
  letter-spacing: .055em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.timesheetDayOffMetricValue {
  color: var(--fg);
  align-items: baseline;
  gap: 7px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.05;
  display: flex;
}

.timesheetDayOffMetricDivider {
  color: var(--muted);
  font-size: 17px;
  font-weight: 600;
}

.timesheetDayOffMetricNote {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.3;
}

.timesheetDayOffEmergencyNote {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 12%);
  background: color-mix(in srgb, var(--bg-2), white 58%);
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.35;
}

.timesheetDayOffRequestRow {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  display: grid;
}

.timesheetDayOffRequestActions {
  justify-content: flex-end;
  align-items: end;
  gap: 10px;
  display: flex;
}

.timesheetDayOffTable {
  min-width: 820px;
}

.timesheetDayOffTableWrap {
  display: block;
}

.timesheetDayOffTable td {
  vertical-align: middle;
}

.timesheetDayOffTable th:first-child, .timesheetDayOffTable td:first-child {
  white-space: nowrap;
  width: 132px;
}

.timesheetDayOffTable th:nth-child(2), .timesheetDayOffTable td:nth-child(2) {
  width: 136px;
}

.timesheetDayOffTableActionsCell {
  text-align: right;
  width: 120px;
}

.timesheetDayOffCancelBtn {
  min-width: 88px;
  min-height: 44px;
  padding: 0 12px;
}

.timesheetDayOffViewReasonBtn {
  min-width: 76px;
}

.pillStatusCancelled {
  border-color: color-mix(in srgb, var(--stroke), var(--fg) 7%);
  background: color-mix(in srgb, var(--bg-2), white 28%);
  color: color-mix(in srgb, var(--muted), var(--fg) 26%);
}

.timesheetDayOffHistory {
  gap: 8px;
  display: grid;
}

.timesheetDayOffMobileHistory {
  display: none;
  container: portal-day-off-history / inline-size;
}

.timesheetDayOffMobileRow {
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  gap: 10px;
  padding: 13px 14px;
  display: grid;
}

.timesheetDayOffMobileRow:last-child {
  border-bottom: 0;
}

.timesheetDayOffMobileRowTop {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.timesheetDayOffMobileDate {
  color: var(--fg);
  font-size: 15px;
  font-weight: 700;
}

.timesheetDayOffMobileMeta {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
  margin: 0;
  display: grid;
}

.timesheetDayOffMobileMeta > div {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.timesheetDayOffMobileMeta dt {
  color: var(--muted);
  letter-spacing: .035em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
}

.timesheetDayOffMobileMeta dd {
  min-width: 0;
  color: color-mix(in srgb, var(--fg), var(--muted) 14%);
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 12px;
}

.timesheetDayOffMobileAction:empty {
  display: none;
}

@container portal-day-off-history (max-width: 12rem) {
  .timesheetDayOffMobileMeta {
    grid-template-columns: minmax(0, 1fr);
  }

  .timesheetDayOffMobileAction .btn {
    width: 100%;
  }
}

.timesheetDayOffEmptyValue {
  align-items: center;
  min-height: 34px;
  display: inline-flex;
}

.timesheetDayOffEmptyValueAction {
  justify-content: flex-end;
  width: 100%;
}

.timesheetDayOffReasonModalCard {
  width: min(560px, 100%);
}

.timesheetDayOffReasonModalBody {
  gap: 10px;
}

.timesheetDayOffReasonModalTitle {
  margin: 0;
}

.timesheetDayOffReasonModalLabel {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0;
  font-size: 12px;
}

.timesheetDayOffReasonModalText {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  line-height: 1.4;
}

.reportCreateDialogActions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  display: flex;
}

.reportEditorSuggestPopover {
  max-width: calc(100vw - 24px);
}

.reportEditorSuggestPopoverFloating {
  z-index: 65;
  max-height: 260px;
  position: fixed;
  right: auto;
}

.reportEditorSuggestPopover .cmPopoverList {
  max-height: min(320px, 42vh);
}

.reportEditorSuggestState {
  padding: 4px 2px;
  font-size: 12px;
}

.reportEditorSuggestOptionMain {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  display: flex;
}

.reportEditorSuggestOptionName {
  font-size: 14px;
}

.reportEditorSuggestOptionMeta {
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 760px) {
  .portalSearchPickerMobileOnly {
    display: block;
  }

  .portalSearchPickerDesktopOnly {
    display: none;
  }

  .loginMain {
    place-items: stretch stretch;
    width: 100%;
    height: 100dvh;
    min-height: 0;
    padding: 0;
    overflow: hidden;
  }

  .loginCard {
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    grid-template-rows: auto minmax(0, 1fr);
  }

  .portalPublicAuthBrandPanel {
    padding: max(10px, env(safe-area-inset-top))
      max(18px, env(safe-area-inset-right))
      10px
      max(18px, env(safe-area-inset-left));
    grid-template-columns: minmax(0, 1fr) auto;
    align-content: center;
    align-items: center;
    gap: 14px;
  }

  .portalPublicAuthBrandContent {
    align-items: center;
    gap: 11px;
    min-width: 0;
    display: flex;
  }

  .portalPublicAuthBrandLogoFrame {
    flex: none;
    min-height: 44px;
    margin: 0;
    padding: 6px 9px;
  }

  .loginBrandLogo {
    height: 22px !important;
  }

  .portalPublicAuthBrandName, .portalPublicAuthBrandDescription {
    display: none;
  }

  .portalPublicAuthBrandTitle {
    letter-spacing: -.02em;
    min-width: 0;
    max-width: none;
    font-size: 20px;
    line-height: 1.08;
  }

  .portalPublicAuthAccessPanel {
    min-height: 0;
    padding: clamp(24px, 4dvh, 40px)
      max(20px, env(safe-area-inset-right))
      max(20px, env(safe-area-inset-bottom))
      max(20px, env(safe-area-inset-left));
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    align-content: start;
    justify-items: center;
    overflow-y: auto;
  }

  .portalPublicAuthHeader, .portalPublicAuthSupplement, .portalPublicAuthBody {
    justify-self: center;
    width: min(100%, 520px);
  }

  .portalPublicAuthHeader {
    gap: 12px;
  }

  .loginTitle {
    font-size: 27px;
  }

  .loginSubtitle {
    font-size: 13px;
  }

  .portalPublicAuthSupplement {
    margin-top: 16px;
  }

  .portalPublicAuthBody {
    margin-top: 20px;
  }

  .loginHelpRow {
    margin-top: 6px;
  }

  .loginSubmitRow {
    margin-top: 10px;
  }

  .loginUtilityGroup {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    font-size: .8125rem;
  }

  .loginUtilityLink, .loginUtilityRoute {
    min-height: 44px;
  }

  .loginUtilityLink {
    white-space: nowrap;
    width: fit-content;
  }

  .loginUtilityRoute {
    white-space: nowrap;
    grid-column: 1;
    padding: 0;
  }

  .loginUtilityRouteHint {
    display: none;
  }

  .loginUtilityRoute > .loginQuietLink {
    align-items: center;
    min-height: 44px;
    display: inline-flex;
  }

  .loginBuildVersion {
    white-space: nowrap;
    align-self: center;
    margin: 0;
    font-size: .6875rem;
  }

  .timesheetMonthGrid, .timesheetWeekdaysRow {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .timesheetMonthGrid {
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 2px 0 !important;
  }

  .timesheetMonthGridWrap {
    justify-self: center;
    width: 100%;
    min-width: 308px;
    max-width: calc(100vw - 12px);
    padding-bottom: 0;
    overflow: visible;
    container: timesheet-month-grid / inline-size;
  }

  .timesheetMonthGrid > * {
    min-width: 0;
    max-width: 100%;
  }

  @container timesheet-month-grid (min-width: 320px) {
    .timesheetMonthGrid {
      column-gap: 2px !important;
    }
  }

  @container timesheet-month-grid (min-width: 332px) {
    .timesheetMonthGrid {
      gap: 4px !important;
    }
  }

  .timesheetCalendarDayLink {
    min-width: 44px;
    overflow: hidden;
  }

  .calendarCell {
    aspect-ratio: 1;
    min-height: 44px;
  }

  .timesheetMonthCardBody {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px !important;
  }

  .timesheetWeekday {
    font-size: 11px !important;
  }

  .timesheetCellContent {
    height: 100%;
    display: block;
    position: relative;
    gap: 3px !important;
    min-height: 100% !important;
    padding: 4px !important;
  }

  .timesheetCellPrimary {
    gap: 2px;
    max-width: calc(100% - 12px);
  }

  .timesheetDayPlaceholder {
    aspect-ratio: 1;
    height: auto;
    min-height: 44px;
  }

  .timesheetCellDayNum {
    font-size: 12px;
  }

  .timesheetCellDayNumToday:before {
    width: 18px;
    height: 18px;
  }

  .timesheetCellDayNumToday {
    color: #fff;
    font-weight: 700;
  }

  .timesheetCellHint {
    letter-spacing: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    pointer-events: none;
    max-width: calc(100% - 8px);
    font-size: 9px;
    line-height: 1;
    display: block;
    position: absolute;
    bottom: 3px;
    left: 4px;
    right: auto;
    overflow: hidden;
  }

  .timesheetCellHint--withHours {
    max-width: calc(100% - 28px);
  }

  .timesheetCellHours {
    text-align: right;
    font-size: 10px;
    position: absolute;
    bottom: 3px;
    right: 4px;
  }

  .timesheetCellSelectMark {
    width: 12px;
    height: 12px;
    font-size: 9px;
    top: 4px;
    bottom: auto;
    right: 4px;
  }

  .timesheetCellLock {
    width: 10px;
    height: 10px;
    top: 4px;
    right: 4px;
  }

  .timesheetCellContentLocked .timesheetCellHeader {
    padding-right: 12px;
  }

  .timesheetCellHeader {
    column-gap: 2px;
  }

  .timesheetCellHoursFull {
    display: none;
  }

  .timesheetCellHoursCompact, .timesheetCellHintShort {
    display: inline;
  }

  .timesheetCellHintFull, .timesheetLegendGroups--desktop {
    display: none;
  }

  .timesheetLegendDetails {
    display: block;
  }

  .timesheetLegendPanel .timesheetLegendRow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: grid;
    gap: 8px 10px !important;
  }

  .timesheetLegendItem {
    grid-template-columns: 10px minmax(0, 1fr);
    align-items: start;
    column-gap: 7px;
  }

  .timesheetLegendSwatch {
    width: 10px;
    height: 10px;
    margin-top: 2px;
  }

  .timesheetLegendLabel {
    font-size: 11px;
    line-height: 1.2;
  }

  .dayEditorTopRow {
    grid-template-columns: 1fr;
  }

  .timesheetBulkCard .cardBody {
    padding: 10px !important;
  }

  .timesheetBulkCardBody {
    gap: 10px !important;
  }

  .timesheetBulkSelectedInput {
    min-width: 116px !important;
  }

  .timesheetTipPill {
    width: 100%;
    color: color-mix(in srgb, var(--muted), var(--fg) 24%);
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    column-gap: 8px;
    padding: 8px 10px;
    font-size: 12px;
    line-height: 1.35;
    display: grid;
    background: color-mix(in srgb, var(--bg-2), white 42%) !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 6px !important;
  }

  .timesheetTipIcon {
    color: color-mix(in srgb, var(--muted), var(--fg) 20%);
    font-size: 11px;
    line-height: 1.1;
  }

  .timesheetTipText {
    min-width: 0;
    line-height: 1.35;
  }

  .portalPageHeaderCard {
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
  }

  .portalPageHeaderCard > .cardBody {
    padding: 8px 0 !important;
  }

  .portalPageHero {
    flex-direction: row;
    min-height: auto;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .notificationSettingsHero {
    flex-direction: column;
  }

  .timesheetDayPageHeaderBody {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 2px 2px 0 !important;
  }

  .timesheetDayPageHeaderBack {
    min-height: 28px;
    color: color-mix(in srgb, var(--fg), white 34%);
    order: 1;
    justify-self: start;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
  }

  .timesheetDayPageHeaderTitle {
    letter-spacing: .005em;
    order: 2;
    font-size: clamp(18px, 5.1vw, 20px);
    line-height: 1.16;
  }

  .timesheetDayPageHeaderCard {
    margin-bottom: 0;
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
  }

  .timesheetDayPageHeaderCard.isFlat {
    margin-bottom: 0;
  }

  .timesheetDayPageHeaderBack:hover, .timesheetDayPageHeaderBack:focus-visible {
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
  }

  .portalPageHeroTitle, .reportCreateTitle {
    font-weight: 700;
    line-height: 1.2;
    font-size: 24px !important;
  }

  .timesheetMonthHeaderPill {
    width: fit-content;
  }

  .timesheetBulkHeader {
    grid-template-columns: 1fr;
    gap: 10px;
    display: grid !important;
  }

  .timesheetBulkHeaderActions {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
    gap: 8px;
    justify-content: stretch !important;
    display: grid !important;
  }

  .timesheetBulkHeaderOpen {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions {
    grid-template-columns: auto auto;
    align-self: start;
    align-items: start;
    gap: 6px;
    justify-content: end !important;
    display: inline-grid !important;
  }

  .timesheetBulkHeaderActionsClosed {
    grid-template-columns: 1fr !important;
  }

  .timesheetBulkHeaderActions .timesheetBulkSelectedInput {
    flex: auto;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 14px;
    font-weight: 600;
    min-width: 0 !important;
  }

  .timesheetBulkHeaderActions .timesheetBulkSelectedInput .mono {
    margin-left: 0;
  }

  .timesheetBulkHeaderActions .timesheetBulkToggleBtn {
    flex: auto;
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedInput {
    white-space: nowrap;
    border-color: color-mix(in srgb, var(--stroke), transparent 24%);
    justify-content: center;
    gap: 6px;
    width: auto;
    min-height: 36px;
    padding: 0 11px;
    font-size: 14px;
    font-weight: 500;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedLabelFull {
    display: none;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedLabelShort {
    color: var(--muted);
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    display: inline;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkSelectedInput .mono {
    color: var(--muted);
    letter-spacing: 0;
    margin-left: 0;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn, .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn:hover, .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn:active {
    border-radius: var(--radius);
    border-color: color-mix(in srgb, var(--stroke), transparent 24%);
    width: 36px;
    min-width: 36px;
    min-height: 36px;
    box-shadow: none;
    background: #fff;
    flex: 0 0 36px;
    font-size: 0;
    line-height: 1;
    padding: 0 !important;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkCloseText {
    display: none;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions .timesheetBulkToggleBtn:before {
    content: "×";
    color: var(--fg);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    display: inline-block;
    transform: translateY(-.5px);
  }

  .timesheetBulkTwoCol, .timesheetBulkIntervalRow {
    grid-template-columns: 1fr !important;
  }

  .timesheetBulkFlags {
    gap: 10px;
    display: grid !important;
  }

  .dayEditorModeSwitch.timesheetBulkModeSwitch {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
    max-width: none;
  }

  .dayEditorModeSwitch.timesheetBulkModeSwitch .dayEditorModeBtn {
    min-width: 0;
    font-size: clamp(14px, 3.8vw, 16px);
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .timesheetBulkInlineCheck {
    width: 100%;
  }

  .timesheetBulkResult {
    gap: 4px;
    display: grid;
  }

  .timesheetBulkFooter {
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100%;
    display: grid;
  }

  .timesheetBulkFooterStatus {
    width: fit-content;
    margin-right: 0;
  }

  .timesheetBulkFooter .btn {
    width: 100%;
  }

  .timesheetSubmitRow {
    padding-inline: 10px;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .timesheetSubmitConfirmBody .timesheetSubmitActions {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: 100%;
    margin-left: 0;
    display: grid;
  }

  .timesheetSubmitRow .timesheetSubmitActions {
    grid-template-columns: 1fr;
    width: 100%;
    margin-left: 0;
    display: grid;
  }

  .timesheetSubmitRow .btn, .timesheetSubmitConfirmBody .timesheetSubmitActions .btn, .timesheetSubmitRow .timesheetSubmitPrimaryBtn {
    width: 100%;
    min-width: 0 !important;
  }

  .timesheetDayOffRequestActions {
    grid-template-columns: 1fr;
    display: grid;
  }

  .timesheetDayOffSummary {
    grid-template-columns: minmax(0, 1fr);
  }

  .timesheetDayOffMetric + .timesheetDayOffMetric {
    border-left: 0;
    border-top: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  }

  .timesheetDayOffMetric {
    min-height: 72px;
    padding: 10px 11px;
  }

  .timesheetDayOffMetricValue {
    font-size: 22px;
  }

  .timesheetDayOffRequestRow {
    grid-template-columns: 1fr;
  }

  .timesheetDayOffRequestActions .btn {
    width: 100%;
  }

  .timesheetDayOffTable {
    table-layout: fixed;
    width: 100%;
    min-width: 0;
  }

  .timesheetDayOffTable th:nth-child(3), .timesheetDayOffTable td:nth-child(3), .timesheetDayOffTable th:nth-child(4), .timesheetDayOffTable td:nth-child(4) {
    display: none;
  }

  .timesheetDayOffTable th:first-child, .timesheetDayOffTable td:first-child {
    width: 44%;
    padding-left: 8px;
    padding-right: 6px;
  }

  .timesheetDayOffTable th:nth-child(2), .timesheetDayOffTable td:nth-child(2) {
    width: 28%;
    padding-left: 6px;
    padding-right: 6px;
  }

  .timesheetDayOffTable th:nth-child(5), .timesheetDayOffTable td:nth-child(5) {
    width: 28%;
    padding-left: 5px;
    padding-right: 5px;
  }

  .timesheetDayOffTable thead th, .timesheetDayOffTable tbody td {
    font-size: clamp(12px, 3.2vw, 13px);
  }

  .timesheetDayOffTable td .pill {
    min-height: 32px;
    padding: 0 clamp(6px, 2vw, 8px);
    font-size: clamp(12px, 3.1vw, 13px);
  }

  .timesheetDayOffTableActionsCell .btn {
    min-width: 0;
    min-height: 44px;
    padding: 0 clamp(6px, 2vw, 10px);
    font-size: clamp(12px, 3.1vw, 13px);
  }

  .timesheetDayOffTableActionsCell .timesheetDayOffCancelBtn {
    min-width: clamp(62px, 20vw, 72px);
    padding: 0 clamp(6px, 1.8vw, 8px);
  }

  .timesheetDayOffTableActionsCell {
    text-align: right;
    white-space: nowrap;
  }

  .timesheetDayOffDesktopHistory {
    display: none;
  }

  .timesheetDayOffMobileHistory {
    display: grid;
  }

  .timesheetDayOffListBody {
    gap: 0;
    padding: 0;
  }

  .timesheetSubmitMonthHeading {
    font-size: clamp(20px, 6vw, 24px);
  }

  .timesheetSubmitSimpleSummary {
    gap: 6px;
    display: grid;
  }

  .timesheetSubmitConfirmInlineCheck {
    font-size: 14px;
    line-height: 1.3;
  }

  .dayEditorModeSwitch, .dayEditorAbsenceField {
    max-width: none;
  }

  .dayEditorTopToast {
    top: calc(env(safe-area-inset-top) + 74px);
    width: calc(100vw - 20px);
    padding: 8px 10px;
  }

  .dayEditorTopToast.dayEditorTopToast--success {
    top: auto;
    bottom: calc(env(safe-area-inset-bottom) + 56px);
    width: auto;
    max-width: calc(100vw - 24px);
    min-height: 34px;
    box-shadow: 0 10px 22px color-mix(in srgb, var(--fg), transparent 84%);
    border-radius: 999px;
    gap: 8px;
    padding: 6px 8px;
  }

  .dayEditorTopToast.dayEditorTopToast--success .dayEditorTopToastMessage {
    white-space: nowrap;
    font-size: 12px;
    line-height: 1.2;
  }

  .dayEditorTopToast.dayEditorTopToast--success .dayEditorTopToastActions {
    gap: 4px;
  }

  .dayEditorTopToast.dayEditorTopToast--success .dayEditorTopToastAction {
    min-height: 24px;
    color: color-mix(in srgb, var(--fg), black 12%);
    text-underline-offset: 2px;
    font-size: 11px;
    font-weight: 600;
    text-decoration: underline;
    box-shadow: none !important;
    background: none !important;
    border: 0 !important;
    padding: 1px 4px !important;
  }

  .dayEditorTopToast.dayEditorTopToast--success .dayEditorTopToastClose {
    width: 24px;
    min-width: 24px;
    min-height: 24px;
    font-size: 16px;
  }

  .dayEditorTopToastAction {
    min-height: 28px;
    font-size: 11px;
    padding: 4px 8px !important;
  }

  .dayEditorAbsenceOptionGrid {
    grid-template-columns: 1fr;
  }

  .dayEditorTotalInfoRow {
    background: color-mix(in srgb, var(--bg-2), white 62%);
    border-color: color-mix(in srgb, var(--stroke), transparent 22%);
    min-height: 40px;
    padding: 7px 10px;
  }

  .dayEditorTotalInfoLabel, .dayEditorTotalInfoValue {
    color: color-mix(in srgb, var(--muted), var(--fg) 8%);
  }

  .dayEditorTotalInfoLabel {
    font-size: 12px;
  }

  .dayEditorIntervalRow {
    grid-template-columns: 1fr 1fr auto !important;
    gap: 8px !important;
  }

  .dayEditorIntervalLabels {
    display: none;
  }

  .dayEditorTimeclockReviewHeader, .dayEditorTimeclockReviewRowPrimary {
    align-items: flex-start;
  }

  .dayEditorIntervalRemove {
    grid-column: auto;
    width: 52px;
    min-width: 52px;
    min-height: 44px;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .dayEditorAddInterval {
    width: 100%;
    min-height: 44px;
  }

  .dayEditorFooter {
    flex-direction: column;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .dayEditorFooterActions {
    grid-template-columns: 1fr 1fr;
    gap: 6px 10px;
    display: grid !important;
  }

  .dayEditorFooterActions .btn {
    width: 100%;
    min-height: 44px;
    min-width: 0 !important;
  }

  .dayEditorFooterAbsence .dayEditorFooterActions {
    grid-template-columns: 1fr;
  }

  .portalFormActions, .reportEditorTopActions, .reportEditorTopActionsInline, .reportEditorTopActionGroup, .reportCreateActions, .reportSubmitActions {
    flex-direction: column;
    gap: 10px;
    width: 100%;
    display: flex;
    align-items: stretch !important;
  }

  .portalFormActions .btn, .reportEditorTopActions .btn, .reportEditorTopActionsInline .btn, .reportEditorTopActionGroup .btn, .reportCreateActions .btn, .reportSubmitActions .btn {
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }

  .reportSubmitRequirementsBody {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .reportSubmitReqHeader {
    align-items: flex-start !important;
  }

  .portalFeedbackToastHost {
    top: calc(env(safe-area-inset-top) + 10px);
    justify-items: end;
    width: calc(100vw - 24px);
    display: grid;
    bottom: auto;
    left: auto;
    right: 12px;
    transform: none;
  }

  .portalFeedbackToast {
    gap: 7px;
    width: 100%;
    min-height: 40px;
    padding: 8px 10px;
  }

  .portalFeedbackToastMessage {
    font-size: 12px;
    line-height: 1.2;
  }

  .portalFeedbackToastAction {
    min-height: 26px;
    font-size: 11px;
    padding: 3px 7px !important;
  }

  .portalFeedbackToastClose {
    width: 24px;
    min-width: 24px;
    min-height: 24px;
    font-size: 16px;
  }

  .portalUpdateBanner {
    bottom: calc(env(safe-area-inset-bottom) + 74px);
    flex-direction: column;
    align-items: stretch;
    padding: 11px 12px 12px;
  }

  .portalUpdateBannerAction {
    width: 100%;
    margin-left: 0;
  }

  .reportSubmitMissingPill {
    justify-content: center;
    min-width: 56px;
  }

  .reportSubmitReadyPill {
    gap: 6px;
  }

  .reportSubmitReadyMark {
    width: 14px;
    height: 14px;
    font-size: 10px;
  }

  .reportSubmitReqItem {
    width: 100%;
    gap: 7px !important;
    padding: 6px 8px !important;
  }

  .reportSubmitReqText {
    font-size: 12px !important;
  }

  .reportSubmitConfirm {
    margin-left: 18px;
    font-size: 14px;
    gap: 8px !important;
  }

  .timesheetSubmitConfirmCheck input[type="checkbox"], .reportCreateDialogOption input[type="checkbox"], .reportSubmitConfirm input[type="checkbox"] {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin: 0;
  }

  .cardBody.portalMobileActionCard {
    gap: 10px;
    padding: 14px;
  }

  main.portalMobilePageStack {
    gap: 8px;
  }

  .portalMobileHeaderPolicyMain {
    display: none;
  }

  .cardBody.portalMobileListCard {
    gap: 8px;
    padding: 10px;
  }

  .reportListTableWrap {
    display: none;
  }

  .reportListPager {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }

  .reportListPagerText {
    justify-content: space-between;
    gap: 8px;
    width: 100%;
  }

  .reportListPagerActions {
    flex-wrap: nowrap;
    justify-content: center;
    gap: 8px;
    width: 100%;
    display: inline-flex;
  }

  .reportListPagerNumbers {
    flex-wrap: nowrap;
    flex: none;
  }

  .reportListPagerBtn {
    min-width: 44px;
    height: 44px;
  }

  .reportListPagerEllipsis, .reportListPagerNumber:not(.isCurrent) {
    display: none;
  }

  .reportListPagerNumber.isCurrent {
    pointer-events: none;
  }

  .timesheetDayOffTableWrap {
    display: block;
  }

  .reportListMobile {
    gap: 0;
    display: grid;
  }

  .reportListMobileItem {
    align-items: center;
    padding: 10px;
  }

  .reportListSiteName {
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
  }

  .reportListTableWorkedHeader, .reportListTableWorkedCell {
    width: auto;
  }

  .reportListMobileMain {
    gap: 4px;
  }

  .reportListMobileSourceTag {
    min-height: 18px;
    padding: 2px 6px;
    font-size: 10px;
  }

  .profileAvatarRow {
    flex-direction: column;
    grid-area: 2 / 1;
    align-items: center;
    gap: 0;
    width: 100%;
    min-width: 0;
  }

  .profileAvatarSection {
    grid-template-columns: 112px minmax(0, 1fr);
    align-items: center;
    column-gap: 8px;
  }

  .profileAvatarSectionHeader {
    display: contents;
  }

  .profileAvatarSectionHeader .profileSectionTitle {
    grid-area: 1 / 1 / auto / -1;
  }

  .profileAvatarInfo {
    text-align: center;
    justify-items: center;
    gap: 4px;
    width: 100%;
    display: grid;
  }

  .profileAvatarButton {
    border-radius: 999px;
    width: 72px;
    height: 72px;
  }

  .profileAvatarMeta {
    display: none;
  }

  .profileAddressSearchRow {
    grid-template-columns: minmax(0, 1fr);
  }

  .profileAvatarActions {
    flex-flow: column;
    grid-area: 2 / 2;
    justify-content: flex-start;
    place-self: center stretch;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    max-width: none;
    display: flex !important;
  }

  .profileAvatarActions .profileActionBtn, .profileAvatarActions .profileActionBtnWide {
    flex: none;
    min-width: 0;
    min-height: 44px;
    font-size: 12px;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .profileAvatarError, .profileFieldsStackAccount {
    grid-column: 1 / -1;
  }

  .profileSignatureHeaderActions {
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 8px;
    width: 100%;
    display: flex !important;
  }

  .profileSignatureModeActions {
    flex-wrap: wrap;
    flex: 100%;
    gap: 8px;
    width: auto;
    display: flex;
  }

  .profileSignatureModeBtn {
    flex: 128px;
    min-width: 0 !important;
  }

  .profileSignatureHeaderActions .profileActionBtn, .profileSignatureHeaderActions .profileActionBtnWide {
    flex: 128px;
    width: auto;
    min-width: 0;
    font-size: 13px;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .profileSignatureHeaderActions .profileSignatureRemoveBtn {
    flex: 128px;
  }

  .profileSaveBtn {
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }

  .profilePasswordForm, .profilePasswordDesktopGrid, .profilePasswordFields, .profilePasswordPolicyList, .profilePasswordRequirementsPanel, .profileSaveActions {
    width: 100%;
    max-width: 100%;
  }

  .profilePasswordDesktopGrid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .profileSignaturePadFooter {
    grid-template-columns: 1fr;
    display: grid;
  }

  .profileSignaturePadFooter .btn {
    width: 100%;
    min-height: 44px;
  }

  .reportCreateSearchState {
    font-size: 12px;
  }

  .reportObraSelectedPill {
    width: 100% !important;
  }

  .reportObraSelectedPill .btn {
    min-height: 36px !important;
  }

  .reportObraPopover {
    width: 100%;
    max-width: 100%;
    left: 0 !important;
    right: 0 !important;
  }

  .reportObraPopover .cmPopoverList {
    max-height: min(260px, 42vh);
  }

  .reportLinesHeader {
    align-items: stretch !important;
  }

  .reportLineHeader {
    align-items: flex-start !important;
  }

  .reportEditorContextHeader {
    align-items: stretch !important;
  }

  .reportEditorContextHeader > * {
    width: 100%;
  }

  .reportEditorContextHeader .pill {
    width: fit-content;
  }

  .reportEditorContextCard .cardBody {
    padding: 14px !important;
  }

  .reportEditorWorkTitle {
    font-size: 24px !important;
  }

  .reportEditorMain {
    gap: 10px !important;
  }

  .reportEditorMain input, .reportEditorMain textarea, .reportEditorMain select, .reportEditorMain button.input {
    font-size: max(16px, 1rem);
  }

  .reportEditorMetaBar {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 8px;
  }

  .portalBackBar {
    background: none;
    border: 0;
    min-height: auto;
    padding: 6px 0;
  }

  .reportEditorBackLink {
    white-space: nowrap;
    font-size: 13px;
  }

  .portalBackIcon {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
  }

  .reportEditorMetaPill {
    white-space: nowrap;
    align-items: center;
    min-height: 24px;
    font-size: 12px;
  }

  .reportSectionTitle {
    font-size: 20px !important;
  }

  .reportEditorMetaLine {
    font-size: 11px !important;
  }

  .reportEditorTopActionsInline, .reportEditorTopActionsInline > div {
    grid-template-columns: 1fr;
    gap: 10px;
    display: grid !important;
  }

  .reportLineHeaderMeta {
    width: 100%;
    justify-content: flex-start !important;
  }

  .reportLineHeaderMeta .pill {
    min-height: 44px;
  }

  .reportLinePrimaryGrid, .reportTaskGrid {
    grid-template-columns: 1fr !important;
  }

  .reportTaskRow {
    width: 100%;
  }

  .reportTaskRow .btn {
    min-height: 44px !important;
  }

  .reportCopyPreviewMeta {
    align-items: stretch !important;
  }

  .reportCopyPreviewMeta .pill {
    width: fit-content;
  }

  .reportCopyPreviewActions {
    flex-direction: column;
    align-items: stretch !important;
  }

  .reportCopyPreviewActions .btn {
    width: 100%;
    min-height: 44px;
  }

  .reportEditorSectionBody, .reportSubmitSectionBody {
    gap: 10px !important;
  }

  .reportWorkerFieldGrid {
    grid-template-columns: 1fr;
  }

  .reportWorkerClosestSiteWrap {
    width: 100%;
  }

  .reportWorkerClosestSiteBtn, .reportWorkerSaveRow .reportWorkerSaveBtn {
    width: 100%;
    min-width: 0;
  }

  .reportWorkerClosestSiteAlert {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .reportWorkerClosestSiteAlertBody {
    gap: 10px;
  }

  .reportWorkerClosestSiteAlertActions {
    flex-direction: column;
  }

  .reportWorkerClosestSiteAlertActionBtn {
    width: 100%;
  }

  .reportWorkerTaskHeaderRow {
    grid-template-columns: minmax(0, 1fr) minmax(96px, 116px) 44px;
  }

  .reportWorkerTaskHeaderRow > :nth-child(2) {
    text-align: center;
    display: block;
  }

  .reportWorkerTaskRow {
    grid-template-columns: minmax(0, 1fr) minmax(96px, 116px) 44px;
    align-items: center;
  }

  .reportWorkerTaskHoursField:not(.isMobilePicker) {
    grid-template-columns: 44px minmax(76px, 1fr) 44px;
    gap: 6px;
  }

  .reportWorkerTaskHoursField.isMobilePicker {
    grid-template-columns: minmax(0, 1fr);
  }

  .reportWorkerTaskStepBtn {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
  }

  .reportWorkerTaskRemoveBtn {
    align-self: stretch;
    min-width: 44px;
    min-height: 44px;
  }

  .reportWorkerTotalRow {
    grid-template-columns: minmax(0, 1fr) minmax(96px, 116px) 44px;
  }

  .reportWorkerTotalHoursCol {
    text-align: right;
    justify-items: end;
  }

  .reportWorkerTotalHoursCol .label {
    white-space: nowrap;
    letter-spacing: .06em;
    font-size: 11px;
    line-height: 1.1;
  }

  .reportWorkerTaskDurationModalBackdrop {
    padding: 10px;
  }

  .reportWorkerTaskDurationModal {
    width: calc(100vw - 32px);
    max-width: 320px;
  }

  .reportWorkerTaskDurationModalHeader {
    align-items: center;
  }

  .reportWorkerTaskDurationPopoverWheels {
    grid-template-columns: 100px auto 100px;
    gap: 6px;
  }

  .reportWorkerTaskDurationWheelList {
    width: 100px;
    max-height: 168px;
    padding: 2px;
  }

  .reportWorkerTaskDurationWheelItem {
    width: 84px;
    min-height: 44px;
    font-size: 17px;
  }

  .reportWorkerDictationField.isMobile {
    height: 52px;
    min-height: 52px;
    scroll-margin-bottom: calc(132px + env(safe-area-inset-bottom, 0px));
    gap: 6px;
    padding: 4px 5px 4px 10px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationInput {
    min-width: 0;
    height: 42px;
    font-size: 16px;
    line-height: 1.2;
  }

  .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile.isIdle, .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile.isCancelled, .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile.isCompleted, .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile.isFailed {
    align-items: flex-start;
    height: auto;
    min-height: 52px;
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile .reportWorkerDictationInput {
    height: auto;
    min-height: 40px;
    max-height: 75.6px;
    padding-top: 10px;
    padding-bottom: 8px;
    line-height: 1.2;
  }

  .reportWorkerTaskNameDialogEntry .reportWorkerDictationField.isMobile .reportWorkerDictationActions {
    align-self: flex-start;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationStatusMain {
    flex: auto;
    gap: 5px;
    min-width: 0;
    font-size: 13px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationStatusText {
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationWaveform {
    flex: 64px;
    gap: 1px;
    min-width: 28px;
    max-width: 96px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationWaveform > span:nth-child(n+17) {
    display: none;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationActions {
    gap: 4px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationHint {
    display: none;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationMicBtn {
    border-radius: 9px;
    width: 44px;
    min-width: 44px;
    height: 44px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationTextAction {
    min-height: 44px;
    padding: 0 6px;
    font-size: 12px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationDivider {
    display: none;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationBadge {
    gap: 4px;
    max-width: min(152px, 42vw);
    min-height: 32px;
    padding: 0 7px;
    font-size: 11px;
    overflow: hidden;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationBadge span {
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationBadge svg {
    flex: none;
    width: 15px;
    height: 15px;
  }

  .reportWorkerDictationField.isMobile.isFailed .reportWorkerDictationActions {
    gap: 3px;
  }

  .reportWorkerDictationField.isMobile.isFailed .reportWorkerDictationTextAction {
    padding: 0 5px;
  }

  .reportWorkerTicketsHead {
    align-items: stretch;
  }

  .reportWorkerTicketsHead .btn {
    width: 100%;
  }

  .reportEditorSectionBody {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .reportEditorSuggestPopover .cmPopoverOption {
    background: none;
    border: 0;
    padding-left: 2px;
    padding-right: 2px;
  }
}

@container portal-report-list (max-width: 12rem) {
  .reportListMobileItem {
    grid-template-columns: minmax(0, 1fr) 14px;
    grid-template-areas: "main chevron"
                         "status chevron";
    gap: 8px 10px;
  }

  .reportListMobileStatusPill {
    justify-self: start;
  }
}

@media (max-width: 520px) {
  .reportWorkerTaskHeaderRow {
    grid-template-columns: minmax(0, 1fr) 92px 42px;
    gap: 6px 5px;
  }

  .reportWorkerTaskHeaderRow > :nth-child(2) {
    justify-self: stretch;
    min-width: 0;
  }

  .reportWorkerTaskHeaderRow > :nth-child(3) {
    display: block;
  }

  .reportWorkerTaskRow {
    grid-template-columns: minmax(0, 1fr) 92px 42px;
    align-items: center;
    gap: 7px 5px;
  }

  .reportWorkerTaskNameField {
    grid-column: auto;
  }

  .reportWorkerTaskHoursField {
    grid-area: auto;
    width: 100%;
    max-width: 100%;
  }

  .reportWorkerTaskRemoveBtn {
    grid-area: auto;
    align-self: center;
    width: 42px;
    min-width: 42px;
    min-height: 46px;
    padding-left: 0;
    padding-right: 0;
  }

  .reportWorkerTotalRow {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .reportWorkerMobileTaskTrigger {
    border-radius: 9px;
    min-height: 46px;
    padding: 3px;
  }

  .reportWorkerMobileTaskTriggerMain {
    min-height: 44px;
    padding-left: 4px;
    padding-right: 2px;
  }

  .reportWorkerMobileTaskTriggerText {
    font-size: 14px;
  }

  .reportWorkerMobileTaskTriggerStatus {
    gap: 5px;
    font-size: 12px;
  }

  .reportWorkerMobileTaskTriggerBadge {
    max-width: 32px;
    padding-left: 6px;
    padding-right: 6px;
  }

  .reportWorkerMobileTaskTriggerBadge span {
    display: none;
  }

  .reportWorkerMobileTaskTriggerMic {
    border-radius: 8px;
    width: 44px;
    min-width: 44px;
    height: 44px;
  }

  .reportWorkerTaskDurationTrigger {
    gap: 4px;
    min-height: 46px;
    font-size: 14px;
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  .reportWorkerTaskDurationTriggerIcon {
    width: 10px;
    height: 10px;
  }

  .reportWorkerTaskRemoveBtn svg {
    width: 16px;
    height: 16px;
  }

  .reportWorkerDictationField.isMobile {
    width: 100%;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationStatusMain {
    font-size: 12px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationWaveform {
    flex-basis: 42px;
    max-width: 72px;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationWaveform > span:nth-child(n+13) {
    display: none;
  }

  .reportWorkerDictationField.isMobile .reportWorkerDictationTextAction {
    min-width: 40px;
  }

  .reportWorkerDictationField.isMobile.isCompleted .reportWorkerDictationBadge {
    max-width: min(142px, 38vw);
  }
}

@media (max-width: 760px) {
  .reportReadOnlyFieldGrid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 360px) {
  .reportWorkerTaskHeaderRow {
    display: none;
  }

  .reportWorkerTaskRow {
    grid-template-columns: minmax(0, 1fr) 44px;
    gap: 7px;
    padding-block: 2px;
  }

  .reportWorkerTaskNameField {
    grid-area: 1 / 1 / auto / -1;
  }

  .reportWorkerTaskHoursField {
    grid-area: 2 / 1;
  }

  .reportWorkerTaskRemoveBtn {
    grid-area: 2 / 2;
    width: 44px;
    min-width: 44px;
    min-height: 46px;
  }
}

@media (max-width: 900px) and (max-height: 520px) and (orientation: landscape) {
  .loginMain {
    place-items: stretch stretch;
    width: 100%;
    height: 100dvh;
    min-height: 0;
    padding: 0;
    overflow: hidden;
  }

  .loginCard {
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    grid-template-rows: minmax(0, 1fr);
    grid-template-columns: minmax(210px, .72fr) minmax(0, 1.28fr);
  }

  .portalPublicAuthBrandPanel {
    padding: max(18px, env(safe-area-inset-top))
      24px
      max(18px, env(safe-area-inset-bottom))
      max(24px, env(safe-area-inset-left));
    grid-template-columns: minmax(0, 1fr);
    align-content: space-between;
    align-items: start;
    gap: 16px;
  }

  .portalPublicAuthBrandContent {
    align-content: start;
    justify-items: start;
    gap: 0;
    display: grid;
  }

  .portalPublicAuthBrandLogoFrame {
    min-height: 44px;
    margin: 0 0 18px;
  }

  .portalPublicAuthBrandName {
    margin-bottom: 7px;
    font-size: 10px;
    display: block;
  }

  .portalPublicAuthBrandTitle {
    max-width: 11ch;
    font-size: 27px;
  }

  .portalPublicAuthBrandDescription {
    display: none;
  }

  .portalPublicAuthAccessPanel {
    min-height: 0;
    padding: max(18px, env(safe-area-inset-top))
      max(28px, env(safe-area-inset-right))
      max(18px, env(safe-area-inset-bottom))
      28px;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    align-content: start;
    justify-items: center;
    overflow-y: auto;
  }

  .portalPublicAuthHeader, .portalPublicAuthSupplement, .portalPublicAuthBody {
    justify-self: center;
    width: min(100%, 520px);
  }
}

@media (max-width: 420px) {
  .documentsHeaderActions.portalHeroActionsMobile {
    grid-template-columns: 1fr;
  }

  .loginMain {
    padding: 0;
  }

  .portalPublicAuthBrandPanel {
    padding: max(8px, env(safe-area-inset-top))
      max(16px, env(safe-area-inset-right))
      8px
      max(16px, env(safe-area-inset-left));
  }

  .portalPublicAuthAccessPanel {
    padding: clamp(22px, 4dvh, 34px)
      max(18px, env(safe-area-inset-right))
      max(18px, env(safe-area-inset-bottom))
      max(18px, env(safe-area-inset-left));
  }

  .portalPublicAuthBrandTitle {
    font-size: 19px;
  }

  .loginTitle {
    font-size: 25px;
  }

  .timesheetCellContent {
    height: 100%;
    display: block;
    position: relative;
    min-height: 100% !important;
    padding: 4px !important;
  }

  .timesheetCellPrimary {
    gap: 2px;
    max-width: calc(100% - 10px);
  }

  .timesheetDayPlaceholder {
    aspect-ratio: 1;
    height: auto;
    min-height: 44px;
  }

  .timesheetCellDayNum {
    color: color-mix(in srgb, var(--fg), transparent 10%);
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
  }

  .timesheetCellDayNumToday:before {
    width: 17px;
    height: 17px;
  }

  .timesheetCellDayNumToday {
    color: #fff;
    font-weight: 700;
  }

  .timesheetCellHours {
    color: color-mix(in srgb, var(--muted), transparent 0%);
    letter-spacing: 0;
    text-align: right;
    pointer-events: none;
    white-space: nowrap;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    position: absolute;
    bottom: 3px;
    right: 3px;
  }

  .timesheetCellSelectMark {
    width: 10px;
    height: 10px;
    font-size: 8px;
    top: 3px;
    bottom: auto;
    right: 3px;
  }

  .timesheetCellLock {
    width: 9px;
    height: 9px;
    top: 3px;
    right: 3px;
  }

  .timesheetCellContentLocked .timesheetCellHeader {
    padding-right: 11px;
  }

  .timesheetCellHint {
    letter-spacing: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    pointer-events: none;
    max-width: calc(100% - 6px);
    font-size: 8px;
    line-height: 1;
    display: block;
    position: absolute;
    bottom: 3px;
    left: 3px;
    right: auto;
    overflow: hidden;
  }

  .timesheetCellHint--withHours {
    max-width: calc(100% - 24px);
  }

  .timesheetCellHeader {
    display: block;
  }

  .timesheetWeekday {
    font-size: 10px !important;
  }

  .portalPageHeroTitle {
    font-size: 24px !important;
  }

  .timesheetLegendPanel .timesheetLegendRow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
    display: grid;
  }

  .timesheetLegendItem {
    grid-template-columns: 10px minmax(0, 1fr);
    align-items: start;
    column-gap: 7px;
  }

  .timesheetLegendSwatch {
    width: 10px;
    height: 10px;
    margin-top: 2px;
  }

  .timesheetLegendLabel {
    font-size: 11px;
    line-height: 1.2;
  }

  .reportEditorWorkTitle {
    font-size: 22px !important;
  }

  .dayEditorSideControls, .dayEditorFooterActions {
    grid-template-columns: 1fr;
  }

  .timesheetBulkSelectedInput {
    flex: 148px;
    justify-content: center;
    gap: 8px;
    width: auto;
  }

  .timesheetBulkSelectedInput .mono {
    margin-left: 0;
  }
}

@media (max-width: 760px) and (max-height: 650px) and (orientation: portrait) {
  .portalPublicAuthAccessPanel {
    padding-top: 18px;
  }
}

@media (max-width: 760px) {
  .loginMain--signIn .portalPublicAuthAccessPanel {
    padding-top: clamp(14px, 2.5dvh, 22px);
  }

  .loginMain--signIn .loginSubtitle {
    display: none;
  }

  .loginMain--signIn .portalPublicAuthBody {
    margin-top: 14px;
  }
}

@media (max-width: 320px) {
  .dayEditorModeSwitch.timesheetBulkModeSwitch .dayEditorModeBtn {
    font-size: 13px;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .timesheetBulkHeaderActions {
    flex-direction: column;
    grid-template-columns: 1fr;
    gap: 4px;
    align-items: stretch !important;
  }

  .timesheetBulkHeaderOpen {
    grid-template-columns: 1fr !important;
  }

  .timesheetBulkHeaderOpen .timesheetBulkHeaderActions {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .timesheetBulkHeaderActions .timesheetBulkSelectedInput {
    flex: auto;
    width: 100%;
  }

  .timesheetBulkHeaderActions .timesheetBulkToggleBtn {
    width: 100%;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .portalNavLabelCompact {
    display: block;
  }

  .portalNavLabelFull {
    display: none;
  }
}

@media (max-width: 900px) {
  .portalTopbarInner {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    display: grid;
    gap: 10px 12px !important;
    padding: 12px 16px 10px !important;
  }

  .portalBrand {
    align-items: center;
    gap: 8px;
    min-width: 0;
  }

  .portalBrandLogo {
    margin-top: 0;
    height: 20px !important;
  }

  .portalBrand .brandBlock {
    min-width: 0;
    margin-top: 1px;
  }

  .portalBrand .brandTitle {
    white-space: nowrap;
    line-height: 1.15;
    font-size: 16px !important;
  }

  .portalTopbarActions {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    display: grid;
  }

  .portalTopbarRight {
    align-items: center;
    gap: 6px;
    display: inline-flex;
  }

  .portalAccountSummary {
    grid-template-columns: 40px 16px;
    gap: 8px;
    min-width: 64px;
  }

  .portalAccountText {
    display: none;
  }

  .portalNavRow {
    justify-self: end;
    width: auto;
    min-width: 0;
  }

  .portalNavRow .nav {
    align-items: end;
    gap: 2px;
    width: auto;
    min-width: 0;
    display: grid;
    overflow: visible;
  }

  .portalNavRow .navLink {
    white-space: nowrap;
    border-bottom-width: 2px;
    min-height: 44px;
    padding: 8px 10px 6px;
    font-size: 12px;
    line-height: 1.15;
  }

  .portalNavIcon {
    display: none;
  }

  .portalNavLabelCompact {
    display: block;
  }

  .portalNavLabelFull {
    display: none;
  }

  .supportReadOnlyBannerBody {
    flex-direction: column;
    align-items: stretch;
  }

  .supportStartActions .btn {
    width: 100%;
  }
}

@media (min-width: 681px) and (max-width: 760px) {
  .dayEditorTotalInfoRow {
    min-height: 40px;
  }
}

@media (max-width: 680px) {
  html {
    --portal-mobile-nav-link-height: max(66px, calc(2.75rem + 22px));
    --portal-mobile-nav-shell-clearance: calc(var(--portal-mobile-nav-link-height) + 26px);
    --portal-mobile-nav-editor-clearance: calc(var(--portal-mobile-nav-shell-clearance) + 40px);
    scroll-padding-bottom: calc(var(--portal-mobile-nav-editor-clearance) + env(safe-area-inset-bottom, 0px));
  }

  .portalTopbar {
    background: color-mix(in srgb, var(--bg-2), white 16%);
    border-bottom-color: color-mix(in srgb, var(--stroke), transparent 8%);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .portalTopbarInner {
    padding: max(10px, env(safe-area-inset-top, 0px)) 12px 9px !important;
    gap: 8px 10px !important;
  }

  .portalBrand {
    gap: 8px;
  }

  .portalBrandLogo {
    height: 18px !important;
  }

  .portalBrand .brandTitle {
    font-size: 14px !important;
  }

  .portalTopbarActions {
    display: contents;
  }

  .portalTopbarRight {
    grid-area: 1 / 2;
    align-items: center;
    gap: 6px;
    display: inline-flex;
  }

  .portalTopbarRight form {
    width: auto;
  }

  .notificationBellButton {
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    box-shadow: none;
    border-radius: 10px;
  }

  .notificationBellPanel {
    top: calc(62px + env(safe-area-inset-top, 0px));
    width: auto;
    height: auto;
    max-height: calc(100dvh - 76px - env(safe-area-inset-bottom, 0px));
    z-index: 80;
    border-radius: 18px;
    position: fixed;
    bottom: auto;
    left: 12px;
    right: 12px;
  }

  .notificationBellPanel.notificationBellPanel_empty {
    top: calc(62px + env(safe-area-inset-top, 0px));
    max-height: calc(100dvh - 76px - env(safe-area-inset-bottom, 0px));
    border-radius: 14px;
  }

  .portalTopbarSignOutIcon {
    justify-content: center;
    align-items: center;
    display: inline-flex;
  }

  .portalTopbarSignOutLabel {
    display: none;
  }

  .portalAccountSummary {
    border-radius: 10px;
    min-width: 64px;
    min-height: 44px;
    padding-right: 6px;
  }

  .portalAccountMenuPanel {
    top: calc(58px + env(safe-area-inset-top, 0px));
    width: min(280px, 100vw - 24px);
    min-width: 0;
    max-height: calc(100dvh - 76px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    overscroll-behavior: contain;
    position: fixed;
    right: 12px;
    overflow-y: auto;
  }

  body[data-portal-mobile-chat-thread] .portalTopbar {
    display: none;
  }

  body:has([class*="shellMobileThreadOpen"]) .portalTopbar {
    display: none;
  }

  .portalNavRow {
    z-index: 24;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    box-shadow: 0 -10px 28px color-mix(in srgb, var(--fg), transparent 94%);
    background: #fff;
    justify-content: stretch;
    align-items: stretch;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    transform: none;
  }

  body[data-portal-mobile-chat-thread] .portalNavRow {
    display: none;
  }

  body:has([class*="shellMobileThreadOpen"]) .portalNavRow {
    display: none;
  }

  .portalNavRow .nav {
    border-top: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 10%);
    width: 100%;
    min-width: 0;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: #fff;
    border-radius: 0;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    place-items: stretch stretch;
    gap: 0;
    margin: 0;
    padding: 5px 0 7px;
    display: grid;
  }

  .portalNavRow .nav.navThree {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.navFour {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.navFive {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.navSix {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.navTwo {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.navOne {
    grid-template-columns: 1fr;
    max-width: 188px;
    margin: 0 auto;
  }

  .portalNavRow .nav.portalNavMobileFive {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.portalNavMobileSix {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.portalNavMobileFour {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.portalNavMobileThree {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.portalNavMobileTwo {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
    margin: 0;
  }

  .portalNavRow .nav.portalNavMobileOne {
    grid-template-columns: 1fr;
    max-width: 188px;
    margin: 0 auto;
  }

  .portalNavHomeMobileOnly {
    display: flex !important;
  }

  .portalNavRow .navLink {
    min-height: 66px;
    min-height: var(--portal-mobile-nav-link-height);
    text-align: center;
    white-space: nowrap;
    width: 100%;
    min-width: 0;
    color: color-mix(in srgb, var(--fg), white 24%);
    background: none;
    border: 0;
    border-radius: 0;
    justify-content: stretch;
    align-items: stretch;
    padding: 0;
    transition: color .16s, transform .16s;
    display: flex;
  }

  .portalNavRow .navLink:hover {
    background: none;
  }

  .portalNavRow .navLink:focus-visible {
    box-shadow: none;
    border-bottom-color: #0000;
  }

  .portalNavRow .navLink:focus-visible .portalNavIconBadge {
    box-shadow: 0 0 0 3px var(--focus);
  }

  .portalNavRow .navLinkActive {
    box-shadow: none;
    color: var(--fg);
    background: none;
    border-bottom-color: #0000;
  }

  .portalNavLinkInner {
    align-content: center;
    justify-items: center;
    gap: 4px;
    width: 100%;
    min-width: 0;
    padding: 0 4px;
    display: grid;
  }

  .portalNavIconBadge {
    border-radius: 11px;
    justify-content: center;
    align-items: center;
    width: 42px;
    height: 32px;
    transition: transform .16s;
    display: inline-flex;
  }

  .portalNavItemBadge {
    min-width: 17px;
    height: 17px;
    padding: 0 5px;
    font-size: 10px;
    box-shadow: 0 0 0 2px #fff;
  }

  .portalNavItemBadgeDesktop {
    display: none;
  }

  .portalNavItemBadgeMobile {
    display: inline-flex;
    top: -4px;
    right: -4px;
  }

  .portalNavRow .navLink:active .portalNavIconBadge {
    transform: scale(.96);
  }

  .portalNavIcon {
    opacity: 1;
    color: currentColor;
    flex: 0 0 20px;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    transition: color .16s, transform .16s;
    display: inline-flex;
  }

  .portalNavRow .navLinkActive .portalNavIcon {
    color: color-mix(in srgb, var(--focus), black 14%);
  }

  .portalNavIcon[data-portal-nav-icon="home"] svg {
    transform: translateY(.5px);
  }

  .portalNavLabel {
    letter-spacing: 0;
    overflow-wrap: anywhere;
    white-space: normal;
    text-wrap: balance;
    color: currentColor;
    opacity: .96;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.08;
    transition: color .16s, opacity .16s;
    display: -webkit-box;
    overflow: hidden;
  }

  .portalNavRow .navLinkActive .portalNavLabel {
    color: var(--fg);
    opacity: 1;
    font-weight: 600;
  }

  .portalNavLabelCompact {
    display: -webkit-box;
  }

  .portalNavLabelFull {
    display: none;
  }

  .portalNavRow .nav.portalNavMobileSix .portalNavLinkInner {
    gap: 3px;
    padding: 0 2px;
  }

  .portalNavRow .nav.portalNavMobileSix .portalNavIconBadge {
    border-radius: 10px;
    width: 40px;
    height: 30px;
  }

  .portalNavRow .nav.portalNavMobileSix .portalNavLabel {
    white-space: normal;
    text-wrap: balance;
    font-size: .625rem;
    line-height: 1.05;
  }

  .content {
    padding-bottom: calc(var(--portal-mobile-nav-shell-clearance) + env(safe-area-inset-bottom, 0px));
  }

  .content:has(.reportEditorMain) {
    min-height: 100dvh;
    padding-bottom: calc(var(--portal-mobile-nav-editor-clearance) + env(safe-area-inset-bottom, 0px));
  }

  .reportEditorMain, .reportEditorMain .card, .reportWorkerTaskRow, .reportWorkerAddTaskBtn, .reportSubmitConfirm, .reportSubmitActions, .reportSubmitReqItem {
    scroll-margin-bottom: calc(var(--portal-mobile-nav-editor-clearance) + env(safe-area-inset-bottom, 0px));
  }

  body[data-portal-mobile-chat-thread] .content {
    padding-bottom: 0;
  }

  body:has([class*="shellMobileThreadOpen"]) .content {
    padding-bottom: 0;
  }
}

@media (max-width: 420px) {
  html {
    --portal-mobile-nav-link-height: max(62px, calc(2.5rem + 22px));
    --portal-mobile-nav-shell-clearance: calc(var(--portal-mobile-nav-link-height) + 30px);
  }

  .reportEditorMetaBar {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 6px;
  }

  .reportEditorBackLink {
    font-size: 12px;
  }

  .portalBackBar {
    padding: 6px 0;
  }

  .portalBackIcon {
    flex-basis: 26px;
    width: 26px;
    height: 26px;
  }

  .reportEditorMetaPill {
    white-space: nowrap;
    justify-content: flex-end;
    gap: 6px;
    width: 100%;
    font-size: 12px;
  }

  .portalTopbarInner {
    gap: 5px !important;
    padding: 7px 12px 5px !important;
  }

  .portalBrand .brandTitle {
    font-size: 13px !important;
  }

  .portalTopbarRight form .btn {
    width: 44px;
    min-width: 44px;
    min-height: 44px;
  }

  .portalNavRow .nav {
    padding-left: 0;
    padding-right: 0;
  }

  .portalNavRow .navLink {
    min-height: 62px;
    min-height: var(--portal-mobile-nav-link-height);
  }

  .portalTopbarRight {
    gap: 5px;
    display: inline-flex;
  }

  .notificationBellPanel {
    top: calc(58px + env(safe-area-inset-top, 0px));
    height: auto;
    max-height: calc(100dvh - 70px - env(safe-area-inset-bottom, 0px));
    bottom: auto;
    left: 10px;
    right: 10px;
  }

  .notificationBellPanel.notificationBellPanel_empty {
    top: calc(58px + env(safe-area-inset-top, 0px));
    max-height: calc(100dvh - 70px - env(safe-area-inset-bottom, 0px));
  }

  .portalNavIconBadge {
    border-radius: 10px;
    width: 40px;
    height: 30px;
  }

  .portalNavItemBadge {
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    font-size: 9.5px;
  }

  .portalNavItemBadgeMobile {
    top: -3px;
    right: -3px;
  }

  .portalNavLabel {
    font-size: .65625rem;
  }

  .portalPageHero {
    min-height: auto;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .profileSignatureHeaderActions .profileActionBtn, .profileSignatureHeaderActions .profileActionBtnWide {
    flex: calc(50% - 4px);
    font-size: 12px;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .profileSignatureHeaderActions .profileSignatureRemoveBtn {
    flex-basis: 100%;
  }
}

@container portal-notification-popup (max-width: 22rem) {
  .notificationBellHeader {
    gap: 8px;
    padding: 12px 14px;
  }

  .notificationBellMarkAll {
    padding-inline: 10px;
  }

  .notificationBellMarkAllLabel {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .notificationBellMarkAll:after {
    content: attr(data-compact-label);
    display: inline;
  }
}

@container portal-notification-popup (max-width: 17rem) {
  .notificationBellMarkAll:after {
    content: "✓ " attr(data-action-label);
  }
}

@container portal-notification-popup (max-width: 13rem) {
  .notificationBellMarkAll {
    width: 44px;
    min-width: 44px;
    padding-inline: 0;
  }

  .notificationBellMarkAll:after {
    content: "✓✓";
    letter-spacing: -.18em;
    font-size: 1rem;
    line-height: 1;
  }
}

.homeMain {
  gap: 14px;
  display: grid;
}

.homeDashboardSection {
  gap: 10px;
  display: grid;
}

.homeTimesheetWorkflowCard {
  background: var(--bg-2);
}

.homeTimesheetWorkflowBody, .homeTimesheetWorkflowHeader {
  gap: 14px;
  display: grid;
}

.homeTimesheetWorkflowCopy {
  gap: 8px;
  display: grid;
}

.homeTimesheetWorkflowEyebrow {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0;
  font-size: 12px;
  font-weight: 700;
}

.homeTimesheetWorkflowTitleRow {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.homeTimesheetWorkflowTitleRow .pill {
  min-height: 32px;
}

.homeTimesheetWorkflowMeta {
  color: var(--muted);
  margin: 0;
  font-size: 14px;
}

.homeTimesheetWorkflowSummary {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg);
  align-content: start;
  gap: 4px;
  padding: 14px 16px;
  display: grid;
}

.homeTimesheetWorkflowSummaryLabel {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0;
  font-size: 12px;
  font-weight: 700;
}

.homeTimesheetWorkflowSummaryValue {
  color: var(--fg);
  margin: 0;
  font-size: clamp(28px, 4vw, 36px);
  font-weight: 700;
  line-height: 1.05;
}

.homeTimesheetWorkflowActions {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.homeTimesheetWorkflowActions .btn {
  flex: 180px;
}

.homeDashboardTitle {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}

.homeActionsGrid {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--stroke), transparent 8%);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.homeDashboardCard {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 1px 2px #11182714;
}

.homeTrackerCard {
  overflow: hidden;
}

.homeActionCard {
  box-shadow: none;
  color: #111827;
  background: #fff;
  border: 0;
  border-radius: 0;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 10px 12px;
  text-decoration: none;
  transition: background-color .14s, color .14s;
  display: flex;
}

.homeActionCard:hover, .homeActionCard:focus-visible {
  background: color-mix(in srgb, var(--focus), white 96%);
  color: color-mix(in srgb, var(--focus), black 12%);
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--focus), transparent 70%);
  outline: none;
}

.homeActionCardIcon {
  background: color-mix(in srgb, var(--focus), white 94%);
  color: #2563eb;
  border-radius: 9px;
  flex: 0 0 36px;
  place-items: center;
  width: 36px;
  height: 36px;
  display: grid;
}

.homeActionCardIcon svg {
  stroke: currentColor;
  stroke-width: 1.8px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 20px;
  height: 20px;
}

.homeActionCardLabel {
  color: #1f2937;
  text-align: left;
  margin: 0;
  font-size: 13px;
  font-weight: 700;
}

.homeTrackerBody {
  gap: 0;
  padding: 0;
  display: grid;
}

.homeTrackerPrimary {
  grid-template-columns: minmax(320px, 1.05fr) minmax(480px, 1.5fr);
  align-items: stretch;
  gap: 0;
  min-width: 0;
  min-height: 230px;
  display: grid;
}

.homeTrackerMetricZone {
  background: color-mix(in srgb, var(--focus), white 95%);
  align-content: center;
  gap: 32px;
  min-width: 0;
  padding: clamp(28px, 3vw, 42px);
  display: grid;
}

.homeTrackerWorkspace {
  grid-template-rows: minmax(230px, 1fr) auto;
  grid-template-columns: minmax(250px, 1fr) minmax(230px, .72fr);
  min-width: 0;
  display: grid;
}

.homeTrackerWorkspace:has(.homeTrackerNoticeStack:not(:empty)) {
  grid-template-rows: minmax(138px, 1fr) auto;
}

.homeTrackerStateColumn {
  align-content: center;
  justify-items: start;
  gap: 10px;
  min-width: 0;
  padding: 30px 20px 30px 32px;
  display: grid;
}

.homeTrackerStateSummary {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  width: 100%;
  min-width: 0;
  display: flex;
}

.homeTrackerWorkspace.isEnded {
  grid-template-rows: auto;
  grid-template-columns: minmax(0, 1fr);
}

.homeTrackerWorkspace.isEnded .homeTrackerStateColumn {
  padding-right: 32px;
}

.homeTrackerCard.isCompact .homeTrackerBody {
  gap: 0;
}

.homeTrackerLiveBadge {
  width: fit-content;
  color: color-mix(in srgb, var(--notice-fg, var(--ok)), black 16%);
  background: none;
  border: 0;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 0 4px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
}

.homeTrackerLiveBadge.is-success {
  --notice-bg: var(--ok);
  --notice-border: var(--ok);
  --notice-fg: var(--ok);
}

.homeTrackerLiveBadge.is-info {
  --notice-bg: var(--focus);
  --notice-border: var(--focus);
  --notice-fg: var(--focus);
}

.homeTrackerLiveBadge.is-warning {
  --notice-bg: var(--warn);
  --notice-border: var(--warn);
  --notice-fg: color-mix(in srgb, var(--warn), black 18%);
}

.homeTrackerLiveBadge.is-error {
  --notice-bg: var(--danger);
  --notice-border: var(--danger);
  --notice-fg: var(--danger);
}

.homeTrackerLiveBadgeBtn {
  cursor: pointer;
  min-height: 44px;
}

.homeTrackerLiveBadgeBtn:hover {
  background: color-mix(in srgb, var(--notice-bg, var(--ok)), white 94%);
}

.homeTrackerLiveBadgeBtn:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

.homeTrackerLiveIcon {
  width: 14px;
  height: 14px;
  display: block;
}

.homeTrackerLiveIcon svg {
  stroke: currentColor;
  stroke-width: 1.8px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 100%;
  height: 100%;
}

.homeTrackerTimerBlock {
  justify-items: start;
  gap: 4px;
  padding: 0;
  display: grid;
}

.homeTrackerCard.isCompact .homeTrackerTimerBlock {
  padding-block: 2px;
}

.homeTrackerTimerValue {
  font-family: var(--font-mono);
  letter-spacing: -.03em;
  color: #111827;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  margin: 0;
  font-size: clamp(42px, 3.4vw, 54px);
  font-weight: 800;
  line-height: .95;
}

.homeTrackerCard.isCompact .homeTrackerTimerValue {
  font-size: 44px;
}

.homeTrackerTimerLabel {
  margin: 0;
  font-size: 13px;
}

.homeTrackerMetricZone.isEnded .homeTrackerTimerValue {
  color: #334155;
  font-weight: 750;
}

.homeTrackerLastEvent {
  text-align: left;
  justify-items: start;
  gap: 2px;
  font-size: 13px;
  display: grid;
}

.homeTrackerLastEventPrimary {
  color: #1f2937;
}

.homeTrackerLastEventSecondary {
  font-size: 12px;
}

.homeTrackerStatusRow {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 6px;
  margin-top: 0;
  display: flex;
}

.homeTrackerStatusPill {
  background: color-mix(in srgb, var(--bg-2), var(--fg) 3%);
  color: #566070;
}

.homeTrackerStatusPill:before {
  content: "";
  background: #b6bec9;
  border-radius: 999px;
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
}

.homeTrackerStatusPill.status-active {
  background: color-mix(in srgb, var(--ok), white 92%);
  color: color-mix(in srgb, var(--ok), black 18%);
}

.homeTrackerStatusPill.status-active:before {
  background: var(--ok);
}

.homeTrackerStatusPill.status-paused {
  background: color-mix(in srgb, var(--warn), white 92%);
  color: color-mix(in srgb, var(--warn), black 16%);
}

.homeTrackerStatusPill.status-paused:before {
  background: var(--warn);
}

html:root .semanticLabel.semanticLabelProvenance.homeTrackerSitePill {
  background: color-mix(in srgb, var(--focus), white 95%);
  width: fit-content;
  max-width: 100%;
  min-height: 24px;
  color: color-mix(in srgb, var(--focus), black 18%);
  white-space: normal;
  overflow-wrap: anywhere;
  justify-content: flex-start;
  padding-block: 3px;
  line-height: 1.3;
  display: inline-flex;
}

.homeTrackerOffsitePill {
  color: color-mix(in srgb, var(--warn), black 18%);
  background: color-mix(in srgb, var(--warn), white 90%);
}

.homeTrackerNoLocationPill {
  color: color-mix(in srgb, var(--danger), black 18%);
  background: color-mix(in srgb, var(--danger), white 94%);
}

.homeTrackerEndedSummary {
  justify-items: start;
  gap: 8px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.homeTrackerEndedStatus {
  color: #554766;
  letter-spacing: -.01em;
  background: #f4f1f8;
  border: 1px solid #ddd6e7;
  border-radius: 999px;
  justify-self: center;
  align-items: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  min-height: 34px;
  padding: 6px 11px 6px 8px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.homeTrackerEndedStatusIcon {
  color: #fff;
  background: #756486;
  border-radius: 999px;
  flex: 0 0 20px;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  display: inline-flex;
}

.homeTrackerEndedStatusIcon svg {
  stroke-width: 1.8px;
  width: 12px;
  height: 12px;
}

.homeTrackerEndedHint {
  color: #64748b;
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
}

.homeTrackerPermissionNotice {
  --permission-bg: color-mix(in srgb, var(--focus), white 94%);
  --permission-border: color-mix(in srgb, var(--focus), transparent 68%);
  --permission-fg: #1f3b67;
  --permission-title: #17345f;
  --permission-icon-bg: #fff;
  border: 1px solid var(--permission-border);
  background: var(--permission-bg);
  width: 100%;
  color: var(--permission-fg);
  text-align: left;
  border-radius: 12px;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin: 0;
  padding: 14px;
  display: grid;
}

.homeTrackerPermissionNotice.is-warning {
  --permission-bg: color-mix(in srgb, var(--warn), white 91%);
  --permission-border: color-mix(in srgb, var(--warn), transparent 50%);
  --permission-fg: #5f3b10;
  --permission-title: #7a3f09;
}

.homeTrackerPermissionNotice.is-error {
  --permission-bg: color-mix(in srgb, var(--danger), white 94%);
  --permission-border: color-mix(in srgb, var(--danger), transparent 58%);
  --permission-fg: #7f1d1d;
  --permission-title: #991b1b;
}

.homeTrackerPermissionIcon {
  border: 1px solid var(--permission-border);
  background: var(--permission-icon-bg);
  width: 34px;
  height: 34px;
  color: var(--permission-title);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.homeTrackerPermissionIcon svg {
  stroke: currentColor;
  stroke-width: 1.8px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 20px;
  height: 20px;
}

.homeTrackerPermissionCopy {
  gap: 12px;
  min-width: 0;
  font-size: 13px;
  line-height: 1.35;
  display: grid;
}

.homeTrackerPermissionText {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.homeTrackerPermissionText p {
  margin: 0;
}

.homeTrackerPermissionTitle {
  color: var(--permission-title);
  letter-spacing: 0;
  outline: none;
  font-weight: 750;
}

.homeTrackerPermissionTitle:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
  border-radius: 6px;
}

.homeTrackerPermissionHint {
  color: color-mix(in srgb, var(--permission-fg), black 12%);
}

.homeTrackerPermissionActions {
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  display: flex;
}

.homeTrackerPermissionActionBtn {
  white-space: nowrap;
  min-height: 44px;
  padding-inline: 14px;
  font-size: 13px;
}

.homeTrackerPermissionNoLocationBtn {
  border-color: color-mix(in srgb, var(--warn), transparent 38%);
  color: color-mix(in srgb, var(--warn), black 16%);
  background: #fff;
}

.homeTrackerNoticeStack {
  grid-column: 1 / -1;
  align-self: end;
  gap: 10px;
  padding: 0 30px 30px 32px;
  display: grid;
}

.homeTrackerNoticeStack:empty {
  display: none;
}

.homeTrackerControls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-self: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 300px;
  margin-inline: 0;
  padding: 30px 30px 30px 12px;
  display: grid;
}

.homeTrackerCard.isCompact .homeTrackerControls {
  width: 100%;
  max-width: 280px;
}

.homeTrackerControls > :only-child {
  grid-column: 1 / -1;
}

.homeTrackerPrimaryBtn, .homeTrackerSecondaryBtn {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 8px 14px;
  font-size: 14px;
}

.homeTrackerCard.isCompact .homeTrackerPrimaryBtn, .homeTrackerCard.isCompact .homeTrackerSecondaryBtn {
  min-height: 44px;
  font-size: 13px;
}

.homeTrackerStartBtn {
  border-radius: 10px;
  min-width: 0;
  min-height: 48px;
  padding: 10px 18px;
  font-size: 16px;
  box-shadow: 0 3px 8px #2563eb29;
}

.homeTrackerCard.isCompact .homeTrackerStartBtn {
  min-height: 46px;
  box-shadow: none;
  font-size: 14px;
}

.homeTrackerBody > .homeTrackerTimeline {
  margin: 0;
}

.homeTrackerSiteDialogBackdrop {
  padding: max(12px, env(safe-area-inset-top, 0px))
    max(12px, env(safe-area-inset-right, 0px))
    max(12px, env(safe-area-inset-bottom, 0px))
    max(12px, env(safe-area-inset-left, 0px));
  place-items: end stretch;
}

.homeTrackerSiteDialogCard {
  width: min(100%, 560px);
  max-height: calc(100dvh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  border-radius: 18px 18px 10px 10px;
  margin-inline: auto;
  overflow: hidden;
}

.homeTrackerSiteDialogBody {
  min-height: 0;
  max-height: inherit;
  gap: 12px;
  overflow: hidden;
}

.homeTrackerSiteDialogHeader {
  gap: 6px;
  display: grid;
}

.homeTrackerSiteDialogEyebrow {
  justify-self: start;
}

.homeTrackerSiteDialogTitle {
  font-size: 20px;
  font-weight: 750;
  line-height: 1.2;
}

.homeTrackerSiteDialogMessage {
  margin: 0;
  font-size: 14px;
  line-height: 1.4;
}

.homeTrackerSiteCandidateList {
  overscroll-behavior: contain;
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  -webkit-overflow-scrolling: touch;
  background: #fff;
  border-radius: 10px;
  min-height: 0;
  max-height: min(42dvh, 360px);
  display: grid;
  overflow-y: auto;
}

.homeTrackerSiteOption {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  width: 100%;
  min-height: 68px;
  color: var(--fg);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 0;
  gap: 6px;
  padding: 12px 14px;
  transition: box-shadow .14s, background-color .14s;
  display: grid;
}

.homeTrackerSiteOption:last-child {
  border-bottom: 0;
}

.homeTrackerSiteOption:hover {
  background: color-mix(in srgb, white, var(--focus) 4%);
}

.homeTrackerSiteOption:focus-visible {
  z-index: 1;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--focus), black 8%);
  outline: none;
  position: relative;
}

.homeTrackerSiteOption:disabled {
  cursor: wait;
  opacity: .7;
}

.homeTrackerSiteOffsiteChoice {
  border-top: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  padding-top: 12px;
}

.homeTrackerSiteOptionOffsite {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 8%);
  background: color-mix(in srgb, var(--bg-2), white 54%);
  border-radius: 10px;
  min-height: 62px;
}

.homeTrackerSiteOptionName {
  overflow-wrap: anywhere;
  min-width: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
}

.homeTrackerSiteOptionDistance {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  color: color-mix(in srgb, var(--muted), var(--fg) 24%);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.2;
}

.homeTrackerSiteOptionSeparator {
  color: color-mix(in srgb, var(--muted), transparent 20%);
  font-size: 12px;
  line-height: 1;
}

.homeTrackerSiteOptionMeta {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.homeTrackerSiteOptionCode {
  font-family: var(--font-mono);
  color: color-mix(in srgb, var(--muted), var(--fg) 20%);
  font-size: 12px;
  line-height: 1.2;
}

.homeTrackerSiteOptionHint {
  color: color-mix(in srgb, var(--muted), var(--fg) 24%);
  font-size: 13px;
  line-height: 1.3;
}

.homeTrackerSiteOptionNearest {
  background: color-mix(in srgb, var(--focus), white 92%);
  min-height: 22px;
  color: color-mix(in srgb, var(--focus), black 14%);
  letter-spacing: .02em;
  border: 0;
  border-radius: 6px;
  align-items: center;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
}

.homeTrackerSiteDialogActions {
  justify-content: center;
}

.homeTrackerSiteDialogCancel {
  width: 100%;
  min-height: 44px;
  color: color-mix(in srgb, var(--fg), var(--muted) 26%);
  box-shadow: none;
  background: none;
  border: 0;
}

.homeTrackerSiteDialogCancel:hover, .homeTrackerSiteDialogCancel:focus-visible {
  background: color-mix(in srgb, var(--focus), white 95%);
  color: color-mix(in srgb, var(--focus), black 14%);
  border: 0;
}

@media (min-width: 901px) {
  .homeTrackerSiteDialogBackdrop {
    place-items: center;
    padding: 16px;
  }

  .homeTrackerSiteDialogCard {
    border-radius: 14px;
  }
}

.homeTrackerTimeline {
  border-top: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 6%);
  background: none;
  gap: 10px;
  margin: 0;
  padding: 10px 18px 18px;
  display: grid;
}

.homeTrackerTimelineHeaderToggle {
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 8px 4px;
  transition: background-color .14s, border-color .14s;
  display: flex;
}

.homeTrackerTimelineHeaderToggle:hover {
  background: color-mix(in srgb, var(--focus), white 95%);
}

.homeTrackerTimelineHeaderToggle:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

.homeTrackerTimelineHeaderToggle:disabled {
  cursor: default;
  opacity: .82;
}

.homeTrackerTimelineHeaderTitle {
  white-space: nowrap;
  letter-spacing: 0;
  text-transform: none;
  min-width: 0;
  color: color-mix(in srgb, var(--fg), var(--muted) 18%);
  align-items: baseline;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  display: inline-flex;
}

.homeTrackerTimelineHeaderCount {
  font-family: var(--font-mono);
  color: color-mix(in srgb, var(--muted), var(--fg) 18%);
  flex: none;
  font-size: 12px;
  font-weight: 600;
}

.homeTrackerTimelineHeaderMeta {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.homeTrackerTimelineHeaderHint {
  color: color-mix(in srgb, var(--muted), var(--fg) 28%);
  white-space: nowrap;
  font-size: 12px;
  font-weight: 700;
}

.homeTrackerTimelineChevron {
  border-right: 2px solid color-mix(in srgb, var(--muted), var(--fg) 30%);
  border-bottom: 2px solid color-mix(in srgb, var(--muted), var(--fg) 30%);
  width: 8px;
  height: 8px;
  margin-top: -2px;
  transition: transform .14s;
  transform: rotate(45deg);
}

.homeTrackerTimelineChevron.isOpen {
  margin-top: 2px;
  transform: rotate(-135deg);
}

.homeTrackerTimelineList {
  border: 1px solid var(--stroke);
  background: color-mix(in srgb, var(--stroke), white 18%);
  border-radius: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.homeTrackerTimelineItem {
  min-width: 0;
  box-shadow: none;
  background: #fff;
  border: 0;
  border-radius: 0;
  gap: 8px;
  padding: 12px 14px;
  display: grid;
}

.homeTrackerTimelineItem:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.homeTrackerTimelineItem.isRunning {
  background: color-mix(in srgb, var(--focus), white 97%);
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--focus), black 4%);
}

.homeTrackerTimelineMain {
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  display: flex;
}

.homeTrackerTimelineRange {
  min-width: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
}

.homeTrackerTimelineDuration {
  color: #374151;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-align: right;
  background: none;
  border-radius: 0;
  margin-left: auto;
  padding: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.homeTrackerTimelineMeta {
  gap: 3px;
  font-size: 13px;
  display: grid;
}

.homeTrackerTimelineMetaRow {
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: baseline;
  gap: 10px;
  display: grid;
}

.homeTrackerTimelineMetaLabel {
  letter-spacing: .03em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
  white-space: nowrap;
  font-size: 11px;
  font-weight: 700;
}

.homeTrackerTimelineLocation {
  overflow-wrap: anywhere;
  min-width: 0;
  line-height: 1.35;
}

.homeTrackerTimelineLocation.isAttention {
  color: color-mix(in srgb, var(--warn), black 46%);
  font-weight: 650;
}

@media (min-width: 901px) {
  .homeTimesheetWorkflowHeader {
    grid-template-columns: minmax(0, 1fr) minmax(220px, auto);
    align-items: start;
  }

  .homeTimesheetWorkflowSummary {
    min-width: 220px;
  }

  .homeActionsGrid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ticketsMain {
  gap: 12px;
  display: grid;
}

.ticketsFormBody {
  gap: 6px;
  padding: 12px 14px;
  display: grid;
}

.ticketsFormBody .field {
  gap: 5px;
  margin-top: 6px;
}

.ticketsFormTitle, .ticketsListTitle {
  margin: 0;
  font-size: 24px;
}

.ticketsFormGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}

.ticketsGridSpan2 {
  grid-column: 1 / -1;
}

.ticketsTargetSection {
  gap: 8px;
  padding: 10px 0 2px;
  display: grid;
}

.ticketsTargetHeader {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ticketsTargetTabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  display: grid;
}

.ticketsTargetTab {
  justify-content: center;
  min-height: 44px;
}

.ticketsTargetTab.isActive {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  color: color-mix(in srgb, var(--focus), black 12%);
  background: color-mix(in srgb, var(--focus), white 94%);
}

.ticketsTargetPickerField {
  margin-top: 0 !important;
}

.ticketsTargetSearchWrap {
  width: 100%;
}

.ticketsTargetPopover {
  z-index: 38;
  width: 100%;
  max-width: 100%;
  left: 0;
  right: 0;
}

.ticketsMaterialList {
  gap: 5px;
  margin-bottom: 4px;
  display: grid;
}

.ticketsMaterialSourceSearchWrap {
  width: 100%;
}

.ticketsMaterialSourcePopover {
  z-index: 36;
  width: 100%;
  max-width: 100%;
  left: 0;
  right: 0;
}

.ticketsMaterialRow {
  grid-template-columns: minmax(0, 1.5fr) 112px 100px auto;
  gap: 6px;
  display: grid;
}

.ticketsMiniBtn {
  min-height: 38px;
  padding: 5px 9px;
  font-size: 13px;
}

.ticketsMaterialRemoveBtn {
  justify-self: end;
  width: 38px;
  min-width: 38px;
  min-height: 38px;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.ticketsNotes {
  resize: vertical;
  min-height: 84px;
}

.ticketsAttachmentInputHidden {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.ticketsAttachmentDropzone {
  border: 1px dashed color-mix(in srgb, var(--stroke), var(--fg) 8%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 26%);
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 96px;
  margin-top: 4px;
  padding: 12px;
  transition: background-color .14s, border-color .14s, box-shadow .14s;
  display: grid;
}

.ticketsAttachmentDropzone:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
}

.ticketsAttachmentDropzone.isDragActive {
  background: color-mix(in srgb, var(--focus), white 93%);
  border-color: color-mix(in srgb, var(--focus), transparent 30%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 76%);
}

.ticketsAttachmentDropzone:focus-visible, .ticketsAttachmentInputHidden:focus-visible + .ticketsAttachmentDropzone {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 60%);
  outline: none;
}

.ticketsAttachmentDropzone.isDisabled {
  cursor: not-allowed;
  opacity: .72;
}

.ticketsAttachmentDropzoneLead {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.ticketsAttachmentDropzoneIcon {
  width: 22px;
  height: 22px;
  color: color-mix(in srgb, var(--muted), var(--fg) 25%);
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.ticketsAttachmentDropzoneIcon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.ticketsAttachmentDropzoneText {
  color: color-mix(in srgb, var(--fg), var(--muted) 30%);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}

.ticketsAttachmentDropzoneTextBlock {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.ticketsAttachmentDropzoneSubtext {
  color: color-mix(in srgb, var(--fg), var(--muted) 48%);
  font-size: 12px;
  line-height: 1.3;
}

.ticketsAttachmentDropzoneActions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.ticketsAttachmentDropzoneAction {
  min-width: 132px;
  min-height: 40px;
}

.ticketsAttachmentDropzoneActionSecondary {
  background: #fff;
}

.ticketsAttachmentDropzoneActionPhone {
  display: none;
}

.ticketsAttachmentGrid {
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 6px;
  margin-top: 6px;
  display: grid;
}

.ticketsReadOnlyAttachmentGrid {
  margin-top: 0;
}

.ticketsAttachmentItem {
  gap: 5px;
  min-width: 0;
  display: grid;
  position: relative;
}

.ticketsAttachmentPreviewBtn {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 10%);
  border-radius: calc(var(--radius) + 2px);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  cursor: zoom-in;
  padding: 0;
  line-height: 0;
  transition: border-color .14s, box-shadow .14s, background-color .14s, transform .14s;
  overflow: hidden;
}

.ticketsAttachmentPreviewBtn:hover, .ticketsAttachmentPreviewBtn:focus-visible {
  border-color: color-mix(in srgb, var(--focus), transparent 48%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus), transparent 78%);
  background: color-mix(in srgb, var(--focus), white 95%);
  transform: translateY(-1px);
}

.ticketsAttachmentPreview {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.ticketsAttachmentPreviewSurface {
  aspect-ratio: 4 / 3;
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

.ticketsAttachmentPreviewSurface.isDocumentPreview {
  background: linear-gradient(#fcfcfc, #f0f2f4);
}

.ticketsAttachmentPreviewDocument {
  object-fit: cover;
  object-position: top center;
  background: #fff;
}

.ticketsAttachmentPreviewFallback {
  background: linear-gradient(180deg, color-mix(in srgb, var(--bg), white 82%), color-mix(in srgb, var(--bg-2), white 30%));
  color: color-mix(in srgb, var(--fg), var(--muted) 26%);
  place-items: center;
  display: grid;
  position: relative;
}

.ticketsAttachmentPreviewFallback.isPDF {
  color: #c7392f;
  background: linear-gradient(#fff6f5 0%, #ffe5e2 100%);
}

.ticketsAttachmentPreviewFallback.isPDF .ticketsAttachmentPreviewBadge {
  display: none;
}

.ticketsAttachmentPreviewFallback.isPDF .ticketsAttachmentPreviewFallbackIcon {
  width: 42px;
  height: 42px;
}

.ticketsAttachmentPreviewBadge {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 4%);
  background: color-mix(in srgb, var(--bg), white 80%);
  letter-spacing: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 34px;
  height: 20px;
  padding: 0 8px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  top: 8px;
  left: 8px;
}

.ticketsAttachmentPreviewBadge.isDocumentPreview {
  color: #fff;
  -webkit-backdrop-filter: blur(6px);
  background: #c7392fc7;
  border-color: #ffffff57;
  min-width: 28px;
  height: 16px;
  padding: 0 6px;
  font-size: 9px;
  top: 6px;
  left: auto;
  right: 36px;
  box-shadow: 0 1px 2px #00000024;
}

.ticketsAttachmentPreviewFallbackIcon {
  width: 34px;
  height: 34px;
  display: block;
}

.ticketsAttachmentRemoveBtn {
  border: 1px solid color-mix(in srgb, var(--stroke), var(--fg) 12%);
  background: color-mix(in srgb, var(--bg), white 76%);
  width: 28px;
  height: 28px;
  color: color-mix(in srgb, var(--fg), var(--muted) 24%);
  cursor: pointer;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex;
  position: absolute;
  top: 4px;
  right: 4px;
  box-shadow: 0 1px 2px #00000024;
}

.ticketsAttachmentRemoveBtn svg {
  width: 14px;
  height: 14px;
  display: block;
}

.ticketsAttachmentRemoveBtn:hover, .ticketsAttachmentRemoveBtn:focus-visible {
  border-color: color-mix(in srgb, var(--danger), transparent 45%);
  background: color-mix(in srgb, var(--danger), white 84%);
  color: color-mix(in srgb, var(--danger), black 36%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--danger), transparent 82%);
}

.ticketsAttachmentFileName {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  font-size: 12px;
  line-height: 1.25;
  overflow: hidden;
}

.ticketsAttachmentMeta {
  justify-content: space-between;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.ticketsAttachmentSize {
  color: color-mix(in srgb, var(--fg), var(--muted) 42%);
  flex: none;
  font-size: 11px;
  line-height: 1.2;
}

@media (min-width: 901px) {
  .ticketsAttachmentDropzone {
    text-align: left;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .ticketsAttachmentDropzoneActions {
    justify-content: flex-end;
  }
}

.ticketsAttachedPill, .ticketsSavedPill {
  width: fit-content;
}

.ticketsActions {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ticketsActionsPrimary {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ticketsFormActionsBar .btn {
  min-width: 132px;
}

.ticketsSubmitBtnLocked:disabled {
  opacity: .62;
}

.ticketsListBody, .ticketsTableBody {
  gap: 12px;
  display: grid;
}

.ticketsHero, .ticketsEditorHero {
  min-height: 84px;
}

.ticketsHeaderAction {
  box-sizing: border-box;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 164px;
  min-height: 44px;
  display: inline-flex;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.ticketsEditorBackBtn {
  min-width: 120px;
  min-height: 44px;
}

.ticketsHeaderActionsDesktop {
  align-items: center;
  display: flex;
}

.ticketsHeaderActionsMobile {
  width: 100%;
  display: none;
}

.ticketsFiltersForm {
  gap: 10px;
  display: grid;
}

.ticketsFiltersSearchField {
  width: 100%;
  min-width: 0;
  margin-top: 0;
}

.ticketsFiltersMobileControls {
  width: 100%;
  display: none;
}

.ticketsFiltersToggleBtn {
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  display: inline-flex;
}

.ticketsFiltersBottomRow {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-end;
  gap: 10px;
  width: 100%;
  display: grid;
}

.ticketsFiltersBottomFilters {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
  gap: 10px;
  min-width: 0;
  display: grid;
}

.ticketsFilterFromField, .ticketsFilterToField {
  min-width: 0;
  margin-top: 0;
}

.ticketsFiltersClearField {
  place-self: end;
  display: flex;
}

.ticketsToolbarClearBtn {
  min-width: 96px;
  min-height: 44px;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.ticketsStatusWrap, .ticketsTypeWrap {
  min-width: 0;
  margin-top: 0;
}

.ticketsTableWrap {
  overflow-x: auto;
}

.ticketsListRows {
  gap: 8px;
  display: grid;
}

.ticketsTable {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

.ticketsTable thead th {
  text-align: left;
  letter-spacing: .01em;
  color: color-mix(in srgb, var(--fg), black 8%);
  border-bottom: 1px solid var(--stroke);
  white-space: nowrap;
  padding: 12px 10px;
  font-size: 14px;
  font-weight: 700;
}

.ticketsTable thead th:last-child {
  text-align: right;
}

.ticketsTable th:first-child, .ticketsTable td:first-child {
  width: 122px;
  padding-right: 18px;
}

.ticketsTable th:nth-child(2), .ticketsTable td:nth-child(2) {
  width: 94px;
  padding-left: 14px;
}

.ticketsTable th:nth-child(3), .ticketsTable td:nth-child(3) {
  width: 138px;
  padding-right: 18px;
}

.ticketsTable th:nth-child(4), .ticketsTable td:nth-child(4) {
  padding-left: 14px;
}

.ticketsTable th:nth-child(5), .ticketsTable td:nth-child(5) {
  width: 126px;
}

.ticketsTable tbody td {
  border-bottom: 1px solid var(--stroke);
  vertical-align: middle;
  padding: 12px 10px;
  font-size: 14px;
  line-height: 1.25;
}

.ticketsTable td:nth-child(3) .pill {
  white-space: nowrap;
}

.ticketsTableRow {
  transition: background-color .14s;
}

.ticketsTableRow:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
}

.adminApprovalsInfoCell {
  align-content: start;
  gap: 1px;
  min-width: 0;
  display: grid;
}

.adminApprovalsInfoLine {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  line-height: 1.22;
  display: block;
  overflow: hidden;
}

.adminApprovalsInfoLinePrimary {
  color: color-mix(in srgb, var(--fg), black 8%);
  font-size: 14px;
  font-weight: 500;
}

.adminApprovalsInfoLineSecondary {
  color: var(--muted);
  font-size: 12px;
}

.adminApprovalsInfoLineWithTargetHint {
  align-items: center;
  gap: 6px;
  display: flex;
  overflow: visible;
}

.adminApprovalsInfoLineWithInlineHints {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0;
  display: flex;
  overflow: visible;
}

.adminTicketTargetHint {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 6%);
  background: color-mix(in srgb, var(--bg), white 50%);
  width: 18px;
  height: 18px;
  color: color-mix(in srgb, var(--muted), var(--fg) 18%);
  border-radius: 5px;
  outline: none;
  flex: none;
  justify-content: center;
  align-items: center;
  display: inline-flex;
  position: relative;
}

.adminTicketTargetHint.isSite {
  color: color-mix(in srgb, var(--focus), black 10%);
  background: color-mix(in srgb, var(--focus), white 88%);
  border-color: color-mix(in srgb, var(--focus), transparent 72%);
}

.adminTicketTargetHint.isVehicle {
  color: color-mix(in srgb, var(--ok), black 8%);
  background: color-mix(in srgb, var(--ok), white 88%);
  border-color: color-mix(in srgb, var(--ok), transparent 72%);
}

.adminTicketTargetHintIcon {
  stroke-width: 1.9px;
  width: 12px;
  height: 12px;
}

.adminApprovalsExpenseAmount {
  font-variant-numeric: tabular-nums;
  flex: none;
}

.adminApprovalsExpenseSeparator {
  color: color-mix(in srgb, var(--muted), transparent 16%);
  flex: none;
}

.adminApprovalsInfoPrimaryText {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.adminApprovalsTicketTypeToken {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  background: color-mix(in srgb, var(--bg-2), white 40%);
  letter-spacing: .01em;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  align-items: center;
  min-width: 0;
  max-width: 160px;
  min-height: 20px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  display: inline-flex;
  overflow: hidden;
}

.adminApprovalsTicketTypeToken.isExpense {
  background: #faf5ee;
  border-color: #c686258c;
}

.adminApprovalsTicketTypeToken.isMaterial {
  border-color: color-mix(in srgb, var(--ok), transparent 50%);
  background: color-mix(in srgb, var(--ok), white 93%);
}

.adminApprovalsTicketTypeToken.isMisc {
  border-color: color-mix(in srgb, var(--focus), transparent 50%);
  background: color-mix(in srgb, var(--focus), white 93%);
}

.adminApprovalsInfoRouteHints {
  align-items: baseline;
  gap: .16em;
  margin-left: .38em;
  display: inline-flex;
}

.adminApprovalsTaskCountHint {
  -webkit-text-decoration: underline dotted color-mix(in srgb, var(--muted), var(--fg) 20%);
  text-decoration: underline dotted color-mix(in srgb, var(--muted), var(--fg) 20%);
  text-underline-offset: 2px;
  cursor: default;
  outline: none;
}

.adminApprovalsTaskCountTooltip {
  z-index: 120;
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  min-width: 180px;
  max-width: min(360px, 72vw);
  max-height: 220px;
  color: color-mix(in srgb, var(--fg), black 8%);
  white-space: normal;
  opacity: 1;
  pointer-events: none;
  background: #fff;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.35;
  position: fixed;
  overflow: auto;
  box-shadow: 0 10px 24px #00000029;
}

.adminApprovalsTaskCountTooltipLine {
  display: block;
}

.adminApprovalsInfoLineGhost {
  visibility: hidden;
}

.adminApprovalsInfoLineAttachments {
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  display: flex;
  overflow: visible;
}

.adminApprovalsAttachmentStrip {
  align-items: center;
  gap: 3px;
  min-width: 0;
  display: inline-flex;
}

.adminApprovalsAttachmentCount {
  color: color-mix(in srgb, var(--fg), black 8%);
  flex: none;
  min-width: 14px;
  font-size: 12px;
  font-weight: 600;
}

.adminApprovalsAttachmentCountFallback {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 2%);
  background: color-mix(in srgb, var(--bg), white 55%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  line-height: 1;
  display: inline-flex;
}

.adminApprovalsAttachmentThumbLink {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  appearance: none;
  cursor: pointer;
  background: #fff;
  border-radius: 3px;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  padding: 0;
  display: inline-flex;
  position: relative;
}

.adminApprovalsAttachmentThumbLink:hover {
  border-color: color-mix(in srgb, var(--focus), transparent 25%);
}

.adminApprovalsAttachmentThumbLink.isPdfFallback {
  background: none;
  border-color: #0000;
  border-radius: 0;
}

.adminApprovalsAttachmentThumbLink.isPdfFallback:hover {
  border-color: #0000;
}

.adminApprovalsAttachmentThumb {
  object-fit: cover;
  border-radius: 2px;
  width: 100%;
  height: 100%;
  display: block;
}

.adminApprovalsAttachmentThumbFrame {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.adminApprovalsAttachmentThumbFrame.isDocumentPreview {
  background: #fff;
}

.adminApprovalsAttachmentThumbDocumentPreview {
  object-fit: cover;
  object-position: top center;
  background: #fff;
}

.adminApprovalsAttachmentThumbFallback {
  background: linear-gradient(180deg, color-mix(in srgb, var(--bg), white 72%), color-mix(in srgb, var(--bg-2), white 18%));
  color: color-mix(in srgb, var(--fg), var(--muted) 30%);
  place-items: center;
  display: grid;
  position: relative;
}

.adminApprovalsAttachmentThumbFallback.isPDF {
  color: #c7392f;
  background: none;
}

.adminApprovalsAttachmentThumbFallback.isPDF .adminApprovalsAttachmentThumbBadge {
  display: none;
}

.adminApprovalsAttachmentThumbFallback.isPDF .adminApprovalsAttachmentThumbFallbackIcon {
  width: 18px;
  height: 18px;
}

.adminApprovalsAttachmentThumbBadge {
  background: color-mix(in srgb, var(--bg), white 74%);
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 10%);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-width: 11px;
  height: 8px;
  padding: 0 2px;
  font-size: 6px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  top: 1px;
  left: 1px;
}

.adminApprovalsAttachmentThumbBadge.isDocumentPreview {
  color: #fff;
  background: #ca453b;
  border-color: #9f241bc7;
}

.adminApprovalsAttachmentThumbFallbackIcon {
  width: 11px;
  height: 11px;
  display: block;
}

.adminApprovalsAttachmentPreviewTrigger {
  border-radius: 2px;
  outline: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: inline-flex;
  overflow: hidden;
}

.adminApprovalsAttachmentPreviewTooltip {
  z-index: 120;
  width: auto;
  height: auto;
  box-shadow: none;
  pointer-events: none;
  background: none;
  border: 0;
  padding: 0;
  position: fixed;
  overflow: visible;
}

.adminApprovalsAttachmentPreviewTooltip.isDocumentPreview {
  width: auto;
  height: auto;
  padding: 0;
}

.adminApprovalsAttachmentPreviewTooltipLine {
  width: max-content;
  max-width: calc(100vw - 20px);
  line-height: 0;
  display: block;
}

.adminApprovalsAttachmentPreviewFrame {
  max-width: calc(100vw - 20px);
  box-shadow: 0 10px 28px color-mix(in srgb, var(--fg), transparent 84%);
  border-radius: 8px;
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.adminApprovalsAttachmentPreviewFrame.isDocumentPreview {
  max-width: calc(100vw - 20px);
  display: inline-block;
}

.adminApprovalsAttachmentPreviewImage {
  object-fit: contain;
  border-radius: inherit;
  background: none;
  width: auto;
  max-width: min(300px, 100vw - 20px);
  height: auto;
  max-height: min(220px, 100svh - 24px);
  display: block;
}

.adminApprovalsAttachmentPreviewImage.isDocumentPreview {
  border-radius: inherit;
  max-width: min(336px, 100vw - 20px);
  max-height: min(432px, 100svh - 24px);
  box-shadow: none;
}

.adminApprovalsAttachmentMore {
  text-align: center;
  min-width: 20px;
  color: var(--muted);
  flex: none;
  font-size: 11px;
  line-height: 1;
}

.adminApprovalsAttachmentLoadingDot {
  background: color-mix(in srgb, var(--focus), var(--bg) 45%);
  opacity: .7;
  border-radius: 999px;
  flex: none;
  width: 6px;
  height: 6px;
}

.ticketsTableActionsCell {
  text-align: right;
}

.ticketsDateCell {
  white-space: nowrap;
}

.ticketsRowOpenBtn {
  text-align: center;
  border-color: color-mix(in srgb, var(--stroke), black 10%);
  background: color-mix(in srgb, var(--bg-2), var(--bg) 18%);
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 74px;
  min-height: 38px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  padding: 0 13px !important;
}

.ticketsReportIdCell {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 220px;
  display: inline-block;
  overflow: hidden;
}

.ticketsReportIdLink {
  color: color-mix(in srgb, var(--focus), black 12%);
  text-decoration: underline;
  -webkit-text-decoration-color: color-mix(in srgb, var(--focus), transparent 48%);
  text-decoration-color: color-mix(in srgb, var(--focus), transparent 48%);
  text-underline-offset: .14em;
}

.ticketsReportIdLink:hover, .ticketsReportIdLink:focus-visible {
  color: color-mix(in srgb, var(--focus), black 22%);
  text-decoration-color: currentColor;
}

.ticketsAttachedPillLink {
  color: inherit;
  text-underline-offset: .14em;
  text-decoration: underline;
}

.ticketsMobileList {
  display: none;
}

.ticketsMobileItem {
  border: 1px solid var(--stroke);
  border-radius: var(--radius);
  background: var(--bg-2);
  color: var(--fg);
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  text-decoration: none;
  transition: background-color .14s;
  display: flex;
}

.ticketsMobileItem:hover {
  background: color-mix(in srgb, var(--focus), white 96%);
}

.ticketsMobileItem:active {
  background: color-mix(in srgb, var(--fg), white 95%);
}

.ticketsMobileItemMain {
  flex: 1 1 0;
  gap: 3px;
  min-width: 0;
  display: grid;
}

.ticketsMobilePrimary {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  font-size: 14px;
  font-weight: 700;
  overflow: hidden;
}

.ticketsMobileSecondary {
  white-space: nowrap;
  min-width: 0;
  color: var(--muted);
  flex: 1 1 0;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  display: flex;
  overflow: hidden;
}

.ticketsMobileSupportRow {
  min-width: 0;
  color: var(--muted);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  line-height: 1.2;
  display: flex;
}

.ticketsMobileMetaDate, .ticketsMobileMetaSeparator {
  flex: none;
}

.ticketsMobileMetaValue, .ticketsMobileSupportText {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.ticketsMobileAttachmentBadge {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.ticketsMobileAttachmentIcon {
  width: 13px;
  height: 13px;
  color: color-mix(in srgb, var(--muted), var(--fg) 22%);
}

.ticketsMobileAttachmentCount {
  font-variant-numeric: tabular-nums;
}

.ticketsMobileRight {
  flex: none;
  align-items: flex-start;
  gap: 6px;
  margin-left: 10px;
  padding-top: 1px;
  display: inline-flex;
}

.ticketsMobileStatusPill {
  letter-spacing: .02em;
  white-space: nowrap;
  min-height: 20px;
  padding: 2px 8px;
  font-size: 10px;
  line-height: 1.1;
}

.ticketsMobileReportMeta {
  max-width: 100%;
}

.ticketsMobileReportId {
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
  max-width: 150px;
  display: inline-block;
  overflow: hidden;
}

@media (hover: none), (pointer: coarse) {
  .btn:hover:not(:disabled) {
    background: var(--bg-2);
    border-color: var(--stroke);
  }

  .btnPrimary:hover:not(:disabled) {
    background: var(--accent);
  }

  .btnAction:hover:not(:disabled) {
    background: var(--focus);
  }

  .btnDanger:hover:not(:disabled) {
    background: var(--danger);
  }

  .btnSuccess:hover:not(:disabled) {
    background: var(--ok);
  }
}

@media (max-width: 640px) {
  .portalDetailHeroBody {
    gap: 14px;
    padding: 16px 14px !important;
  }

  .portalDetailHeroTitle {
    font-size: 28px;
  }

  .portalDetailHeroAside {
    justify-items: stretch;
    width: 100%;
  }

  .portalDetailSummaryChip {
    text-align: left;
    min-width: 0;
  }

  .reportReadOnlyHeroBody {
    gap: 12px;
    position: relative;
    padding: 14px !important;
  }

  .reportReadOnlyHeroTitleBlock {
    max-width: 100%;
    padding-right: 128px;
  }

  .reportReadOnlySummaryBar {
    justify-content: flex-end;
    gap: 0;
    width: auto;
    position: absolute;
    top: 14px;
    right: 14px;
  }

  .reportReadOnlyStatusPill {
    margin-left: 0;
  }

  .ticketsReadOnlyHeroBody {
    gap: 10px;
    position: relative;
    padding: 12px !important;
  }

  .ticketsReadOnlyHeroTitleBlock {
    max-width: 100%;
    padding-right: 136px;
  }

  .ticketsReadOnlyHeroAside {
    justify-items: end;
    width: auto;
    position: absolute;
    top: 12px;
    right: 12px;
  }

  .ticketsReadOnlyHeroAside .portalDetailStatusPill {
    min-height: 34px;
    padding-left: 12px;
    padding-right: 12px;
  }

  .ticketsReadOnlyFieldGrid {
    gap: 8px;
  }

  .ticketsReadOnlyFieldGrid .portalDetailField {
    padding: 10px 12px;
  }

  .ticketsReadOnlyHeroTitleMaterial {
    max-width: 8.6ch;
  }

  .ticketsReadOnlyFieldGrid.isExpense {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldDate {
    order: 1;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldSubmitted {
    order: 2;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldAmount {
    order: 3;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldCategory {
    order: 4;
  }

  .ticketsReadOnlyFieldGrid.isExpense .ticketsReadOnlyFieldTarget {
    order: 5;
    grid-column: 1 / -1;
  }

  .ticketsReadOnlyFieldGrid.isMisc {
    grid-template-columns: 1fr;
  }

  .ticketsReadOnlyCombinedField {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .ticketsReadOnlyCombinedFieldDivider {
    width: 100%;
    height: 1px;
  }

  .portalDetailFieldGrid {
    grid-template-columns: 1fr;
  }

  .portalDetailSection {
    padding: 16px 14px;
  }

  .reportEditorContextCard .cardBody.reportWorkerContextBody {
    gap: 8px;
    padding: 12px !important;
  }

  .reportEditorContextCard .reportSectionTitle {
    font-size: 19px !important;
  }

  .reportEditorContextSite {
    gap: 6px;
  }

  .reportWorkerFieldGrid {
    gap: 8px;
  }

  .reportWorkerFieldGrid .field {
    gap: 4px;
    margin-top: 0;
  }
}

@media (max-width: 900px) {
  .portalDetailHeroTop {
    flex-direction: column;
    align-items: stretch;
  }

  .portalDetailHeroAside {
    justify-items: start;
  }

  .portalDetailListRow {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .portalDetailListValue {
    justify-self: start;
  }

  .portalFormGrid2 {
    grid-template-columns: 1fr;
  }

  .portalHeroActionsDesktop {
    display: none !important;
  }

  .portalHeroActionsMobile {
    width: 100%;
    min-width: 0;
    display: flex;
  }

  .portalHeaderActionBtn, .portalHeroBackBtn {
    width: 100%;
    min-width: 0;
  }

  .homeTrackerPrimary {
    grid-template-rows: auto;
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    gap: 0;
  }

  .homeTrackerMetricZone {
    min-height: 196px;
    padding: 24px 28px;
  }

  :is(.homeTrackerWorkspace, .homeTrackerWorkspace:has(.homeTrackerNoticeStack:not(:empty))) {
    grid-column: 2;
    grid-template-rows: auto auto auto;
    grid-template-columns: minmax(0, 1fr);
    min-height: 220px;
  }

  .homeTrackerWorkspace.isEnded {
    grid-template-rows: auto;
    grid-template-columns: minmax(0, 1fr);
    min-height: 196px;
  }

  .homeTrackerStateColumn {
    grid-column: 1;
    padding: 24px 24px 8px;
  }

  .homeTrackerWorkspace.isEnded .homeTrackerStateColumn {
    padding: 20px 24px;
  }

  .homeTrackerControls {
    grid-column: 1;
    justify-self: stretch;
    width: 100%;
    max-width: none;
    padding: 8px 24px 24px;
  }

  .homeTrackerNoticeStack {
    grid-column: 1;
    padding: 0 24px 24px;
  }

  .homeActionsGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .homeTrackerControls .btn {
    width: 100%;
    min-width: 0;
  }

  .homeTrackerPermissionNotice {
    border-radius: 12px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 14px;
  }

  .homeTrackerPermissionActionBtn {
    min-height: 44px;
  }

  .homeTrackerStartBtn {
    font-size: 15px;
  }

  .homeTrackerSiteDialogCard {
    width: 100%;
  }

  .homeTrackerSiteDialogBody {
    gap: 12px;
  }

  .homeTrackerSiteOption {
    min-height: 68px;
    padding: 11px 12px;
  }

  .homeTrackerSiteOptionName {
    font-size: 15px;
  }

  .homeTrackerTimelineMain {
    flex-direction: row;
    align-items: baseline;
    gap: 8px;
  }

  .homeTrackerTimelineMetaRow {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 8px;
  }

  .homeTrackerTimelineHeaderToggle {
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
  }

  .homeTrackerTimelineHeaderMeta {
    flex: none;
    justify-content: flex-end;
    width: auto;
  }

  .homeTrackerTimelineHeaderHint {
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 132px;
    font-size: 11px;
    line-height: 1.15;
    overflow: hidden;
  }

  .ticketsFormGrid, .ticketsFormGrid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .ticketsFormBody {
    gap: 8px;
    padding: 14px;
  }

  .ticketsFormBody .field {
    gap: 6px;
    margin-top: 8px;
  }

  .ticketsNotes {
    min-height: 92px;
  }

  .ticketsAttachmentGrid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }

  .ticketsAttachmentPreview {
    aspect-ratio: 1;
  }

  .ticketsAttachmentRemoveBtn {
    width: 24px;
    height: 24px;
  }

  .ticketsAttachmentRemoveBtn svg {
    width: 12px;
    height: 12px;
  }

  .ticketsAttachmentFileName {
    display: none;
  }

  .ticketsAttachmentMeta {
    justify-content: flex-end;
  }

  .ticketsAttachmentSize {
    font-size: 10px;
  }

  .ticketsAttachmentDropzone {
    text-align: center;
    border-width: 2px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
    min-height: 96px;
    padding: 12px;
    display: flex;
  }

  .ticketsAttachmentDropzoneLead {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 100%;
  }

  .ticketsAttachmentDropzoneIcon {
    width: 20px;
    height: 20px;
  }

  .ticketsAttachmentDropzoneTextBlock {
    text-align: center;
    justify-items: center;
    width: 100%;
  }

  .ticketsAttachmentDropzoneText {
    font-size: 13px;
  }

  .ticketsAttachmentDropzoneSubtext {
    font-size: 11px;
  }

  .ticketsAttachmentDropzoneActions {
    gap: 8px;
    width: 100%;
    display: grid;
  }

  .ticketsAttachmentDropzoneAction {
    width: 100%;
  }

  .ticketsAttachmentDropzoneActionPhone {
    display: inline-flex;
  }

  .ticketsHeaderActionsDesktop {
    display: none;
  }

  .ticketsHeaderActionsMobile {
    display: flex;
  }

  .ticketsHeaderAction {
    width: 100%;
  }

  .ticketsFiltersMobileControls {
    display: flex;
  }

  .ticketsFiltersToggleBtn {
    width: 100%;
    min-width: 0;
  }

  .ticketsFiltersBottomRow {
    display: none;
  }

  .ticketsFiltersBottomRow.isOpen {
    grid-template-columns: 1fr;
    gap: 8px;
    display: grid;
  }

  .ticketsFiltersBottomFilters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
  }

  .ticketsFilterFromField, .ticketsFilterToField {
    grid-column: span 1;
  }

  .ticketsStatusWrap, .ticketsTypeWrap {
    grid-column: 1 / -1;
  }

  .ticketsFilterFromField .input, .ticketsFilterToField .input {
    min-width: 0;
  }

  .ticketsFiltersClearField {
    order: -1;
    width: 100%;
    margin-left: 0;
  }

  .ticketsFiltersClearField .ticketsToolbarClearBtn {
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }

  .ticketsMaterialRow {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 52px;
    align-items: end;
  }

  .ticketsMaterialRow > :first-child {
    grid-column: 1 / -1;
  }

  .ticketsMaterialRow > :nth-child(4) {
    grid-column: 3;
    justify-self: stretch;
  }

  .ticketsMaterialRemoveBtn {
    width: 52px;
    min-width: 52px;
    min-height: 44px;
  }

  .ticketsMaterialSourcePopover .cmPopoverList {
    max-height: min(260px, 42vh);
  }

  .ticketsActions {
    flex-direction: column;
    align-items: stretch;
  }

  .ticketsActionsPrimary {
    flex-direction: column;
    gap: 8px;
    width: 100%;
    display: flex;
  }

  .ticketsActionsPrimary .btn {
    width: 100%;
  }

  .ticketsTableWrap {
    display: none;
  }

  .ticketsMobileList {
    gap: 8px;
    display: grid;
  }

  .ticketsMobileItem {
    align-items: center;
    padding: 10px;
  }

  .ticketsMiniBtn {
    min-height: 44px;
  }

  .ticketsReportIdCell {
    max-width: 120px;
  }
}

@media (max-width: 640px) {
  .homeTrackerLiveBadge {
    max-width: 100%;
  }

  .homeTrackerPrimary {
    grid-template-rows: auto;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    min-height: 0;
  }

  .homeTrackerMetricZone {
    text-align: center;
    grid-row: auto;
    justify-items: center;
    gap: 16px;
    min-height: 166px;
    padding: 22px 20px 20px;
    display: grid;
  }

  .homeTrackerTimerBlock, .homeTrackerMetricZone .homeTrackerTimelineEmptyLine {
    text-align: center;
    justify-items: center;
  }

  :is(.homeTrackerWorkspace, .homeTrackerWorkspace:has(.homeTrackerNoticeStack:not(:empty))) {
    grid-column: 1;
    grid-template-rows: auto auto auto;
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }

  .homeTrackerWorkspace.isEnded {
    grid-template-rows: auto;
    grid-template-columns: minmax(0, 1fr);
  }

  .homeTrackerStateColumn {
    grid-column: 1;
    justify-items: start;
    min-height: 0;
    padding: 18px 18px 6px;
  }

  .homeTrackerWorkspace.isEnded .homeTrackerStateColumn {
    padding: 18px;
  }

  .homeTrackerStatusRow {
    justify-content: flex-start;
  }

  .homeTrackerControls, .homeTrackerCard.isCompact .homeTrackerControls {
    grid-column: 1;
    justify-self: stretch;
    width: 100%;
    max-width: none;
    padding: 8px 18px 18px;
  }

  .homeTrackerNoticeStack {
    grid-column: 1;
    padding: 0 18px 18px;
  }

  .homeTrackerPermissionActions {
    grid-template-columns: minmax(0, 1fr);
    display: grid;
  }

  .homeTrackerPermissionActionBtn {
    width: 100%;
  }

  .homeTrackerTimeline {
    padding: 8px 14px 14px;
  }

  .homeTrackerTimelineList {
    grid-template-columns: minmax(0, 1fr);
    gap: 1px;
  }

  .homeTrackerTimelineItem {
    padding: 12px;
  }

  .homeTrackerTimerValue, .homeTrackerCard.isCompact .homeTrackerTimerValue {
    font-size: clamp(40px, 12.4vw, 48px);
  }

  .homeTrackerLastEvent {
    text-align: left;
    justify-items: start;
  }
}

@media (min-width: 641px) and (max-width: 900px) {
  .portalDetailFieldGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ticketsReadOnlyFieldGrid.isMisc {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 360px) {
  .homeTrackerTimelineHeaderHint {
    max-width: 96px;
  }

  .ticketsAttachmentGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.portalResponsiveSheetBackdrop {
  z-index: 1200;
  background: color-mix(in srgb, var(--fg), transparent 78%);
  width: 100vw;
  padding-top: max(12px, env(safe-area-inset-top));
  justify-content: stretch;
  align-items: flex-end;
  display: flex;
  position: fixed;
  top: 0;
  bottom: 0;
  left: calc(50% - 50vw);
}

.portalResponsiveSheetCard {
  border-radius: 10px 10px 0 0;
  width: 100%;
  max-height: min(88vh, 960px);
  margin: 0;
  overflow: hidden;
}

.portalResponsiveSheetBody {
  overscroll-behavior: contain;
  max-height: min(88vh, 960px);
  padding-bottom: calc(18px + env(safe-area-inset-bottom));
  flex-direction: column;
  gap: 16px;
  display: flex;
  overflow-y: auto;
}

.portalResponsiveSheetHeader {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.portalResponsiveSheetHeaderCopy {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.portalResponsiveSheetHeaderActions {
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.portalResponsiveSheetLabel {
  margin: 0;
}

.portalResponsiveSheetTitle {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.2;
}

.portalResponsiveSheetCloseBtn {
  white-space: nowrap;
  min-height: 44px;
}

.portalResponsiveSheetCloseBtn.isIconOnly {
  background: none;
  border-color: #0000;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  padding: 0;
  display: inline-grid;
}

.portalResponsiveSheetCloseBtn.isIconOnly:hover, .portalResponsiveSheetCloseBtn.isIconOnly:focus-visible {
  background: color-mix(in srgb, var(--focus), white 95%);
  color: var(--focus);
  border-color: #0000;
}

.portalResponsiveSheetCloseBtn.isIconOnly svg {
  width: 19px;
  height: 19px;
}

.timesheetMonthHubBody {
  gap: 14px;
  display: grid;
}

.timesheetMonthHubIssueRow {
  gap: 12px;
  display: grid;
}

.timesheetMonthHubAttention {
  border: 1px solid var(--stroke);
  background: var(--bg);
  border-radius: 8px;
  gap: 8px;
  padding: 12px;
  display: grid;
}

.timesheetMonthHubBlockedSummary {
  border: 1px solid color-mix(in srgb, var(--stroke), transparent 8%);
  background: var(--bg);
  border-radius: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  align-content: start;
  align-items: start;
  gap: 12px;
  padding: 16px;
  display: grid;
}

.timesheetMonthHubBlockedIcon {
  background: color-mix(in srgb, var(--focus), white 86%);
  width: 40px;
  height: 40px;
  color: var(--focus);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.timesheetMonthHubBlockedIcon svg {
  width: 20px;
  height: 20px;
}

.timesheetMonthHubBlockedCopy {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.timesheetMonthHubBlockedTitle, .timesheetMonthHubBlockedText, .timesheetMonthHubBlockedHelp {
  margin: 0;
}

.timesheetMonthHubBlockedText {
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1.35;
}

.timesheetMonthHubBlockedHelp {
  font-size: .875rem;
  line-height: 1.4;
}

@media (min-width: 900px) {
  .timesheetMonthHubIssueRow--split {
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, .85fr);
    align-items: start;
  }
}

.timesheetMonthHubAttentionHeader {
  gap: 4px;
  display: grid;
}

.timesheetMonthHubAttentionTitle {
  margin: 0;
}

.timesheetMonthHubAttentionSummary {
  margin: 0;
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.25;
}

.timesheetMonthHubAttentionMeta {
  margin: 0;
  font-size: .875rem;
}

.timesheetMonthHubAttentionList {
  gap: 0;
  display: grid;
}

.timesheetMonthHubAttentionItem {
  border: 0;
  border-bottom: 1px solid var(--stroke);
  text-align: left;
  cursor: pointer;
  background: none;
  border-radius: 0;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  padding: 12px 0;
  display: grid;
}

.timesheetMonthHubAttentionItem--compact {
  min-height: 44px;
  padding: 10px 0;
}

.timesheetMonthHubAttentionItem--missing, .timesheetMonthHubAttentionItem--report, .timesheetMonthHubAttentionItem--hours {
  color: inherit;
}

.timesheetMonthHubAttentionItem--missing .timesheetMonthHubAttentionDate, .timesheetMonthHubAttentionItem--hasMissing .timesheetMonthHubAttentionDate {
  color: color-mix(in srgb, var(--danger), black 12%);
}

.timesheetMonthHubAttentionItem--mixed .timesheetMonthHubAttentionDate, .timesheetMonthHubAttentionItem--hours .timesheetMonthHubAttentionDate, .timesheetMonthHubAttentionItem--report .timesheetMonthHubAttentionDate {
  color: color-mix(in srgb, var(--warn), black 18%);
}

.timesheetMonthHubAttentionItem:hover {
  color: inherit;
}

.timesheetMonthHubAttentionItem:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
  border-radius: 6px;
}

.timesheetMonthHubAttentionDate {
  font-family: var(--font-mono);
  white-space: nowrap;
  font-size: .875rem;
}

.timesheetMonthHubAttentionBody {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.timesheetMonthHubAttentionBody--singleLine {
  display: block;
}

.timesheetMonthHubAttentionLabel {
  min-width: 0;
  font-size: .9375rem;
  line-height: 1.35;
}

.timesheetMonthHubAttentionBody--singleLine .timesheetMonthHubAttentionLabel {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.timesheetMonthHubAttentionDetail {
  font-size: .8125rem;
  line-height: 1.35;
}

.timesheetMonthHubAttentionChevron {
  color: var(--muted);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
}

.timesheetMonthHubAttentionMoreBtn {
  min-height: 44px;
  color: var(--focus);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  justify-self: start;
  padding: 8px 0 0;
  font-weight: 600;
}

.timesheetMonthHubAttentionMoreBtn:hover {
  text-decoration: underline;
}

.timesheetMonthHubAttentionMoreBtn:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 4px;
  border-radius: 6px;
}

.timesheetCellHint--missing {
  color: var(--calendar-missing-text);
}

.timesheetCellHint--missingToday {
  color: var(--calendar-neutral-text);
}

.timesheetCellHint--missingLocked {
  color: var(--calendar-missing-text);
}

.timesheetCellHint--report, .timesheetCellHint--clockedReview {
  color: var(--calendar-attention-text);
}

.timesheetCellHint--dayoff {
  color: var(--calendar-day-off-text);
}

.timesheetCellHint--absence {
  color: inherit;
}

.timesheetToneNeutral, .timesheetToneLoading {
  color: var(--calendar-blank-text);
  background: var(--calendar-blank-fill);
  border: 1px solid var(--calendar-blank-border);
}

.calendarCell.isLoading {
  cursor: progress;
}

.timesheetToneWeekend {
  color: var(--calendar-weekend-text);
  background: var(--calendar-weekend-fill);
  border: 1px solid var(--calendar-weekend-border);
}

.timesheetToneWorked {
  color: var(--calendar-worked-text);
  background: var(--calendar-worked-fill);
  border: 1px solid var(--calendar-worked-border);
}

.timesheetToneClockedReview {
  color: var(--calendar-attention-text);
  background: var(--calendar-attention-fill);
  border: 1px solid var(--calendar-attention-border);
}

.timesheetToneMissing {
  color: var(--calendar-missing-text);
  background: var(--calendar-missing-fill);
  border: 1px solid var(--calendar-missing-border);
}

.timesheetToneMissing .timesheetCellDayNum {
  color: var(--calendar-missing-text);
}

.timesheetToneMissingToday {
  color: var(--calendar-neutral-text);
  background: var(--calendar-neutral-fill);
  border: 1px solid var(--calendar-neutral-border);
}

.timesheetToneMissingLocked {
  color: var(--calendar-missing-text);
  background: repeating-linear-gradient(135deg,
      transparent 0,
      transparent 9px,
      var(--calendar-readonly-stripe) 9px,
      var(--calendar-readonly-stripe) 10px),
    var(--calendar-missing-fill);
  border: 1px solid var(--calendar-missing-border);
}

.timesheetToneMissingLocked .timesheetCellDayNum {
  color: var(--calendar-missing-text);
}

.timesheetToneAbsence {
  color: var(--calendar-absence-text);
  background: var(--calendar-absence-fill);
  border: 1px solid var(--calendar-absence-border);
}

.timesheetToneDayOff {
  color: var(--calendar-day-off-text);
  background: var(--calendar-day-off-fill);
  border: 1px solid var(--calendar-day-off-border);
}

.timesheetToneHoliday {
  color: var(--calendar-holiday-text);
  background: var(--calendar-holiday-fill);
  border: 1px solid var(--calendar-holiday-border);
}

.timesheetToneAbsence--07, .timesheetToneAbsence--08, .timesheetToneAbsence--10, .timesheetToneAbsence--11 {
  background: repeating-linear-gradient(135deg,
      transparent 0,
      transparent 9px,
      var(--calendar-readonly-stripe) 9px,
      var(--calendar-readonly-stripe) 10px),
    var(--calendar-holiday-fill);
  border-color: var(--calendar-holiday-border);
}

.timesheetToneAbsence--09 {
  background: repeating-linear-gradient(135deg,
      transparent 0,
      transparent 9px,
      var(--calendar-readonly-stripe) 9px,
      var(--calendar-readonly-stripe) 10px),
    var(--calendar-day-off-fill);
  border-color: var(--calendar-day-off-border);
}

.timesheetLegendSwatch.timesheetToneAbsence {
  background: var(--calendar-absence-base);
  border-color: var(--calendar-absence-border);
}

.timesheetLegendSwatch.timesheetToneDayOff {
  background: var(--calendar-day-off-base);
  border-color: var(--calendar-day-off-border);
}

.timesheetLegendSwatch.timesheetToneHoliday {
  background: var(--calendar-holiday-base);
  border-color: var(--calendar-holiday-border);
}

.timesheetCalendarDayLink {
  cursor: pointer;
}

.timesheetCalendarDayLink.isReadOnly {
  opacity: .9;
}

.timesheetDaySummarySheetCard {
  border-radius: 10px 10px 0 0;
}

.timesheetDaySummarySheetBody {
  gap: 18px;
}

.timesheetDaySummaryContent {
  gap: 16px;
  display: grid;
}

.timesheetDaySummaryHero {
  border: 1px solid var(--stroke);
  background: color-mix(in srgb, var(--bg), var(--bg-2) 42%);
  color: var(--calendar-neutral-text);
  border-radius: 8px;
  padding: 14px;
}

.timesheetDaySummaryHero--review {
  color: var(--calendar-attention-text);
  border-color: var(--calendar-attention-border);
  background: var(--calendar-attention-fill);
}

.timesheetDaySummaryHero--worked {
  color: var(--calendar-worked-text);
  border-color: var(--calendar-worked-border);
  background: var(--calendar-worked-fill);
}

.timesheetDaySummaryHero--missing {
  color: var(--calendar-missing-text);
  border-color: var(--calendar-missing-border);
  background: var(--calendar-missing-fill);
}

.timesheetDaySummaryHero--missingToday, .timesheetDaySummaryHero--future {
  color: var(--calendar-neutral-text);
  border-color: var(--calendar-neutral-border);
  background: var(--calendar-neutral-fill);
}

.timesheetDaySummaryHero--dayOff {
  color: var(--calendar-day-off-text);
  border-color: var(--calendar-day-off-border);
  background: var(--calendar-day-off-fill);
}

.timesheetDaySummaryHero--absence {
  color: var(--calendar-absence-text);
  border-color: var(--calendar-absence-border);
  background: var(--calendar-absence-fill);
}

.timesheetDaySummaryHero--holiday {
  color: var(--calendar-holiday-text);
  border-color: var(--calendar-holiday-border);
  background: var(--calendar-holiday-fill);
}

.timesheetDaySummaryHeroBody {
  gap: 8px;
  display: grid;
}

.timesheetDaySummaryHeroTitle {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.2;
}

.timesheetDaySummaryHeroLead {
  color: color-mix(in srgb, currentColor, var(--muted) 42%);
  margin: 0;
  font-size: .9375rem;
}

.timesheetDaySummaryHeroNotes {
  gap: 4px;
  display: grid;
}

.timesheetDaySummaryHeroNote {
  margin: 0;
}

.timesheetDaySummaryChipRow {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.timesheetDaySummaryChip {
  align-items: center;
  min-height: 32px;
  display: inline-flex;
}

.timesheetDaySummaryPrimaryAction {
  display: grid;
}

.timesheetDaySummaryPrimaryActionBtn {
  width: 100%;
  min-height: 48px;
}

.timesheetDaySummarySection {
  gap: 12px;
  display: grid;
}

.timesheetDaySummarySectionHeader {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.timesheetDaySummarySectionTitle {
  margin: 0;
  font-size: 1rem;
  line-height: 1.2;
}

.timesheetDaySummarySectionHeading {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.timesheetDaySummarySectionHeader--timeclock {
  flex-wrap: nowrap;
  align-items: center;
}

.timesheetDaySummarySectionHeading--timeclock {
  flex-wrap: nowrap;
  flex: auto;
  min-width: 0;
}

.timesheetDaySummaryStatusBadge {
  white-space: nowrap;
  cursor: default;
  -webkit-user-select: none;
  user-select: none;
  border: 1px solid #0000;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  min-height: 22px;
  padding: 0 8px;
  font-size: .6875rem;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
}

.timesheetDaySummaryStatusBadgeDot {
  background: currentColor;
  border-radius: 999px;
  flex: none;
  width: 6px;
  height: 6px;
}

.timesheetDaySummaryStatusBadge--active {
  border-color: color-mix(in srgb, var(--ok), transparent 75%);
  background: color-mix(in srgb, var(--ok), white 90%);
  color: color-mix(in srgb, var(--ok), black 18%);
}

.timesheetDaySummaryStatusBadge--paused {
  border-color: color-mix(in srgb, var(--warn), transparent 78%);
  background: color-mix(in srgb, var(--warn), white 91%);
  color: color-mix(in srgb, var(--warn), black 24%);
}

.timesheetDaySummaryStatusBadge--closed {
  border-color: color-mix(in srgb, var(--stroke-strong), transparent 82%);
  background: color-mix(in srgb, var(--bg-2), white 45%);
  color: color-mix(in srgb, var(--muted), black 12%);
}

.timesheetDaySummaryStatusBadge--submitted, .timesheetDaySummaryStatusBadge--open {
  border-color: color-mix(in srgb, var(--focus), transparent 82%);
  background: color-mix(in srgb, var(--focus), white 94%);
  color: color-mix(in srgb, var(--focus), black 20%);
}

.timesheetDaySummaryStatusBadge--missing, .timesheetDaySummaryStatusBadge--partial, .timesheetDaySummaryStatusBadge--review, .timesheetDaySummaryStatusBadge--mismatch {
  border-color: color-mix(in srgb, var(--warn), transparent 78%);
  background: color-mix(in srgb, var(--warn), white 91%);
  color: color-mix(in srgb, var(--warn), black 24%);
}

.timesheetDaySummarySectionValue {
  color: var(--muted);
}

.timesheetDaySummarySectionValue--timeclock {
  color: var(--fg);
  text-align: right;
  white-space: nowrap;
  flex: none;
  font-size: .9375rem;
  font-weight: 600;
}

.timesheetDaySummaryMetricGrid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
  display: grid;
}

.timesheetDaySummaryMetricCard {
  border: 1px solid var(--stroke);
  background: var(--bg);
  border-radius: 8px;
  gap: 6px;
  padding: 12px;
  display: grid;
}

.timesheetDaySummaryMetricLabel {
  color: var(--muted);
  font-size: .8125rem;
}

.timesheetDaySummaryMetricValue {
  font-size: 1rem;
  font-weight: 600;
}

.timesheetDaySummaryMetricNote {
  font-size: .875rem;
}

.timesheetDaySummarySectionNote, .timesheetDaySummaryActionNote {
  margin: 0;
  font-size: .9375rem;
}

.timesheetDaySummaryInlineWarning {
  border: 1px solid color-mix(in srgb, var(--warn), var(--stroke) 36%);
  background: color-mix(in srgb, var(--warn), white 90%);
  border-radius: 8px;
  gap: 4px;
  padding: 10px 12px;
  display: grid;
}

.timesheetDaySummaryInlineWarningTitle, .timesheetDaySummaryInlineWarningDetail {
  margin: 0;
}

.timesheetDaySummaryInlineWarningTitle {
  font-size: .9375rem;
  font-weight: 700;
}

.timesheetDaySummaryInlineWarningDetail {
  color: var(--muted);
  font-size: .875rem;
}

.timesheetDaySummaryStatusBlock {
  gap: 6px;
  display: grid;
}

.timesheetDaySummaryStatusLead {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
}

.timesheetDaySummaryStatusNote {
  margin: 0;
  font-size: .9375rem;
}

.timesheetDaySummaryFactList {
  border-top: 1px solid var(--stroke);
  display: grid;
}

.timesheetDaySummaryFactRow {
  border-bottom: 1px solid var(--stroke);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 12px;
  padding: 10px 0;
  display: grid;
}

.timesheetDaySummaryFactLabel {
  color: var(--muted);
  font-size: .875rem;
}

.timesheetDaySummaryFactValue {
  text-align: right;
  font-size: .9375rem;
  font-weight: 600;
}

.timesheetDaySummarySectionActions {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.timesheetDaySummaryToggleRow {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

@media (max-width: 420px) {
  .timesheetDaySummarySectionHeader--timeclock {
    gap: 10px;
  }

  .timesheetDaySummarySectionHeading--timeclock {
    gap: 6px;
  }

  .timesheetDaySummaryStatusBadge {
    min-height: 20px;
    padding: 0 7px;
    font-size: .6875rem;
  }
}

.timesheetDaySummaryToggleBtn {
  min-height: 44px;
  color: var(--focus);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 600;
}

.timesheetDaySummaryToggleBtn:hover {
  text-decoration: underline;
}

.timesheetDaySummaryToggleBtn:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 4px;
  border-radius: 6px;
}

.timesheetDaySummaryList {
  gap: 10px;
  display: grid;
}

.timesheetDaySummaryListRow {
  border: 1px solid var(--stroke);
  background: var(--bg);
  border-radius: 8px;
  gap: 6px;
  padding: 12px;
  display: grid;
}

.timesheetDaySummaryListRowLink {
  color: inherit;
  text-decoration: none;
}

.timesheetDaySummaryListPrimary, .timesheetDaySummaryListSecondary {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.timesheetDaySummaryListSecondary {
  color: var(--muted);
  font-size: .9375rem;
}

.timesheetDaySummaryListValue {
  font-weight: 600;
}

.timesheetDaySummaryWrappingText {
  overflow-wrap: anywhere;
  min-width: 0;
}

.timesheetDaySummaryEmpty {
  margin: 0;
}

.timesheetDaySummaryActions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.timesheetDaySummaryActionBtn {
  text-align: center;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  display: inline-flex;
}

.timesheetDaySummaryActionBtn.isDisabled {
  opacity: .58;
  pointer-events: auto;
}

.timesheetDaySummaryLoading, .timesheetDaySummaryDate {
  font-size: .875rem;
}

.homeTrackerTimelineEmptyLine {
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.4;
  display: block;
}

@media (min-width: 901px) {
  .portalResponsiveSheetBackdrop {
    justify-content: flex-end;
    align-items: stretch;
    padding-top: 0;
  }

  .portalResponsiveSheetCard, .timesheetDaySummarySheetCard {
    border-radius: 0;
    width: min(520px, 100%);
    height: 100%;
    max-height: none;
  }

  .portalResponsiveSheetBody {
    height: 100%;
    max-height: none;
    padding-bottom: 18px;
  }
}

@media (max-width: 760px) {
  .timesheetMonthHubAttentionHeader {
    gap: 4px;
  }

  .timesheetDaySummaryMetricGrid, .timesheetDaySummaryActions {
    grid-template-columns: 1fr;
  }

  .timesheetDaySummaryFactRow {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .timesheetDaySummaryFactValue {
    text-align: left;
  }
}

@media (max-width: 360px) {
  .homeActionsGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .portalResponsiveSheetHeader {
    grid-template-columns: minmax(0, 1fr) auto;
    display: grid;
  }

  .portalResponsiveSheetTitle {
    overflow-wrap: anywhere;
  }

  .notificationBellBadge {
    right: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .portalNavRow .navLink, .portalAccountChevron, .homeActionCard, .homeTrackerTimelineChevron, .timesheetLegendSummaryChevron, .calendarCell, .dayEditorTopToast {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }

  .homeActionCard:hover, .homeActionCard:focus-visible {
    transform: none;
  }
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__09dwu1-._.css.map*/