@charset "UTF-8";
/*
Theme Name: Göhler Treppentool
Theme URI: https://goehlertool.de/
Description: Göhler Treppentool WordPress Theme
Version: 1.5.0 (2025)
Author: Pixit Webdesign
Author URI: https://pixit-webdesign.de
*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

:root {
  --color-red-400: oklch(0.488 0.194 26.041);
  --color-red-300: oklch(0.548 0.194 26.041);
  --color-black-300: oklch(0.24 0.002 286.257);
  --color-black-600: oklch(0.12 0.002 286.257);
  --color-black-900: oklch(0 0 0);
  --color-white: oklch(1 0 89.876);
  --color-blue-200: oklch(0.761 0.087 259.104);
  --color-blue-400: oklch(0.561 0.187 259.104);
  --color-blue-500: oklch(0.481 0.162 259.037);
  --color-blue-fomantic: oklch(0.599 0.144 246.873);
  --color-blue-fomantic-dark: oklch(0.558 0.142 247.957);
  --color-gray-900: oklch(0.4 0.029 265.335);
  --color-gray-600: oklch(0.467 0.029 265.335);
  --color-gray-400: oklch(0.7 0.029 265.335);
  --color-gray-300: oklch(0.946 0 89.876);
  --primary-text-color: var(--color-gray-600);
  --secondary-text-color: var(--color-white);
  --primary-bg-color: var(--color-gray-300);
  --secondary-bg-color: var(--color-gray-600);
  --alternate-bg-color: var(--color-white);
  --color-status-planning: hsl(0 0% 60%);
  --color-status-planning-dark: hsl(0 0% 50%);
  --color-status-cnc: hsl(21, 76%, 66%);
  --color-status-cnc-dark: hsl(21, 76%, 56%);
  --color-status-cutting: hsl(194 46% 48%);
  --color-status-cutting-dark: hsl(194 46% 38%);
  --color-status-finishing: hsl(41, 76%, 56%);
  --color-status-finishing-dark: hsl(41 76% 46%);
  --color-status-assembly: hsl(281 23% 49%);
  --color-status-assembly-dark: hsl(281 23% 39%);
  --color-status-completed: var(--color-blue-400);
  --color-status-completed-dark: var(--color-blue-500);
  --color-extra-work: hsl(320 51% 63%);
  --color-extra-work-dark: hsl(320 51% 53%);
  --color-status-work: hsl(355 65% 55%);
  --color-status-work-dark: hsl(355 65% 45%);
  --color-status-fitting: hsl(155 53% 42%);
  --color-status-fitting-dark: hsl(155 53% 32%);
  --color-status-success-light: hsl(155 40% 50%);
  --color-status-success: hsl(155 50% 35%);
  --color-status-success-dark: hsl(155 50% 25%);
  --color-status-good: green;
  --color-status-ok: orange;
  --color-status-bad: darkred;
  /** Margins */
  --basis-margin: 3em;
  --grid-margin: 1.5em;
  /** Fonts */
  --fs-base: 14px;
  --ff-base: "Open Sans", Verdana, serif;
  --ff-accent: "Montserrat", Verdana, serif;
  --transition-duration: 0.2s;
}

/* open-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url("assets/fonts/open-sans-v40-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 300;
  src: url("assets/fonts/open-sans-v40-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/open-sans-v40-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  src: url("assets/fonts/open-sans-v40-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 500;
  src: url("assets/fonts/open-sans-v40-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 500;
  src: url("assets/fonts/open-sans-v40-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url("assets/fonts/open-sans-v40-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 600;
  src: url("assets/fonts/open-sans-v40-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/open-sans-v40-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 700;
  src: url("assets/fonts/open-sans-v40-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  src: url("assets/fonts/open-sans-v40-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 800;
  src: url("assets/fonts/open-sans-v40-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 100;
  src: url("assets/fonts/montserrat-v26-latin-100.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 100;
  src: url("assets/fonts/montserrat-v26-latin-100italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 200;
  src: url("assets/fonts/montserrat-v26-latin-200.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 200;
  src: url("assets/fonts/montserrat-v26-latin-200italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url("assets/fonts/montserrat-v26-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 300;
  src: url("assets/fonts/montserrat-v26-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/montserrat-v26-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 400;
  src: url("assets/fonts/montserrat-v26-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("assets/fonts/montserrat-v26-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 500;
  src: url("assets/fonts/montserrat-v26-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url("assets/fonts/montserrat-v26-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 600;
  src: url("assets/fonts/montserrat-v26-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/montserrat-v26-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 700;
  src: url("assets/fonts/montserrat-v26-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  src: url("assets/fonts/montserrat-v26-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 800;
  src: url("assets/fonts/montserrat-v26-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src: url("assets/fonts/montserrat-v26-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 900;
  src: url("assets/fonts/montserrat-v26-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
html {
  font-size: var(--fs-base);
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  font-family: var(--ff-base);
  background-color: var(--primary-bg-color);
  color: var(--primary-text-color);
  line-height: 1.5;
  font-size: inherit;
}
body:has(.focus-mode) {
  overflow-y: hidden;
}

main {
  padding-bottom: 2em;
}

h1, h2 {
  font-family: var(--ff-accent);
  font-weight: 600;
}
h1 a, h2 a {
  font-weight: 700;
}

h1,
h2.centered {
  text-align: center;
}

@media (max-width: 1459px) {
  .project-content h2 {
    font-size: 1.2em;
  }
}

.process-overview {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr) 1em minmax(0, 1fr) 1em minmax(0, 1fr) 1em minmax(0, 1fr);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1em;
  gap: 1em;
}
@media (max-width: 989px) {
  .process-overview {
    -ms-grid-columns: minmax(0, 1fr) 1em minmax(0, 1fr);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 1em;
    gap: 1em;
  }
}

.process-item {
  color: var(--_status-color, #666);
  background-color: var(--alternate-bg-color);
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: var(--ff-accent);
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
  padding: 2em 2em;
  text-align: center;
  cursor: pointer;
  font-size: 1.2em;
  border-top: 6px solid var(--_status-color, #666);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  overflow: hidden;
}
.process-item i:not(.inline) {
  font-size: 2em;
}
.process-item svg.custom {
  height: 2em;
  fill: currentColor;
}
@media (min-width: 1900px) {
  .process-item {
    font-size: 1.6em;
    padding: 3em 2em;
  }
}
.process-item:hover {
  background-color: var(--_status-color, #666);
  color: var(--color-white);
}
.process-item .process-info {
  position: absolute;
  bottom: -0.2em;
  right: -0.15em;
  font-size: 3em;
  line-height: 1;
  font-weight: 700;
  opacity: 0.15;
}
@media (min-width: 1460px) {
  .process-item .process-info {
    font-size: 6em;
  }
}

.ui.popup,
.ui.toast {
  line-height: 1.8;
}

.ui.toast.success {
  background-color: var(--color-status-success);
}

.ui.popup ul {
  padding-left: 1em;
}

.ui.selection.dropdown {
  white-space: nowrap;
}

.ui.nag {
  color: var(--secondary-text-color);
  z-index: 9999;
}

#daily-check {
  z-index: 0;
  cursor: pointer;
}

.ui.header .sub.header {
  margin-block: 1em;
  line-height: 1.8;
}

span.badge,
a.badge,
div.badge {
  --_badge-color: var(--primary-text-color);
  background-color: var(--primary-text-color);
}
span.badge.status,
a.badge.status,
div.badge.status {
  background-color: var(--_status-color, var(--_badge-color));
}
span.badge.status.special,
a.badge.status.special,
div.badge.status.special {
  background-color: var(--alternate-bg-color);
  -webkit-box-shadow: 0 0 0 2px var(--_status-color, var(--secondary-bg-color)), 0 0 0 2px var(--_status-color, var(--secondary-bg-color)) inset;
          box-shadow: 0 0 0 2px var(--_status-color, var(--secondary-bg-color)), 0 0 0 2px var(--_status-color, var(--secondary-bg-color)) inset;
  color: var(--_status-color, var(--secondary-bg-color));
}
span.badge.secondary,
a.badge.secondary,
div.badge.secondary {
  background-color: var(--alternate-bg-color);
  -webkit-box-shadow: 0 0 0 2px var(--_status-color, var(--secondary-bg-color)) inset;
          box-shadow: 0 0 0 2px var(--_status-color, var(--secondary-bg-color)) inset;
  color: var(--_status-color, var(--secondary-bg-color));
}
span.badge.assembly-date,
a.badge.assembly-date,
div.badge.assembly-date {
  background-color: var(--color-status-assembly, var(--_badge-color));
}
span.badge.assembly-date.week,
a.badge.assembly-date.week,
div.badge.assembly-date.week {
  background-color: var(--alternate-bg-color);
  -webkit-box-shadow: 0 0 0 2px var(--color-status-assembly, var(--secondary-bg-color)) inset;
          box-shadow: 0 0 0 2px var(--color-status-assembly, var(--secondary-bg-color)) inset;
  color: var(--color-status-assembly, var(--secondary-bg-color));
}

a.badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.5em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: 0.2em;
}

.header span.badge {
  margin-inline: 0.5em;
}

.action-container .header h2 .count, tbody tr span, span.badge,
a.badge,
div.badge {
  color: var(--color-white);
  padding: 0.4em 0.8em;
  border-radius: 0.25em;
  white-space: nowrap;
  font-family: var(--ff-accent);
  text-transform: uppercase;
  font-size: 0.85rem;
  font-weight: 600;
}

.action-container .remaining-work-item .badge, .project-meta .project-title .title, .filter-modal .badge, .status-dates-container .badge {
  display: block;
  background-color: var(--_status-color, var(--secondary-bg-color));
}
.action-container .remaining-work-item .pending.badge, .project-meta .project-title .pending.title, .filter-modal .pending.badge, .status-dates-container .pending.badge {
  --_status-color: hsl(35, 80%, 60%);
}
.action-container .remaining-work-item .neutral.badge, .project-meta .project-title .neutral.title, .filter-modal .neutral.badge, .status-dates-container .neutral.badge {
  --_status-color: hsl(210, 55%, 55%);
}
.action-container .remaining-work-item .success.badge, .project-meta .project-title .success.title, .filter-modal .success.badge, .status-dates-container .success.badge {
  --_status-color: var(--color-status-success);
}

.list-projects,
.list-materials,
.list-remaining-work {
  width: calc(100% - 6em);
  margin: 2.5em auto;
}
@media (max-width: 989px) {
  .list-projects,
  .list-materials,
  .list-remaining-work {
    width: calc(100% - 4em);
  }
}

.message-container {
  padding-inline: 3em;
}

.ui.message[data-hidden=true] {
  display: none;
}

.sr-only {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

[data-modal=view-remaining-work-image] .image.content {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.changelog .log-entry {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 6em 1em minmax(10px, 1fr);
  grid-template-columns: 6em minmax(10px, 1fr);
  gap: 1em;
}
.changelog .log-entry + .log-entry {
  margin-top: 1em;
}
.changelog .log-type {
  text-align: center;
}
.changelog .ui.label {
  display: block;
}
.changelog h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.changelog h2 span {
  font-size: 0.625em;
  opacity: 0.5;
}
.changelog li {
  margin-block: 0.75em;
}

[data-modal] .ui.accordion {
  width: 100%;
}

.status-planning,
[data-project-status=planning] {
  --_status-color: var(--color-status-planning);
}
.status-planning:hover,
[data-project-status=planning]:hover {
  --_status-color-hover: var(--color-status-planning-dark);
}

.status-cutting,
[data-project-status=cutting] {
  --_status-color: var(--color-status-cutting);
}
.status-cutting:hover,
[data-project-status=cutting]:hover {
  --_status-color-hover: var(--color-status-cutting-dark);
}

.status-cnc,
[data-project-status=cnc] {
  --_status-color: var(--color-status-cnc);
}
.status-cnc:hover,
[data-project-status=cnc]:hover {
  --_status-color-hover: var(--color-status-cnc-dark);
}

.status-fitting,
[data-project-status=fitting] {
  --_status-color: var(--color-status-fitting);
}
.status-fitting:hover,
[data-project-status=fitting]:hover {
  --_status-color-hover: var(--color-status-fitting-dark);
}

.status-finishing,
[data-project-status=finishing] {
  --_status-color: var(--color-status-finishing);
}
.status-finishing:hover,
[data-project-status=finishing]:hover {
  --_status-color-hover: var(--color-status-finishing-dark);
}

.status-assembly,
[data-project-status=assembly] {
  --_status-color: var(--color-status-assembly);
}
.status-assembly:hover,
[data-project-status=assembly]:hover {
  --_status-color-hover: var(--color-status-assembly-dark);
}

.status-completed,
[data-project-status=completed] {
  --_status-color: var(--color-blue-400);
}
.status-completed:hover,
[data-project-status=completed]:hover {
  --_status-color-hover: var(--color-blue-500);
}

.status-work,
[data-remaining-work-status] {
  --_status-color: var(--color-status-work);
}
.status-work:hover,
[data-remaining-work-status]:hover {
  --_status-color-hover: var(--color-status-work-dark);
}

.status-dates-container {
  display: -ms-grid;
  display: grid;
  gap: 2em;
}
.status-dates-container .status-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.status-dates-container .status-info__meta {
  font-size: 0.875em;
  opacity: 0.7;
  display: -ms-grid;
  display: grid;
  gap: 0.5em;
}
.status-dates-container .badge {
  width: 10em;
  text-align: center;
  font-size: 1.1em;
}
.status-dates-container .badge:not(.completed) {
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px var(--_status-color) inset;
          box-shadow: 0 0 0 1px var(--_status-color) inset;
  color: var(--_status-color);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.site-header {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "logo tool meta user";
  -ms-grid-columns: -webkit-max-content 2em -webkit-max-content 2em 1fr 2em -webkit-max-content;
  -ms-grid-columns: max-content 2em max-content 2em 1fr 2em max-content;
  grid-template-columns: -webkit-max-content -webkit-max-content 1fr -webkit-max-content;
  grid-template-columns: max-content max-content 1fr max-content;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1em;
  gap: 2em;
  background-color: var(--alternate-bg-color);
  height: 90px;
}
@media (max-width: 1619px) {
  .site-header {
    font-size: 12px;
        grid-template-areas: "logo tool user" "meta meta meta";
    -ms-grid-columns: 1fr 1em -webkit-max-content 1em -webkit-max-content;
    -ms-grid-columns: 1fr 1em max-content 1em max-content;
    grid-template-columns: 1fr -webkit-max-content -webkit-max-content;
    grid-template-columns: 1fr max-content max-content;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    height: auto;
    row-gap: 0;
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
  }
}
@media (min-width: 1620px) {
  .site-header {
    padding: 0 2em;
  }
}
.site-header__logo {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: logo;
}
.login-form__inner > .site-header__logo {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.site-header__logo .logo {
  max-width: 200px;
  padding: 1em;
  margin-right: 2em;
}
@media (max-width: 1619px) {
  .site-header__logo {
    padding-block: 0.5em;
  }
  .site-header__logo .logo {
    max-width: 180px;
    margin: 0;
  }
}
.site-header__tool-menu {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: tool;
}
.site-header__tool-menu:empty {
  display: none;
}
.site-header__tool-menu .button {
  margin: 0;
}
.site-header__meta-menu {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: meta;
  margin: 0;
  padding: 0;
  list-style: none;
}
.project-content > .site-header__meta-menu {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
}
@media (max-width: 1619px) {
  .site-header__meta-menu {
    padding-block: 0.5em;
  }
}
.site-header__user {
  -ms-grid-row: 1;
  -ms-grid-column: 7;
  grid-area: user;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-column-align: end;
      justify-self: end;
}
.site-header__user .user-notifications {
  position: relative;
}
.site-header__user .user-menu .button-text {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "name dropdown" "role role";
  -ms-grid-columns: 1fr -webkit-min-content;
  -ms-grid-columns: 1fr min-content;
  grid-template-columns: 1fr -webkit-min-content;
  grid-template-columns: 1fr min-content;
}
.site-header__user .user-menu .button-text .text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.site-header__user .user-menu .role-name {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: role;
  --_color: rgb(255, 255, 255, 0.75);
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 1px solid var(--_color);
  color: var(--_color);
  font-size: 0.875em;
  text-align: center;
}
@media (max-width: 1619px) {
  .site-header__user .user-menu .role-name {
    display: none;
  }
}

.meta-menu {
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25em;
}
@media (min-width: 1460px) {
  .meta-menu {
    gap: 1em;
  }
}
.meta-menu__item {
  position: relative;
}
.meta-menu__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.meta-menu__item a:hover {
  color: var(--color-blue);
}
.meta-menu__item svg {
  font-size: 2em;
}
.meta-menu__item path {
  fill: currentColor;
}
.meta-menu__item[data-current-item="1"] {
  color: var(--color-blue);
  background-color: var(--primary-bg-color);
}
.meta-menu a {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  color: inherit;
  text-align: center;
  padding: 1rem 1rem;
  border-radius: 3px;
}
@media (min-width: 1460px) {
  .meta-menu a {
    padding: 1rem 1.5rem;
  }
}
.meta-menu a:hover {
  background-color: var(--primary-bg-color);
}

.user-menu {
  text-align: right;
}
.user-menu .button {
  margin: 0;
}

[data-modal=user-settings] .settings-container {
  display: -ms-grid;
  display: grid;
  color: rgba(0, 0, 0, 0.95);
}
[data-modal=user-settings] .settings-container .setting + .setting,
[data-modal=user-settings] .settings-container .setting + .field {
  margin-top: 1em;
}

.list-container {
  overflow-y: visible;
  overflow-x: auto;
  margin-block: 1em;
}

@media (max-width: 1459px) {
  table.ui.table td {
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
}

tbody tr {
  -webkit-animation: fade-in 0.5s ease;
          animation: fade-in 0.5s ease;
}
tbody tr:hover {
  background: rgba(102, 173, 204, 0.1) !important;
}

.ui.striped.table tbody tr.prioritized:first-child td {
  border-top: 4px solid #2185d0;
}
.ui.striped.table tbody tr.prioritized + .remaining-work:not(.prioritized) td {
  border-top: 4px solid var(--color-status-work);
}
.ui.striped.table tbody tr.prioritized + tr:not([class]) td, .ui.striped.table tbody tr.remaining-work + tr:not([class]) td {
  border-top: 4px solid #ccc;
}
.ui.striped.table tbody tr.paused td {
  opacity: 0.4;
}
.ui.striped.table tbody tr:not([class]) + .paused td {
  border-top: 4px solid #ccc;
}
.ui.striped.table tbody tr:hover {
  background: rgba(102, 173, 204, 0.25);
  -webkit-box-shadow: 0 0 0 2px rgba(102, 173, 204, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(102, 173, 204, 0.5) inset;
}
.ui.striped.table tbody tr:hover .selectable {
  background-color: transparent;
}
.ui.striped.table tbody:not(:has(.prioritized)) .remaining-work:first-child td {
  border-top: 4px solid var(--color-status-work);
}

td.has-modal {
  cursor: pointer;
}

td[data-cell=project-schedule] .ui.label[data-status=good],
.project-schedule-title .ui.label[data-status=good] {
  background-color: var(--color-status-good);
}
td[data-cell=project-schedule] .ui.label[data-status=ok],
.project-schedule-title .ui.label[data-status=ok] {
  background-color: var(--color-status-ok);
}
td[data-cell=project-schedule] .ui.label[data-status=bad],
.project-schedule-title .ui.label[data-status=bad] {
  background-color: var(--color-status-bad);
}

td[data-cell=project-property] {
  width: 6rem;
  white-space: nowrap;
}
td[data-cell=project-property] .icon {
  margin: 0;
}
td[data-cell=project-property] .icon + .icon {
  margin-left: 0.5em;
}
td[data-cell=project-property] .hourglass.half.icon {
  color: var(--color-status-work);
}

td[data-cell*=actions] {
  width: 10rem;
}

[data-list] table.ui thead th[data-cell] {
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  white-space: nowrap;
}
[data-list] table.ui thead th[data-cell] i:not(.label) {
  color: #ccc;
}
@media (min-width: 1460px) {
  [data-list] table.ui thead th[data-cell] i:not(.label) {
    position: absolute;
    right: 0.5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
[data-list] table.ui thead th[data-cell] .label {
  margin: 0;
}
[data-list] table.ui thead th[data-cell][data-sort]:hover, [data-list] table.ui thead th[data-cell][data-filter]:hover, [data-list] table.ui thead th[data-cell][data-expand-view]:hover {
  cursor: pointer;
  background-color: rgb(240, 240, 241);
}
[data-list] table.ui thead th[data-cell][data-filter=active] i, [data-list] table.ui thead th[data-cell][data-sort=active] i {
  color: var(--color-blue-400);
}

td[data-cell=project-title],
td[data-cell=remaining-work-project-title],
td[data-cell=material-project-title],
td[data-cell*=actions] {
  font-weight: 600;
}
td[data-cell=project-title] a,
td[data-cell=remaining-work-project-title] a,
td[data-cell=material-project-title] a,
td[data-cell*=actions] a {
  color: #4183c4 !important;
}
td[data-cell=project-title] a:hover,
td[data-cell=remaining-work-project-title] a:hover,
td[data-cell=material-project-title] a:hover,
td[data-cell*=actions] a:hover {
  color: #1e70bf !important;
}

td[data-cell=project-measurement] .date,
td[data-cell=project-construction-plans] .date,
td[data-cell=project-production-start] .date,
td[data-cell=project-completed-date] .date,
td[data-cell=material-project-production-start] .date {
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
}
td[data-cell=project-measurement] .date:not(.badge),
td[data-cell=project-construction-plans] .date:not(.badge),
td[data-cell=project-production-start] .date:not(.badge),
td[data-cell=project-completed-date] .date:not(.badge),
td[data-cell=material-project-production-start] .date:not(.badge) {
  color: darkred;
}

td[data-cell=project-task-date],
th[data-cell=project-task-date] {
  width: 250px;
}

td[data-cell=project-task-date],
td[data-cell=material-delivery-date] {
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  color: darkred;
}

td[data-cell=remaining-work-thumbnail] img {
  display: inline-block;
  margin: 0 auto;
  width: 2.5rem;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
td[data-cell=remaining-work-thumbnail] .icon {
  font-size: 2rem;
  opacity: 0.6;
}
td[data-cell=remaining-work-thumbnail].selectable .icon {
  cursor: pointer;
}

td[data-cell=material-status] .status-container {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 1em;
}
td[data-cell=material-status] .icon.button {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
td[data-cell=material-status] .icon.button .icon {
  pointer-events: none;
}

td[data-cell=material-comment] {
  text-overflow: ellipsis;
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
}

.list-filter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.filter-modal .filter-content > .ui.checkbox {
  margin: 2em 0;
}
.filter-modal .ui.checkbox {
  display: block;
}
.filter-modal .filter-content {
  padding: 2em;
}
.filter-modal .status-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(10px, 1fr))[2];
  grid-template-columns: repeat(2, minmax(10px, 1fr));
  margin-block: 1em;
  row-gap: 2em;
}
.filter-modal .status-grid .ui.checkbox {
  margin: 0.5em 0;
}
.filter-modal .filter-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(10px, 1fr))[2];
  grid-template-columns: repeat(2, minmax(10px, 1fr));
  margin-block: 1em;
}
.filter-modal .filter-grid .ui.checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0.5em 0;
}
.filter-modal .status {
  font-size: 12px;
  margin: 0 auto;
}
.filter-modal .badge {
  display: inline-block;
}

.filter-search .info {
  margin-left: 0.5em;
}

.filter-sort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
}

.sort-dropdown .ui.dropdown {
  min-width: 250px;
}

.no-list-results,
.no-grid-results {
  -webkit-animation: fade-in 0.5s ease;
          animation: fade-in 0.5s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  max-width: initial;
  padding: 1em 1em;
  min-height: 15rem;
  color: var(--primary-text-color);
}
.no-list-results .ui.header,
.no-grid-results .ui.header {
  color: inherit;
  font-family: var(--ff-accent);
  font-weight: 400;
  opacity: 0.5;
}
.no-list-results[data-hidden=true],
.no-grid-results[data-hidden=true] {
  display: none;
}

.ui.segment.no-grid-results {
  margin: 0;
  grid-column: 1/-1;
}

.list-footer {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "switch pagination limit";
  -ms-grid-columns: 30em 1fr 30em;
  grid-template-columns: 30em 1fr 30em;
  font-size: 0.8em;
}
@media (max-width: 989px) {
  .list-footer {
        grid-template-areas: "switch limit" "pagination pagination";
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    row-gap: 1em;
  }
}
.list-footer .list-select {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: switch;
}
.list-footer .pagination .icon {
  pointer-events: none;
}
.list-footer .list-pagination {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: pagination;
  text-align: center;
}
.list-footer .list-pagination[data-hidden=true] .pagination,
.list-footer .list-pagination[data-hidden=true] .results-info {
  display: none;
}
.list-footer .results-info {
  margin: 1em;
  font-size: 1rem;
}
.list-footer .results-info span {
  font-family: var(--ff-accent);
  font-weight: 600;
}
.list-footer .filter-info[data-hidden=true] {
  display: none;
}
.list-footer .list-limit-container {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: limit;
  text-align: right;
}
@media (max-width: 989px){
  .list-footer .list-select {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .list-footer .list-pagination {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .list-footer .list-limit-container {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
.list-footer .list-limit-container[data-hidden=true] .field {
  display: none;
}

.list-week-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-block: 2em;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.list-week-container .selected-week {
  cursor: pointer;
}
.list-week-container .calendar-week {
  text-align: center;
  background-color: var(--primary-text-color);
  color: var(--secondary-text-color);
  font-variant-numeric: tabular-nums;
  font-family: var(--ff-accent);
  padding: 0.5em;
  min-width: 12em;
  border-radius: 0.25em;
}
.list-week-container .calendar-week .week {
  font-size: 1.125em;
  font-weight: 600;
}
.list-week-container .calendar-week .week-days {
  font-size: 0.75em;
}
.list-week-container .ui.button {
  width: 4em;
}
.list-week-container.loading .calendar-week {
  pointer-events: none;
}

[data-modal=planning-todo] .header .badge {
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
}

.planning-todo {
  display: -ms-grid;
  display: grid;
  gap: 3em;
}
.planning-todo h3 {
  text-align: center;
}
.planning-todo .no-todos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 5rem;
  opacity: 0.5;
  font-size: 1.2em;
  -webkit-animation: fade-in-half 0.5s ease;
          animation: fade-in-half 0.5s ease;
}
.planning-todo .planning-todo-container table {
  display: none;
}
.planning-todo .planning-todo-container:has(table tbody tr) table {
  display: table;
}
.planning-todo .planning-todo-container:has(table tbody tr) .no-todos {
  display: none;
}
.planning-todo:not(.loaded) .no-todos {
  display: none;
}

td[data-cell=material-status] {
  width: 450px;
}
td[data-cell=material-status] .status-container [data-active=true] {
  background-color: var(--color-status-success);
  color: var(--secondary-text-color);
}
td[data-cell=material-status] .status-container [data-active=true]:hover, td[data-cell=material-status] .status-container [data-active=true]:active {
  background-color: var(--color-status-success-dark);
  color: var(--secondary-text-color);
}

td[data-cell=project-status-worker][data-action] {
  cursor: pointer;
}
td[data-cell=project-status-worker][data-action] > div {
  pointer-events: none;
}
td[data-cell=project-status-worker][data-project-status] {
  color: var(--_status-color);
  font-weight: 600;
}

table[data-post-type=project]:not([data-expand-view=true]) th[data-expand-view=true],
table[data-post-type=project]:not([data-expand-view=true]) td[data-expand-view=true] {
  display: none;
}
table[data-post-type=project][data-expand-view=true] th[data-expand-view=false],
table[data-post-type=project][data-expand-view=true] td[data-expand-view=false] {
  display: none;
}

.filter-view-modes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.filter-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}

.list-legend {
  margin-top: 5em;
  padding-block: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3em;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  border-top: 1px solid #ccc;
  text-align: center;
}
.list-legend .legend-header {
  font-weight: 600;
  margin-block: 0.5em;
}
.list-legend .legend-content {
  display: -ms-grid;
  display: grid;
  gap: 1em;
}
.list-legend .legend-project,
.list-legend .legend-remaining-work {
  background-color: #fff;
  color: #4183c4;
  padding: 1em;
  font-size: 0.875em;
  font-weight: 600;
  font-family: var(--ff-accent);
  text-transform: uppercase;
  border-radius: 5px;
}
.list-legend .legend-project[data-schedule-status] {
  color: white;
}
.list-legend .legend-project[data-schedule-status=good] {
  background-color: var(--color-status-good);
}
.list-legend .legend-project[data-schedule-status=ok] {
  background-color: var(--color-status-ok);
  color: #000;
}
.list-legend .legend-project[data-schedule-status=bad] {
  background-color: var(--color-status-bad);
}
.list-legend .legend-remaining-work {
  -webkit-box-shadow: 0 0 0 3px var(--color-status-work) inset;
          box-shadow: 0 0 0 3px var(--color-status-work) inset;
}

.badge-list {
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 1rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.badge-list .badge {
  position: relative;
}
.badge-list .badge:not(:last-child):after {
  left: 50%;
  top: 100%;
  height: 1rem;
  width: 2px;
  translate: -50%;
  background-color: var(--_status-color, #ccc);
  content: "";
  position: absolute;
  z-index: 10;
}

.grid-container {
  margin-block: 1em;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 2em minmax(10px, 1fr) 2em minmax(10px, 1fr);
  grid-template-columns: repeat(3, minmax(10px, 1fr));
  -webkit-column-gap: 2em;
     -moz-column-gap: 2em;
          column-gap: 2em;
  row-gap: 3em;
}
@media (min-width: 1900px) {
  .grid-container {
    -ms-grid-columns: (minmax(10px, 1fr))[6];
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
}
@media (min-width: 1900px) {
  .grid-container.week {
    -ms-grid-columns: (minmax(10px, 1fr))[7];
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
}
@media (min-width: 1900px) {
  .grid-container.whiteboard {
    -ms-grid-columns: (minmax(10px, 1fr))[5];
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
}
.grid-container .column-header {
  display: -ms-grid;
  display: grid;
  gap: 0.5em;
  background-color: #fff;
  border-radius: 5px;
  border-bottom: 4px solid var(--_status-color, #666);
  color: var(--_status-color, #666);
  justify-items: center;
  -ms-grid-columns: -webkit-max-content 0.5em -webkit-max-content;
  -ms-grid-columns: max-content 0.5em max-content;
  grid-template-columns: -webkit-max-content -webkit-max-content;
  grid-template-columns: max-content max-content;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.5rem 1rem;
  margin-bottom: 1em;
  font-family: var(--ff-accent);
  font-weight: 600;
  text-transform: uppercase;
  overflow: hidden;
  font-variant-numeric: tabular-nums;
  position: sticky;
  top: var(--wp-admin--admin-bar--height, 0);
  z-index: 10;
}
.grid-container .column-header svg.custom {
  height: 1.5em;
  fill: currentColor;
}
.grid-container .column-header .day {
  position: absolute;
  right: 0.2em;
  font-size: 3em;
  text-transform: uppercase;
  font-family: var(--ff-accent);
  line-height: 1;
  font-weight: 700;
  opacity: 0.1;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.grid-container.loading .column-header {
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.5;
}
.grid-container [data-column=week] .column-header {
  background-color: var(--primary-text-color);
  color: white;
}
.grid-container .column-work {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  -ms-flex-line-pack: start;
      align-content: start;
  margin-bottom: 2em;
}
.grid-container .column-projects {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  -ms-flex-line-pack: start;
      align-content: start;
}
.grid-container .column-projects .badge {
  white-space: initial;
}
.grid-container .column-projects[data-meta-disabled] .project-assembly-date {
  pointer-events: none;
}
.grid-container[data-substatus-view=row] .substatus-projects-container {
  -ms-grid-columns: (minmax(10px, 1fr))[2];
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}

.column-item.project-item {
  background-color: #fff;
  padding: 1em;
  display: -ms-grid;
  display: grid;
  text-align: center;
  font-size: 0.8em;
  -webkit-transition: -webkit-box-shadow 0.2s ease;
  transition: -webkit-box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
  border-radius: 5px;
  -webkit-animation: fade-in 0.5s ease forwards;
          animation: fade-in 0.5s ease forwards;
}
.column-item.project-item > div:empty {
  display: none;
}
.column-item.project-item > * {
  padding: 1em;
}
.column-item.project-item .badge {
  display: inline-block;
}
.column-item.project-item > a:hover, .column-item.project-item > [data-action]:hover {
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  background-color: #eee;
  cursor: pointer;
}
.column-item.project-item > a span, .column-item.project-item > a .icon, .column-item.project-item > a div, .column-item.project-item > [data-action] span, .column-item.project-item > [data-action] .icon, .column-item.project-item > [data-action] div {
  pointer-events: none;
}
.column-item.project-item .project-schedule-title {
  display: block;
  font-size: 1.25em;
  font-weight: 600;
  font-family: var(--ff-accent);
  text-transform: uppercase;
}
.column-item.project-item .project-schedule-title .label {
  display: none;
}
.column-item.project-item .project-detailed-status {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.column-item.project-item .project-detailed-status .badge {
  font-size: 0.75rem;
}
.column-item.project-item .project-remaining-work-status {
  font-size: 1rem;
  color: var(--color-status-work);
  font-weight: 600;
}
.column-item.project-item .project-assembly-dates .badge,
.column-item.project-item .project-status-deadline .badge {
  font-variant-numeric: tabular-nums;
}
.column-item.project-item .project-status-workers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.column-item.project-item .project-status-workers div {
  pointer-events: none;
}
.column-item.remaining-work-item {
  background-color: #fff;
  padding: 1em;
  display: -ms-grid;
  display: grid;
  text-align: center;
  font-size: 0.8em;
  -webkit-transition: -webkit-box-shadow 0.2s ease;
  transition: -webkit-box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
  border-radius: 5px;
  -webkit-animation: fade-in 0.5s ease forwards;
          animation: fade-in 0.5s ease forwards;
  -webkit-box-shadow: 0 0 0 3px var(--color-status-work) inset;
          box-shadow: 0 0 0 3px var(--color-status-work) inset;
  width: 100%;
}
.column-item.remaining-work-item > div:empty {
  display: none;
}
.column-item.remaining-work-item > * {
  padding: 1em;
}
.column-item.remaining-work-item a:hover, .column-item.remaining-work-item [data-action]:hover {
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  background-color: #eee;
  cursor: pointer;
}
.column-item.remaining-work-item a span, .column-item.remaining-work-item a .icon, .column-item.remaining-work-item [data-action] span, .column-item.remaining-work-item [data-action] .icon {
  pointer-events: none;
}
.column-item.remaining-work-item .remaining-work-title {
  display: block;
  font-size: 1.25em;
  font-weight: 600;
  font-family: var(--ff-accent);
  text-transform: uppercase;
}

.list-projects[data-list=whiteboard] .grid-container .column-header {
  background-color: var(--_status-color);
  color: #fff;
}
.list-projects[data-list=whiteboard] .grid-container .status-column {
  position: relative;
}
.list-projects[data-list=whiteboard] .grid-container .status-column:has(+ .status-column)::after {
  position: absolute;
  content: "";
  width: 1px;
  top: 0;
  right: -1em;
  height: 100%;
  background-color: #ccc;
}
.list-projects[data-list=whiteboard] .grid-container[data-work-view=no-work] .work-container {
  display: none;
}
.list-projects[data-list=whiteboard] .grid-container[data-work-view=work-count] .column-work {
  display: none;
}
.list-projects[data-list=whiteboard] .grid-container[data-work-view=full-work] .work-header {
  display: none;
}
.list-projects[data-list=whiteboard] .grid-container[data-work-view=full-work] .work-container:has(.column-work:empty) {
  display: none;
}
.list-projects[data-list=whiteboard] .grid-container[data-project-view=compact] .project-assembly-dates,
.list-projects[data-list=whiteboard] .grid-container[data-project-view=compact] .remaining-work-project-title,
.list-projects[data-list=whiteboard] .grid-container[data-project-view=compact] .project-status-deadline,
.list-projects[data-list=whiteboard] .grid-container[data-project-view=compact] .project-remaining-work-status {
  display: none;
}
.list-projects[data-list=whiteboard] .project-schedule-title:has([data-status]) {
  color: white;
  background-color: var(--secondary-bg-color);
}
.list-projects[data-list=whiteboard] .project-schedule-title:has([data-status=good]) {
  background-color: var(--color-status-good);
}
.list-projects[data-list=whiteboard] .project-schedule-title:has([data-status=ok]) {
  background-color: var(--color-status-ok);
}
.list-projects[data-list=whiteboard] .project-schedule-title:has([data-status=bad]) {
  background-color: var(--color-status-bad);
}
.list-projects[data-list=whiteboard] .project-schedule-title:hover {
  background-color: var(--secondary-bg-color);
  color: white;
}
.list-projects[data-list=whiteboard] .work-container {
  margin-bottom: 1em;
  padding-block: 1em;
}
.list-projects[data-list=whiteboard] .work-container .work-header {
  text-align: center;
}
.list-projects[data-list=whiteboard] .work-container .work-header .badge {
  padding-block: 1em;
}
.list-projects[data-list=whiteboard] .substatus-projects-container {
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
  row-gap: 3em;
}
.list-projects[data-list=whiteboard] .substatus-projects-container .substatus-header {
  text-align: center;
  margin-bottom: 1em;
}
.list-projects[data-list=whiteboard] .substatus-projects-container .substatus-header .badge {
  display: block;
  padding-block: 1em;
}
.list-projects[data-list=whiteboard] .substatus-projects-container .substatus-header .icon {
  font-size: 1.5rem;
  color: var(--_status-color);
}
.list-projects[data-list=whiteboard] .list-filter {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 2em auto 2em minmax(10px, 1fr);
  grid-template-columns: minmax(10px, 1fr) auto minmax(10px, 1fr);
  gap: 2em;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  margin-block: 3em;
}
.list-projects[data-list=whiteboard] .filter-actions {
  -ms-grid-column-align: right;
      justify-self: right;
}
.list-projects[data-list=whiteboard] .filter-reload {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  -ms-grid-column-align: center;
      justify-self: center;
}

#reload-progress .bar {
  -webkit-transition: width 1s linear !important;
  transition: width 1s linear !important;
}

.login-form {
  position: absolute;
  inset: 0;
  background-image: url("assets/images/studio.webp");
  background-size: cover;
  background-position: 50% 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.login-form__inner {
  width: 600px;
  display: -ms-grid;
  display: grid;
      grid-template-areas: "logo" "stack";
  margin-inline: auto;
}
.login-form .login-logo img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-inline: auto;
  margin-bottom: 3em;
}
.login-form .login-mask {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: stack;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(5px);
  border-radius: 0.5em;
}
.login-form .login-form-fields {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  padding: 1.5em;
  grid-area: stack;
  z-index: 1;
  font-size: 1.25em;
  color: #444;
}

#custom-wp-login input[type=text],
#custom-wp-login input[type=password] {
  font-family: var(--ff-base);
  padding: 0.5em;
  display: block;
  width: 100%;
  font-size: 1.5rem;
  background-color: var(--primary-bg-color);
  border: 0;
  border-radius: 5px;
  -webkit-box-shadow: 0 0 0 2px var(--color-black-600);
          box-shadow: 0 0 0 2px var(--color-black-600);
}
#custom-wp-login input[type=text]:focus,
#custom-wp-login input[type=password]:focus {
  -webkit-box-shadow: 0 0 0 2px var(--color-black-600), 0 0 0 4px oklch(0.481 0.162 259.037/0.6);
          box-shadow: 0 0 0 2px var(--color-black-600), 0 0 0 4px oklch(0.481 0.162 259.037/0.6);
  outline: none;
}
#custom-wp-login label {
  display: inline-block;
  cursor: pointer;
  margin-bottom: 0.5em;
  color: var(--color-black-900);
}
#custom-wp-login .login-remember label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
#custom-wp-login input[type=checkbox] {
  width: 1.25em;
  height: 1.25em;
}
#custom-wp-login input[type=submit] {
  color: var(--secondary-text-color);
  background-color: var(--color-red-400);
  display: block;
  width: 100%;
  font-size: 1.5rem;
  text-transform: uppercase;
  font-weight: 900;
}
#custom-wp-login input[type=submit]:hover, #custom-wp-login input[type=submit]:focus {
  background-color: var(--color-red-300);
}
#custom-wp-login input[type=submit]:focus {
  -webkit-box-shadow: 0 0 0 2px oklch(0.481 0.162 259.037/0.6);
          box-shadow: 0 0 0 2px oklch(0.481 0.162 259.037/0.6);
  outline: none;
}

.login-validation {
  display: block;
  margin-bottom: 1em;
  background-color: rgba(255, 255, 255, 0.5);
  padding: 0.5em;
  border-left: 5px solid red;
}

.action-button, #custom-wp-login input[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  font-family: var(--ff-base);
  padding: 0.75em 1em;
  border-radius: 5px;
  cursor: pointer;
}
.action-button:active, #custom-wp-login input[type=submit]:active {
  -webkit-transform: translateY(1px);
          transform: translateY(1px);
}

.create-form-content {
  width: calc(100% - 6em);
  max-width: 720px;
  margin: 2.5em auto;
}

.ui.form .horizontal.divider {
  color: hsl(195, 25%, 60%);
  margin-bottom: 2em;
}
.ui.form .horizontal.divider:not(:first-child) {
  margin-top: 4em;
}

.project-documents-list,
.transfer-documents-list {
  counter-reset: file-index;
}
.project-documents-list label:after,
.transfer-documents-list label:after {
  counter-increment: file-index;
  content: counter(file-index);
}
.project-documents-list .ui.icon.button > .icon,
.transfer-documents-list .ui.icon.button > .icon {
  pointer-events: none;
}

.material-property-list .ui.icon.button > .icon {
  pointer-events: none;
}

.project-list {
  margin-block: 0 1em;
  padding: 0;
}
.project-list .project-list-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1em 8em;
  grid-template-columns: 1fr 8em;
  gap: 1em;
  padding: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--color-white);
}
.project-list .project-list-item.is-visible {
  -webkit-animation: fade-in 0.5s ease;
          animation: fade-in 0.5s ease;
}
.project-list .project-list-item + .project-list-item {
  margin-top: 1em;
}
.project-list .item-title {
  font-weight: 600;
}
.project-list .item-status {
  text-align: right;
}

.import-preview-list {
  display: -ms-grid;
  display: grid;
  counter-reset: material-index;
  gap: 1em;
  max-height: 30rem;
  overflow-y: auto;
}

.material-preview label.ui::after {
  counter-increment: material-index;
  content: counter(material-index);
}
.material-preview .fields {
  margin-bottom: 0.5em !important;
}
.material-preview .ui.icon.button > .icon {
  pointer-events: none;
}
.material-preview .material-properties {
  margin-bottom: 0.5em !important;
}
.material-preview .material-options {
  margin-bottom: 0.5em !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em;
}

form:has(.material-preview) #project-import-placeholder {
  display: none;
}

.ui.form .notice {
  padding: 1em;
  border-left: 3px solid blue;
}
.ui.form .form-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.ui.form .form-actions [data-hidden=true] {
  display: none;
}

.ui.content .content-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.action-button {
  display: block;
  width: 100%;
  padding-inline: 1rem 4rem;
  padding-block: 0.875rem;
  color: var(--secondary-text-color);
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.4;
  background-color: var(--_status-color, var(--color-blue-fomantic));
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  text-align: center;
}
@media (min-width: 1460px) {
  .action-button {
    line-height: 1.6;
    padding-inline: 2rem 6rem;
    padding-block: 0.875rem;
  }
}
.action-button span {
  display: block;
}
.action-button .button-hint {
  display: none;
}
.action-button .icon {
  position: absolute;
  margin: 0;
  inset: 0;
  left: calc(100% - 3rem);
  width: 3rem;
  font-size: 1.25em;
  vertical-align: middle;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  place-content: center;
  place-items: center;
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
@media (min-width: 1460px) {
  .action-button .icon {
    left: calc(100% - 4rem);
    width: 4rem;
  }
}
.action-button:hover {
  background-color: var(--_status-color-hover, var(--_status-color, var(--color-blue-fomantic-dark)));
  color: var(--secondary-text-color);
}
.action-button.accent {
  --_status-color: var(--color-gray-600);
}
.action-button.accent:hover {
  opacity: 0.75;
}
.action-button[data-action=delete-project] {
  --_status-color: var(--color-white);
  color: var(--color-status-work);
  -webkit-box-shadow: 0 0 0 2px var(--color-status-work);
          box-shadow: 0 0 0 2px var(--color-status-work);
}
.action-button[data-action=delete-project]:hover {
  -webkit-box-shadow: 0 0 0 6px var(--color-status-work-dark);
          box-shadow: 0 0 0 6px var(--color-status-work-dark);
}

.project-meta .action-button + .action-button {
  margin-top: 1em;
}

#extra-work-project-fields,
#extra-work-project-fields-edit {
  -webkit-animation: fade-in 0.5s ease;
          animation: fade-in 0.5s ease;
  margin-bottom: 2em;
}
#extra-work-project-fields[data-hidden=true],
#extra-work-project-fields-edit[data-hidden=true] {
  display: none !important;
}

.duration-input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.duration-input-group .ui.dropdown {
  width: 100%;
  border-radius: 0;
}
.duration-input-group .ui.button {
  margin: 0;
}
.duration-input-group .ui.button:first-child {
  border-radius: 0.28571429rem 0 0 0.28571429rem;
}
.duration-input-group .ui.button:last-child {
  border-radius: 0 0.28571429rem 0.28571429rem 0;
}

.ui.form .field, .ui.form .grouped.fields, .ui.form .fields {
  margin-bottom: 2em;
}

#form-import-material .import-preview-list {
  margin-bottom: 2em;
}
#form-import-material:not(:has(.material-preview)) .submit {
  opacity: 0.5;
  pointer-events: none;
}

#form-add-project-documents:not(:has(.project-document-fields)) .submit {
  opacity: 0.5;
  pointer-events: none;
}

#form-add-transfer-documents:not(:has(.transfer-document-fields)) .submit {
  opacity: 0.5;
  pointer-events: none;
}

#form-project-add .two.fields {
  gap: 1em;
}
#form-project-add .checkbox {
  margin-top: 0 !important;
}
#form-project-add fieldset {
  padding-block: 1.5em;
  padding-inline: 1.5em;
  margin-bottom: 2em;
  border-color: rgba(34, 36, 38, 0.15);
}
#form-project-add fieldset :last-child {
  margin-bottom: 0;
}
#form-project-add fieldset:has(.enabler input:not(:checked)) .field:has(.enabler) {
  margin-bottom: 0;
}
#form-project-add fieldset:has(.enabler input:not(:checked)) .conditional {
  display: none;
}
#form-project-add legend {
  padding: 0.25em 0.5em;
  font-weight: bold;
}

.current-images {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 1.5em minmax(10px, 1fr) 1.5em minmax(10px, 1fr);
  grid-template-columns: repeat(3, minmax(10px, 1fr));
  gap: 1.5em;
}
.current-images img {
  width: 100%;
}
.current-images .item-image {
  place-content: end;
}
.current-images .image-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  margin-block: 0.5em;
}
.current-images .image-meta input {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.current-images .image-meta i.icon {
  pointer-events: none;
}
.current-images input[disabled] {
  pointer-events: revert;
}

.ui.modal > .scrolling.content {
  max-height: calc(90vh - 5rem);
}

.ui.form .fields.term-options {
  margin-bottom: 1.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.ui.form .fields.term-options .green.button {
  background-color: var(--color-status-success);
}

#additional-assembly-fields {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 1em;
}

.single-project main > div + div {
  margin: 3em 0;
}

.project-main {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: main;
  width: 100%;
  max-width: 1920px;
  margin-inline: auto;
}
.project-main__content {
  display: -ms-grid;
  display: grid;
  gap: 2em;
  position: relative;
}
@media (min-width: 1460px) {
  .project-main__content {
    gap: 4em;
  }
}

.project-content {
  padding-inline: 2em;
  display: -ms-grid;
  display: grid;
  gap: 3em 0;
  -ms-grid-rows: auto 3em auto 3em auto;
      grid-template-areas: "meta" "action" "main";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (min-width: 1300px) {
  .project-content {
        grid-template-areas: "meta main action";
    -ms-grid-columns: 300px 2em minmax(10px, 1fr) 2em 250px;
    grid-template-columns: 300px minmax(10px, 1fr) 250px;
    padding-inline: 1em;
    gap: 0 2em;
  }
  .project-content > .site-header__meta-menu {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .project-main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
@media (min-width: 1460px) {
  .project-content {
    -ms-grid-columns: 360px minmax(10px, 1fr) 300px;
    grid-template-columns: 360px minmax(10px, 1fr) 300px;
  }
}
@media (min-width: 1900px) {
  .project-content {
    gap: 0 3em;
    padding-inline: 3em;
  }
}
.project-content ul.debug li {
  margin: 1em 0;
  line-height: 1.7;
}
.project-content code {
  color: var(--secondary-text-color);
  background-color: var(--secondary-bg-color);
  padding: 0.1em 0.5em;
  display: inline-block;
  border-radius: 0.5em;
}

.project-action {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: action;
  display: -ms-grid;
  display: grid;
  row-gap: 3em;
  position: relative;
}
@media (max-width: 1299px) {
  .project-action > * {
    background-color: var(--alternate-bg-color);
    border-radius: 0.5em;
    padding: 1em;
    -webkit-box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
            box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
    border: 1px solid rgba(34, 36, 38, 0.15);
  }
}
.project-action h2 {
  font-size: 1.5em;
}
.project-action .status-todo {
  text-align: center;
}
@media (max-width: 1299px) {
  .project-action {
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1em;
    font-size: 14px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
}
.project-action section h2 {
  word-break: break-word;
  text-align: center;
}
.project-action .action-button[data-is-allowed="0"] {
  display: none;
}
.project-action .progress-container,
.project-action .approval-container {
  display: -ms-grid;
  display: grid;
  grid-auto-rows: -webkit-max-content;
  grid-auto-rows: max-content;
  gap: 1em;
}
@media (max-width: 989px) {
  .project-action .progress-container,
  .project-action .approval-container {
    background-color: var(--alternate-bg-color);
    border-radius: 0.5em;
    padding: 1em;
    -webkit-box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
            box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
    border: 1px solid rgba(34, 36, 38, 0.15);
  }
  .project-action .progress-container .action-button,
  .project-action .approval-container .action-button {
    padding-block: 1.5em;
  }
}
.project-action .approval-container h2 {
  word-break: break-word;
  text-align: center;
  margin: 0;
}
.project-action .approval-container .status-todo[data-hidden=true] {
  display: none;
}
.project-action .approval-container .approval-completed {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.8;
}
.project-action .approval-container .status-info-container h3 {
  color: var(--primary-text-color);
  white-space: nowrap;
}
.project-action .approval-container .button-container {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  --min: min(300px, 100%);
  grid-template-columns: repeat(auto-fit, minmax(var(--min), 1fr));
}
.project-action .approval-container .status-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
.project-action .approval-container .status-info .icon {
  -webkit-animation: glow 2s ease infinite;
          animation: glow 2s ease infinite;
}
.project-action .approval-container .status-info + .status-info {
  margin-top: 2em;
}
.project-action .approval-container .huge,
.project-action .approval-container .massive {
  opacity: 0.25;
}
.project-action .approval-container .temp-approvals {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.project-action .current-status {
  display: -ms-grid;
  display: grid;
  gap: 1em;
  grid-auto-rows: -webkit-max-content;
  grid-auto-rows: max-content;
  text-align: center;
}
.project-action .current-status h2 {
  margin: 0;
}
.project-action .current-status .badge {
  font-size: 1em;
  display: inline-block;
}
.project-action .current-status a {
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.project-action .current-status a:hover {
  opacity: 0.8;
}
.project-action .current-status .popup {
  text-align: initial;
}
.project-action .current-status .popup div {
  color: var(--primary-text-color);
  opacity: 0.75;
  margin-block: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25em;
}

.status-timetable {
  -webkit-transition: -webkit-box-shadow 0.2s ease;
  transition: -webkit-box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
.status-timetable.active {
  -webkit-box-shadow: 0 0 0 3px #2185d0;
          box-shadow: 0 0 0 3px #2185d0;
}
.status-timetable .header {
  line-height: 1.6;
}
.status-timetable .header span {
  font-size: 0.875rem;
}
.status-timetable .list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.status-timetable .list-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) -webkit-max-content;
  -ms-grid-columns: minmax(10px, 1fr) max-content;
  grid-template-columns: minmax(10px, 1fr) -webkit-max-content;
  grid-template-columns: minmax(10px, 1fr) max-content;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  padding: 0.6em 0;
  position: relative;
  -webkit-animation: fade-in 0.5s ease forwards;
          animation: fade-in 0.5s ease forwards;
}
.status-timetable .list-item:last-child {
  margin-bottom: 2em;
  font-weight: 400;
}
.status-timetable .list-item:nth-child(even) {
  background-color: rgba(0, 0, 50, 0.03);
}
.status-timetable .list-item .item-icon {
  -webkit-padding-start: 0.5em;
          padding-inline-start: 0.5em;
}
.status-timetable .list-item .item-title {
  text-align: left;
  padding-inline: 0.5em;
}
.status-timetable .list-item.detail {
  font-weight: 400;
  padding: 0.3em 0;
}
.status-timetable .list-item.detail .item-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  opacity: 0.6;
}
.status-timetable .list-item.detail .item-description {
  opacity: 0.6;
}
.status-timetable .list-item .item-description {
  padding-inline: 0.5em;
  text-align: right;
}
.status-timetable .list-item[data-type=highlighted], .status-timetable .list-item[data-type=delta] {
  font-weight: 700;
  border-top: 3px solid #ccc;
}
.status-timetable .list-item[data-status=good] {
  color: green;
}
.status-timetable .list-item[data-status=bad] {
  color: darkred;
}
.status-timetable .list-item:hover {
  background: rgba(0, 0, 0, 0.06);
}
.status-timetable .list-item[data-hidden=true] {
  display: none;
}
.status-timetable .list-item[data-type] {
  -ms-grid-columns: -webkit-max-content minmax(10px, 1fr) -webkit-max-content;
  -ms-grid-columns: max-content minmax(10px, 1fr) max-content;
  grid-template-columns: -webkit-max-content minmax(10px, 1fr) -webkit-max-content;
  grid-template-columns: max-content minmax(10px, 1fr) max-content;
}
.status-timetable .list-item[data-type$=entry] {
  -ms-grid-columns: 2em minmax(10px, 1fr) -webkit-max-content;
  -ms-grid-columns: 2em minmax(10px, 1fr) max-content;
  grid-template-columns: 2em minmax(10px, 1fr) -webkit-max-content;
  grid-template-columns: 2em minmax(10px, 1fr) max-content;
}
.status-timetable .list-item[data-type=time-entry] .item-title {
  font-size: 0.875em;
}
.status-timetable .list-item[data-type=extra-work-entry] {
  cursor: pointer;
}
.status-timetable .list-item.running .item-description {
  -webkit-animation: glow 2s ease infinite;
          animation: glow 2s ease infinite;
}
.status-timetable .list-item[data-current-user] {
  font-weight: 600;
}
.status-timetable .properties {
  text-align: center;
  padding-block: 1em;
  display: none;
  row-gap: 1em;
}
.status-timetable .properties:has(:not([data-hidden=true])) {
  display: -ms-grid;
  display: grid;
}
.status-timetable .properties [data-hidden=true] {
  display: none;
}
.status-timetable .item-actions[data-hidden=true] {
  display: none;
}
.status-timetable .item-actions button[data-hidden=true] {
  display: none;
}

.deadline-container {
  padding: 1.5em;
}
.deadline-container .ui.icon.button {
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  padding: 1em 2.5em 1em 1em !important;
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
}
.deadline-container .ui.icon.button .label {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.1);
  content: "";
  width: 2.5em;
  height: 100%;
  right: 0;
  top: 0;
  place-content: center;
}
.deadline-container .ui.button[data-hidden=true] {
  display: none;
}
.deadline-container[data-hidden=true] {
  display: none;
}

.ui.inverted.dimmer .start-in-progress .allowed p {
  margin-top: 1em;
  font-size: 1.5rem;
  max-width: 60ch;
  line-height: 1.6;
  color: var(--primary-text-color);
}
.ui.inverted.dimmer .start-in-progress .blocked {
  font-size: 1.5rem;
  max-width: 60ch;
  line-height: 1.6;
  color: var(--primary-text-color);
}
.ui.inverted.dimmer .start-in-progress .blocked .icon {
  color: var(--primary-text-color);
  font-size: 3rem;
}
.ui.inverted.dimmer .start-in-progress[data-dimmer-status=blocked] .allowed {
  display: none;
}
.ui.inverted.dimmer .start-in-progress[data-dimmer-status=allowed] .blocked {
  display: none;
}

.ui.inverted.dimmer .content {
  margin-top: 10rem;
}
.ui.inverted.dimmer .content button,
.ui.inverted.dimmer .content .icon {
  color: white;
}

.project-main .ui.dimmer {
  z-index: 800;
}

.status-logs[data-type] .log-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 2rem 1.5rem 2rem minmax(10px, 1fr);
  grid-template-columns: minmax(10px, 1fr) 1.5rem minmax(10px, 1fr);
  gap: 2rem;
  padding-bottom: 2rem;
  position: relative;
}
.status-logs[data-type] .log-item .status {
  text-align: right;
}
.status-logs[data-type] .log-item .bullet {
  width: 1.5rem;
  height: 1.5rem;
  background-color: #d5d5d5;
  border-radius: 50%;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.status-logs[data-type] .log-item .bullet .icon {
  margin: 0;
}
.status-logs[data-type] .log-item .bullet.add {
  background-color: var(--color-status-success);
  color: var(--secondary-text-color);
}
.status-logs[data-type] .log-item .bullet.minus {
  background-color: var(--color-red-300);
  color: var(--secondary-text-color);
}
.status-logs[data-type] .log-item .info {
  opacity: 0.6;
}
.status-logs[data-type] .log-item .info div + div {
  margin-top: 0.5em;
}
.status-logs[data-type] .log-item:before {
  width: 3px;
  height: 100%;
  background-color: #e7e7e7;
  left: 50%;
  translate: -50% 0;
  position: absolute;
  top: 0;
  content: "";
  z-index: 0;
}
.status-logs[data-type] .log-item:last-child.completed .bullet {
  background-color: var(--color-status-success);
  color: var(--secondary-text-color);
}
.status-logs[data-type] .log-item:last-child.completed:before {
  background-color: transparent;
}
.status-logs[data-type] .log-item:last-child:not(.completed):before {
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.75em, transparent), color-stop(0.75em, #e7e7e7), color-stop(2em, #e7e7e7));
  background-image: linear-gradient(0deg, transparent 0.75em, #e7e7e7 0.75em, #e7e7e7 2em);
  background-color: transparent;
  background-repeat: repeat-y;
  background-size: 100% 2em;
}

.ui.segment.project-status-log {
  padding: 1em;
}
.ui.segment.project-status-log > p {
  text-align: center;
}
.ui.segment.project-status-log > p span {
  opacity: 0.6;
}
.ui.segment.project-status-log .status-log-list {
  margin: 0;
  padding: 0;
  list-style: none;
  max-height: 380px;
  overflow-y: auto;
}
.ui.segment.project-status-log .status-log-item {
  padding-block: 1em;
  padding-inline: 0.25em;
}
.ui.segment.project-status-log .status-log-item:nth-child(even) {
  background-color: rgba(0, 0, 50, 0.03);
}
.ui.segment.project-status-log .status-log-item:hover {
  background-color: rgba(0, 0, 50, 0.06);
}
.ui.segment.project-status-log .status-log-item .badge {
  font-size: 0.75rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.ui.segment.project-status-log .status-log-item .badge:hover {
  opacity: 0.8;
}
.ui.segment.project-status-log .status-log-item .status:not(.badge) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.25em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.ui.segment.project-status-log .status-log-item .action-icon {
  width: 24px;
  text-align: center;
}
.ui.segment.project-status-log .status-log-item .action-icon .icon {
  margin: 0;
}
.ui.segment.project-status-log .status-log-item .info {
  margin-top: 0.5em;
  opacity: 0.75;
  font-size: 0.925rem;
}
.ui.segment.project-status-log .status-log-item .info div {
  margin-block: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25em;
  margin-left: 2rem;
}

.project-schedule-container .status {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em;
  cursor: pointer;
}
.project-schedule-container .status .label {
  color: var(--secondary-text-color);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  opacity: 0.1;
}
.project-schedule-container .status .label[data-hidden=true] {
  display: none;
}
.project-schedule-container .status .label.default {
  border-style: dashed;
  border-width: 2px;
  border-color: #999;
  background-color: transparent;
  color: var(--primary-text-color);
}
.project-schedule-container .status .label[data-status=ok] {
  background-color: orange;
}
.project-schedule-container .status .label[data-status=bad] {
  background-color: darkred;
}
.project-schedule-container .status .label[data-status=good] {
  background-color: green;
}
.project-schedule-container .status .label.active {
  opacity: 1;
}
.project-schedule-container .status .label .icon {
  margin: 0;
}
.project-schedule-container:has(.label[data-hidden=false]) .label[data-status] {
  display: none;
}
.project-schedule-container .date.badge {
  margin-left: 0.25em;
}

.project-notes {
  display: none;
}
.project-notes h2 {
  font-size: 1.2em;
}
.project-notes .note {
  line-height: 1.7;
  white-space: pre-line;
}
.project-notes .ui.ui.ui.ui.ui.ui.segment {
  border-top-width: 0.5em;
  min-height: 5em;
  padding-right: 14em;
}
.project-notes .ui.ui.ui.ui.ui.ui.segment .label {
  position: absolute;
  top: 0;
  right: 0;
  border-radius: 0 0 0 4px;
  background-color: transparent;
}
.project-notes:has(.note:not(:empty)) {
  display: block;
}

.temp-approvals .production-approvals {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr);
  grid-template-columns: repeat(1, minmax(10px, 1fr));
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em;
  margin-top: 2em;
  padding: 0;
  list-style: none;
}
.temp-approvals .approval.approved[data-status=cnc] {
  --_status-color: var(--color-status-cnc);
}
.temp-approvals .approval.approved[data-status=fitting] {
  --_status-color: var(--color-status-fitting);
}
.temp-approvals .approval.approved[data-status=finishing] {
  --_status-color: var(--color-status-finishing);
}
.temp-approvals .approval.approved button[data-action=toggle-approval] {
  border: 2px solid var(--_status-color);
}
.temp-approvals .approval.approved button[data-action=toggle-approval] .status i.lock:not(.open) {
  display: none;
}
.temp-approvals .approval.approved button[data-action=toggle-approval]:hover {
  -webkit-box-shadow: 0 0 0 2px var(--_status-color);
          box-shadow: 0 0 0 2px var(--_status-color);
}
.temp-approvals .approval.approved button[data-action=toggle-approval] .status {
  background-color: var(--_status-color);
}
.temp-approvals .approval.disabled {
  pointer-events: none;
  opacity: 0.5;
  --_status-color: #ccc;
}
.temp-approvals .approval:not(.approved) .status i.lock.open {
  display: none;
}
.temp-approvals .approval button[data-action=toggle-approval] {
  background-color: var(--color-white);
  position: relative;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  opacity: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border-radius: 5px;
  overflow: hidden;
  border: 2px solid #ccc;
  padding: 0;
  width: 100%;
  color: #999;
}
.temp-approvals .approval button[data-action=toggle-approval]:hover {
  -webkit-box-shadow: 0 0 0 2px #ccc;
          box-shadow: 0 0 0 2px #ccc;
}
.temp-approvals .approval .status {
  font-size: 1.5rem;
  width: 4rem;
  color: white;
  background-color: #ccc;
  -webkit-transition: 0.5s ease all;
  transition: 0.5s ease all;
  display: -ms-grid;
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.temp-approvals .approval .status i {
  margin: 0;
}
.temp-approvals .approval .info {
  padding: 1em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: var(--_status-color);
  display: -ms-grid;
  display: grid;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-columns: 1.5em 0.5em -webkit-max-content 0.5em -webkit-max-content;
  -ms-grid-columns: 1.5em 0.5em max-content 0.5em max-content;
  grid-template-columns: 1.5em -webkit-max-content -webkit-max-content;
  grid-template-columns: 1.5em max-content max-content;
}
.temp-approvals .approval .info svg {
  height: 1.18em;
  width: 1.18em;
}
.temp-approvals .approval .info svg rect, .temp-approvals .approval .info svg path, .temp-approvals .approval .info svg circle {
  fill: currentColor;
}
.temp-approvals .approval .info .name {
  font-weight: 700;
  text-transform: uppercase;
  font-family: var(--ff-accent);
}
.temp-approvals .approval .info .activity {
  display: none;
  width: 0.75em;
  height: 0.75em;
  line-height: 1;
  background-color: var(--color-red-300);
  border-radius: 99px;
  position: relative;
  margin-left: 0.5em;
  -webkit-animation: fade-in 1s ease;
          animation: fade-in 1s ease;
}
.temp-approvals .approval .info .activity:before {
  position: absolute;
  inset: -0.25em;
  background-color: var(--color-red-300);
  border-radius: 99px;
  -webkit-animation: pulsate 1.5s ease infinite;
          animation: pulsate 1.5s ease infinite;
  content: "";
}
.temp-approvals .approval:not(.active) .in-progress {
  visibility: hidden;
}
.temp-approvals .approval.active .activity {
  display: inline-block;
}

.project-meta {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: meta;
  display: -ms-grid;
  display: grid;
  row-gap: 2em;
  grid-auto-columns: 1fr;
}

.project-content > .project-meta {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
}

@media (max-width: 1619px){
  .site-header__logo {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .site-header__tool-menu {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .site-header__meta-menu {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
  }
  .site-header__user {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .project-meta {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
  }
}

@media (min-width: 1300px){
  .project-action {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .project-content > .project-meta {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}
.project-meta .meta-item[data-form-value] {
  cursor: pointer;
}
@media (max-width: 1299px) {
  .project-meta {
    text-align: center;
    font-size: 14px;
  }
  .project-meta .action-button {
    font-size: 14px;
    display: inline-block;
    margin-inline: auto;
    width: unset;
  }
  .project-meta .meta-list-container {
    -webkit-animation: fade-in 0.5s ease;
            animation: fade-in 0.5s ease;
  }
  .project-meta .meta-list-container[data-mobile-hidden=true] {
    display: none;
  }
}
.project-meta .project-header .arrow-button {
  display: none;
}
@media (max-width: 1299px) {
  .project-meta .project-header {
    padding: 1em;
    position: relative;
  }
  .project-meta .project-header:not([data-collapsed=true]) {
    cursor: pointer;
    background-color: var(--alternate-bg-color);
    border-radius: 0.5em;
    -webkit-box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
            box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
    border: 1px solid rgba(34, 36, 38, 0.15);
  }
  .project-meta .project-header:not([data-collapsed=true]) .arrow-button {
    color: #ccc;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    padding-inline: 1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.project-meta .project-title {
  -ms-hyphens: auto;
      hyphens: auto;
  line-height: 1.5;
  margin: 0;
  text-align: center;
}
@media (min-width: 1460px) {
  .project-meta .project-title {
    font-size: 1.75em;
  }
}
.project-meta .project-title .title {
  color: var(--color-white);
  border-radius: 0.25em;
  font-weight: 600;
  display: inline-block;
  font-size: 1.2rem;
  padding: 0.75em 1.5em;
}

.ui.segment.meta-list-container {
  margin: 0;
  padding: 1em;
  position: relative;
}
.ui.segment.meta-list-container[data-paused=true] [data-action=pause-project] {
  display: none;
}
.ui.segment.meta-list-container[data-paused=false] [data-action=unpause-project] {
  display: none;
}
.ui.segment.meta-list-container[data-prioritized=true] [data-action=prioritize-project] {
  display: none;
}
.ui.segment.meta-list-container[data-prioritized=true] [data-property=priority] {
  opacity: 0.1;
}
.ui.segment.meta-list-container[data-prioritized=false] [data-action=deprioritize-project] {
  display: none;
}
.ui.segment.meta-list-container:hover .menu-icon,
.ui.segment.meta-list-container .ui.dropdown.active .menu-icon {
  opacity: 1;
}
.ui.segment.meta-list-container [data-property=priority] {
  position: absolute;
  top: 1rem;
  bottom: 0.2em;
  left: 0;
  right: 0;
  overflow: hidden;
  opacity: 0;
  font-size: 10rem;
  color: #2185d0;
  line-height: 1;
  text-align: center;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  pointer-events: none;
}
.ui.segment.meta-list-container [data-property=priority] .icon {
  margin: 0;
}

.meta-list-menu {
  position: absolute;
  top: 1em;
  right: 1em;
  z-index: 900;
}
.meta-list-menu .ui.dropdown .menu {
  z-index: 3000;
}
.meta-list-menu .menu-icon {
  opacity: 0;
  padding: 0.25em 0.5em;
  margin: 0 !important;
  display: none;
  border-radius: 0.5rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  font-size: 1.25em;
}
@media (hover: none) {
  .meta-list-menu .menu-icon {
    display: block;
    opacity: 1;
  }
}
.meta-list-menu:hover .menu-icon,
.meta-list-menu .ui.dropdown.active .menu-icon {
  background-color: #ddd;
}
.meta-list-menu:has(.menu .item) {
  pointer-events: all;
}
.meta-list-menu:has(.menu .item) .menu-icon {
  display: initial;
}
.meta-list-menu .menu-icon {
  color: var(--primary-text-color);
}

.meta-list-properties {
  text-align: center;
  padding-block: 1em;
  display: none;
}
.meta-list-properties:has(:not([data-hidden=true])) {
  display: block;
}
.meta-list-properties [data-property] + [data-property] {
  margin-top: 1em;
}
.meta-list-properties [data-hidden=true] {
  display: none;
}

.meta-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.meta-list .spacer {
  height: 1.5em;
  background-color: transparent;
}

.meta-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 0.5em 1fr;
  grid-template-columns: auto 1fr;
  gap: 0.5em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em 0;
  position: relative;
}
.meta-item[data-disabled] {
  pointer-events: none;
}
.meta-item:nth-child(even) {
  background-color: rgba(0, 0, 50, 0.03);
}
.meta-item__title {
  text-align: left;
  color: color-mix(in hsl, var(--primary-text-color) 75%, transparent);
  padding-inline: 0.5em;
  white-space: nowrap;
}
.meta-item__description {
  padding-inline: 0.5em;
  text-align: right;
}
.meta-item span.badge {
  font-size: 0.85em;
}
.meta-item[data-project-meta=project-assembly] {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.meta-item[data-project-meta=project-assembly] .status-assembly {
  font-variant-numeric: tabular-nums;
}
.meta-item[data-required] .meta-item__description {
  font-weight: 700;
}
.meta-item[data-project-meta] .meta-item__description {
  color: var(--_status-color);
  word-wrap: anywhere;
}
.meta-item[data-project-meta] .meta-item__description .badge {
  display: inline-block;
  text-align: center;
  word-wrap: anywhere;
  white-space: normal;
}
.meta-item:hover {
  background: rgba(0, 0, 0, 0.06);
}
.meta-item[data-no-data] {
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.meta-item[data-no-data] .meta-item__description {
  text-align: center;
}
.meta-item[data-hidden=true] {
  display: none;
}
.meta-item.block {
  cursor: pointer;
}
.meta-item.block:not(:has(.meta-item__description i)) {
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
.meta-item.block:not(:has(.meta-item__description i)) .meta-item__description {
  text-align: left;
  font-weight: 600;
  white-space: pre-line;
}

[data-project-meta=project-total-invoiced-amount] {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
[data-project-meta=project-total-invoiced-amount] .value {
  font-variant-numeric: tabular-nums;
}
[data-project-meta=project-total-invoiced-amount] .profit {
  margin-top: 0.5em;
  font-size: 0.875em;
  font-variant-numeric: tabular-nums;
}
[data-project-meta=project-total-invoiced-amount] .profit.good {
  --_status-color: var(--color-status-good);
}
[data-project-meta=project-total-invoiced-amount] .profit.bad {
  --_status-color: var(--color-status-bad);
}

[data-project-meta=project-customer-email] a i {
  pointer-events: none;
}
[data-project-meta=project-customer-email][data-disabled] {
  cursor: initial !important;
  pointer-events: initial;
}

.ui.segment.meta-segment {
  margin: 0;
  padding: 1rem;
  overflow: hidden;
}
.ui.segment.meta-segment .header {
  font-size: 1em;
  text-transform: uppercase;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ccc;
}
.ui.segment.meta-segment .meta-content {
  font-size: 1.5em;
  text-align: center;
  padding: 1rem 0.5rem;
  position: relative;
}
.ui.segment.meta-segment .meta-content[data-action] {
  cursor: pointer;
}
.ui.segment.meta-segment .meta-content[data-action]:hover {
  background: rgba(0, 0, 0, 0.05);
}
.ui.segment.meta-segment .meta-content .icon {
  color: var(--_status-color);
  font-size: 3em;
  position: absolute;
  bottom: -0.3em;
  right: -0.4em;
  line-height: 1;
  font-weight: 700;
  opacity: 0.15;
}
.ui.segment.meta-segment[data-meta-content=""] .meta-content {
  display: none;
}
.ui.segment.meta-segment .no-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 5rem;
  opacity: 0.5;
  font-size: 1.2em;
  -webkit-animation: fade-in-half 0.5s ease;
          animation: fade-in-half 0.5s ease;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.ui.segment.meta-segment .no-meta[data-action] {
  cursor: pointer;
}
.ui.segment.meta-segment .no-meta[data-action]:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.05);
}
.ui.segment.meta-segment:not([data-meta-content=""]) .no-meta {
  display: none;
}

.project-progress__item {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  font-family: var(--ff-base);
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.project-progress__item:active {
  opacity: 0.75 !important;
}

.project-progress {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
}
@media (max-width: 989px) {
  .project-progress {
    font-size: 12px;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .project-progress::-webkit-scrollbar {
    display: none;
  }
}
.project-progress__item {
  text-transform: uppercase;
  font-size: 0.875em;
  text-align: center;
  font-weight: 400;
  position: relative;
  min-width: 100px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  font-family: var(--ff-accent);
  display: -ms-grid;
  display: grid;
  gap: 0.5em;
  justify-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5em;
  background-color: white;
  color: var(--_status-color);
}
@media (min-width: 1460px) {
  .project-progress__item {
    padding: 1.5rem 1rem;
    -ms-grid-columns: -webkit-max-content -webkit-max-content -webkit-max-content;
    -ms-grid-columns: max-content max-content max-content;
    grid-template-columns: -webkit-max-content -webkit-max-content -webkit-max-content;
    grid-template-columns: max-content max-content max-content;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.project-progress__item:hover {
  color: var(--_status-color);
}
.project-progress__item i {
  font-size: 1.5em;
}
.project-progress__item svg.custom {
  margin: 0 0.25rem 0 0;
  height: 1.5em;
  fill: currentColor;
}
.project-progress__item:not([data-completed], [data-current-status], [data-allowed], [data-debug]) {
  opacity: 0.3;
  pointer-events: none;
}
.project-progress__item[href]:hover, .project-progress__item[data-tab=active] {
  color: white;
  opacity: 1;
  background-color: var(--_status-color, var(--primary-text-color));
}
.project-progress__item[href]:hover .activity, .project-progress__item[data-tab=active] .activity {
  --_color: var(--color-white);
}
.project-progress__item[data-completed]:has(.custom) .check {
  display: inline-block;
}
.project-progress__item[data-completed] .custom {
  display: none;
}
.project-progress__item:not([data-completed]) .check {
  display: none;
}
.project-progress__item[data-current-status] {
  font-weight: 700;
}
.project-progress__item .activity {
  --_color: var(--color-red-300);
  display: inline-block;
  visibility: hidden;
  width: 0.75em;
  height: 0.75em;
  line-height: 1;
  background-color: var(--_color);
  border-radius: 99px;
  position: relative;
  margin-left: 0.5em;
  -webkit-animation: fade-in 1s ease;
          animation: fade-in 1s ease;
}
.project-progress__item .activity:before {
  position: absolute;
  inset: -0.25em;
  background-color: var(--_color);
  border-radius: 99px;
  -webkit-animation: pulsate 1.5s ease infinite;
          animation: pulsate 1.5s ease infinite;
  content: "";
}
.project-progress__item.active .activity {
  visibility: visible;
}

.estimates-wrapper .ui.tabular.menu {
  margin-left: 1.5em;
  border-bottom: none;
}

.estimates-container {
  height: 100%;
}
.estimates-container svg {
  height: 1em;
  fill: currentColor;
}
.estimates-container .estimates {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 1.5em minmax(10px, 1fr);
  grid-template-columns: repeat(2, minmax(10px, 1fr));
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5em;
}
.estimates-container .estimate-calculation {
  margin-top: 0.5em;
  text-align: center;
  -webkit-font-variant-ligatures: common-ligatures;
          font-variant-ligatures: common-ligatures;
  visibility: hidden;
}
.estimates-container .estimate-calculation:has(.value:not(:empty)) {
  visibility: visible;
}
.estimates-container .estimate-calculation span {
  display: inline-block;
}
.estimates-container .estimate-calculation span.value {
  font-weight: bold;
}
.estimates-container .estimate-calculation span.delta {
  margin-left: 1em;
}
.estimates-container .estimate-calculation span.delta.good {
  color: green;
}
.estimates-container .estimate-calculation span.delta.bad {
  color: red;
}
.estimates-container .ui.form {
  margin-top: 2em;
}
.estimates-container .ui.form .field > label.custom-label {
  display: block;
  font-weight: 600;
  text-align: center;
  margin-bottom: 1em;
  color: var(--_status-color);
  font-family: var(--ff-accent);
  text-transform: uppercase;
  font-size: 1em;
}
.estimates-container .form-actions {
  margin-top: 1.5em;
}
.estimates-container .ui.progress {
  margin: 0;
}
.estimates-container .ui.progress .bar:after {
  display: none;
}

.tasks-container .tasks {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(300px, 1fr);
  grid-template-columns: repeat(1, minmax(300px, 1fr));
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5em;
  margin-top: 2em;
  padding: 0;
  list-style: none;
}
.tasks-container .ui.progress {
  margin: 0;
}
.tasks-container .ui.progress .bar:after {
  display: none;
}
.tasks-container .task {
  background-color: var(--color-white);
  position: relative;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border-radius: 5px;
  overflow: hidden;
  border: 2px solid #ccc;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.tasks-container .task:hover {
  -webkit-box-shadow: 0 0 0 2px #ccc;
          box-shadow: 0 0 0 2px #ccc;
}
.tasks-container .task .status {
  font-size: 1.5rem;
  width: 4rem;
  height: 100%;
  color: white;
  background-color: #ccc;
  -webkit-transition: 0.5s ease all;
  transition: 0.5s ease all;
  position: relative;
}
.tasks-container .task .status i {
  font-family: "icons";
  font-style: normal;
  line-height: 1;
  display: inline-block;
  height: 100%;
}
.tasks-container .task .status i:before {
  width: 4rem;
  height: 100%;
  content: "";
  display: -ms-grid;
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
}
.tasks-container .task .info {
  padding: 1em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.tasks-container .task .name {
  font-weight: 600;
}
.tasks-container .task .date {
  font-family: var(--ff-accent);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  cursor: default;
  padding: 1em 1em 1em 3em;
  text-align: right;
}
.tasks-container .task .date .ui.icon.button {
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  padding: 1em 3.5em 1em 1em !important;
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
}
.tasks-container .task .date .ui.icon.button .label {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.1);
  content: "";
  width: 2.5em;
  height: 100%;
  right: 0;
  top: 0;
  place-content: center;
}
.tasks-container .task .date i {
  pointer-events: none;
}
.tasks-container .task.completed {
  border: 2px solid var(--color-status-fitting);
}
.tasks-container .task.completed:hover {
  -webkit-box-shadow: 0 0 0 2px var(--color-status-fitting);
          box-shadow: 0 0 0 2px var(--color-status-fitting);
}
.tasks-container .task.completed .status {
  background-color: var(--color-status-fitting);
}
.tasks-container .task.completed .status i:before {
  content: "\f00c";
}
.tasks-container .task.loading {
  pointer-events: none;
  -webkit-animation: loading-glow 1.5s infinite ease-in;
          animation: loading-glow 1.5s infinite ease-in;
}

.action-container-group {
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: 2em;
     -moz-column-gap: 2em;
          column-gap: 2em;
  row-gap: 2em;
}
.action-container-group:not(.stretched) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (min-width: 1900px) {
  .action-container-group {
    -ms-grid-columns: minmax(10px, 1fr) minmax(10px, 1fr);
    grid-template-columns: minmax(10px, 1fr) minmax(10px, 1fr);
  }
}

.action-container.ui.segment {
  border-radius: 1em;
  margin: 0;
}
.action-container .header {
  font-size: 1.375rem;
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  text-transform: uppercase;
  font-family: var(--ff-accent);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 2em;
}
.action-container .header h2 {
  font-size: 1em;
  margin: 0;
}
.action-container .header h2 .count {
  background-color: var(--secondary-bg-color);
  margin-left: 1em;
}
.action-container .header .header-data {
  font-weight: 600;
  text-align: right;
}
.action-container .header .header-data .value {
  font-variant-numeric: tabular-nums;
}
.action-container .header .header-data .value.completed {
  color: var(--color-status-success);
}
.action-container .ui.tabular.menu {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.action-container .ui.tabular.menu .icon {
  display: none;
}
.action-container .ui.tabular.menu a.item {
  background-color: #ddd;
}
.action-container .ui.tabular.menu a.item.active {
  background-color: #ccc;
}
.action-container .ui.tabular.menu a.item:not(.active):hover {
  background-color: #ccc;
}
.action-container .ui.tabular.menu a.item.special {
  color: #2185d0;
  font-weight: bold;
}
.action-container .ui.tabular.menu a.item.completed {
  background-color: var(--color-status-success-light);
  color: var(--secondary-text-color);
}
.action-container .ui.tabular.menu a.item.completed .icon {
  display: revert;
}
.action-container .ui.tabular.menu a.item.completed.active {
  background-color: var(--color-status-success);
}
.action-container .ui.tabular.menu a.item.completed:not(.active):hover {
  background-color: var(--color-status-success);
}
.action-container .no-posts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 5rem;
  margin-bottom: 1rem;
  opacity: 0.5;
  font-size: 1.2em;
  text-align: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.action-container:has(.list-item) .item-list {
  display: block;
}
.action-container:has(.list-item) .no-posts {
  display: none;
}
.action-container:has(.list-item:nth-child(2)) .list-actions,
.action-container:has(.list-item:nth-child(2)) .view-actions {
  display: block;
}
.action-container .item-list {
  margin: 1em 0;
  padding: 0;
  list-style: none;
  display: none;
  max-height: 600px;
  overflow-y: auto;
}
.action-container .list-item {
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em;
  position: relative;
}
.action-container .list-item.can-toggle {
  cursor: pointer;
}
.action-container .list-item:nth-child(even) {
  background-color: rgba(0, 0, 50, 0.03);
}
.action-container .list-item:hover {
  background: rgba(0, 0, 0, 0.06);
}
.action-container .list-item .item-image img {
  display: block;
  width: 3.5rem;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.action-container .list-item .item-image .icon {
  font-size: 3rem;
  opacity: 0.6;
}
.action-container .list-item .item-icon {
  text-align: center;
}
.action-container .list-item .item-icon i {
  margin: 0;
}
.action-container .list-item .item-icon.angle i {
  rotate: -90deg;
}
.action-container .list-item .item-title {
  display: -ms-grid;
  display: grid;
  row-gap: 0.5em;
}
.action-container .list-item .item-title .title {
  font-weight: 600;
  color: var(--color-black-600);
}
.action-container .list-item .item-title .content:empty {
  display: none;
}
.action-container .list-item .item-title .content,
.action-container .list-item .item-title .details {
  opacity: 0.9;
}
.action-container .list-item .item-title .details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.action-container .list-item .item-title .details span {
  white-space: nowrap;
}
.action-container .list-item .item-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  grid-column: 1/-1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 1em;
}
.action-container .list-item .item-actions span {
  white-space: nowrap;
}
.action-container .list-item .item-actions button[data-hidden=true] {
  display: none;
}
.action-container .list-item.collapsed .angle i {
  rotate: 0deg;
}
.action-container .list-item.collapsed .details,
.action-container .list-item.collapsed .item-actions {
  display: none;
}
.action-container .list-item.collapsed .item-images img {
  width: 3.5em;
}
.action-container .list-item.highlighted {
  -webkit-animation: highlighted-element 0.2s linear forwards;
          animation: highlighted-element 0.2s linear forwards;
}
.action-container .list-item .item-images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  grid-column: 1/-1;
  margin-block: 1em;
}
.action-container .list-item .item-images a {
  display: inline-block;
  overflow: hidden;
}
.action-container .list-item .item-images img {
  display: block;
  width: 5em;
  height: auto;
}
.action-container .list-item .item-images:empty {
  display: none;
}
.action-container .remaining-work-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 3.5rem 1rem 1fr 1rem -webkit-max-content 1rem -webkit-max-content;
  -ms-grid-columns: 3.5rem 1rem 1fr 1rem max-content 1rem max-content;
  grid-template-columns: 3.5rem 1fr -webkit-max-content -webkit-max-content;
  grid-template-columns: 3.5rem 1fr max-content max-content;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em;
  cursor: pointer;
  position: relative;
}
.action-container .remaining-work-item:not(.collapsed) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.action-container .remaining-work-item:not(.completed) .item-info .badge {
  display: none;
}
.action-container .remaining-work-item.completed .item-info button {
  display: none;
}
.action-container .remaining-work-item .description {
  white-space: pre-line;
}
.action-container .remaining-work-item .description:empty {
  display: none;
}
.action-container .remaining-work-item .description:not(:empty) + .status {
  margin-top: 0.5em;
}
.action-container .extra-work-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 3.5rem 1rem 1fr 1rem -webkit-max-content 1rem -webkit-max-content;
  -ms-grid-columns: 3.5rem 1rem 1fr 1rem max-content 1rem max-content;
  grid-template-columns: 3.5rem 1fr -webkit-max-content -webkit-max-content;
  grid-template-columns: 3.5rem 1fr max-content max-content;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em;
  cursor: pointer;
  position: relative;
}
.action-container .extra-work-item:not(.collapsed) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.action-container .extra-work-item .item-info .time {
  font-size: 1rem;
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
  color: var(--_status-color, var(--secondary-bg-color));
  font-weight: 700;
}
.action-container .material-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(10px, 1fr) 1rem -webkit-max-content 1rem -webkit-min-content 1rem -webkit-max-content;
  -ms-grid-columns: minmax(10px, 1fr) 1rem max-content 1rem min-content 1rem max-content;
  grid-template-columns: minmax(10px, 1fr) -webkit-max-content -webkit-min-content -webkit-max-content;
  grid-template-columns: minmax(10px, 1fr) max-content min-content max-content;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em;
  cursor: pointer;
  position: relative;
}
@media (min-width: 1900px) {
  .action-container .material-item {
    -ms-grid-columns: minmax(10px, 1fr) -webkit-max-content -webkit-max-content -webkit-max-content;
    -ms-grid-columns: minmax(10px, 1fr) max-content max-content max-content;
    grid-template-columns: minmax(10px, 1fr) -webkit-max-content -webkit-max-content -webkit-max-content;
    grid-template-columns: minmax(10px, 1fr) max-content max-content max-content;
  }
}
.action-container .material-item .title .label {
  margin-left: 0.5em;
}
.action-container .material-item .order-info {
  padding-right: 1em;
}
.action-container .material-item .order-info span {
  display: block;
  font-size: 11px;
  opacity: 0.6;
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}
.action-container .material-item .order-info span + span {
  margin-top: 0.5em;
}
.action-container .material-item .order-info span .icon {
  pointer-events: none;
}
.action-container .material-item .item-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
}
.action-container .material-item:not(.collapsed) {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.action-container .material-item .icon.button {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.action-container .material-item .icon.button .icon {
  pointer-events: none;
}
.action-container .material-item [data-active=true] {
  background-color: var(--color-status-success);
  color: var(--secondary-text-color);
}
.action-container .material-item [data-active=true]:hover, .action-container .material-item [data-active=true]:active {
  background-color: var(--color-status-success-dark);
}
.action-container .material-item.pending-order [data-meta=material-delivery-date] {
  opacity: 1;
  color: darkred;
}
.action-container .attachment-item {
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75em;
  position: relative;
}
.action-container .attachment-item:not(.collapsed) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.action-container .container-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2em;
}
.action-container .action-button {
  display: inline-block;
  width: auto;
}
.action-container .view-actions {
  text-align: right;
  display: none;
}
.action-container .view-actions[data-hidden=true] {
  display: none;
}
.action-container .list-actions {
  text-align: center;
  display: none;
}
@media (min-width: 1900px) {
  .action-container .list-actions {
    text-align: right;
  }
}
.action-container .list-actions .ui.button {
  background-color: var(--color-status-success);
  color: var(--secondary-text-color);
}
.action-container .list-actions .ui.button:hover {
  background-color: var(--color-status-success-dark);
}
.action-container .list-actions .ui.button[data-action*=delete] {
  background-color: var(--color-red-300);
}
.action-container .list-actions .ui.button[data-action*=delete]:hover {
  background-color: var(--color-red-400);
}
.action-container .list-actions .icon.button {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.action-container .list-actions .icon.button .icon {
  pointer-events: none;
}
.action-container .list-actions[data-hidden=true] {
  display: none;
}
.action-container .list-actions + .container-actions {
  margin-top: 1em;
}
.action-container[data-post-type=material] {
  opacity: 0;
}
.action-container[data-post-type=material]:not(:has(.active.dimmer)) {
  -webkit-animation: fade-in 0.2s ease forwards;
          animation: fade-in 0.2s ease forwards;
}
.action-container[data-post-type=material] .content .comment {
  white-space: pre-line;
}
.action-container[data-post-type=material] .content .comment:empty {
  display: none;
}
.action-container[data-post-type=material] .content .properties {
  font-size: 0.875em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.action-container[data-post-type=material] .content .properties:empty {
  display: none;
}
.action-container[data-post-type=material] .content .comment:not(:empty) + .properties:not(:empty) {
  margin-top: 1em;
}
.action-container[data-post-type=material] .item-info .compact.button i {
  margin-right: 0.25em !important;
}
.action-container[data-post-type=material] .item-lists {
  margin: 1em 0;
  overflow-y: auto;
}
.action-container[data-post-type=material] .item-list {
  margin: 0;
  display: none;
}
.action-container[data-post-type=material] .item-list.active:has(.list-item) {
  display: block;
}
.action-container[data-post-type=material] .container-actions {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
.action-container[data-post-type=material] .container-actions + .container-actions {
  margin-top: 1em;
}
.action-container[data-post-type=material] .action-button.disabled {
  opacity: 0.5;
  pointer-events: none;
}
.action-container[data-post-type=material] button[data-action=unfocus-materials] {
  display: none;
}
.action-container[data-post-type=material].focus-mode {
  position: fixed;
  inset: 0;
  display: -ms-grid;
  display: grid;
  height: calc(100dvh - var(--wp-admin--admin-bar--height, 0));
  width: 100dvw;
  top: var(--wp-admin--admin-bar--height, 0);
  -ms-grid-rows: -webkit-max-content -webkit-max-content -webkit-max-content minmax(10px, 1fr);
  -ms-grid-rows: max-content max-content max-content minmax(10px, 1fr);
  grid-template-rows: -webkit-max-content -webkit-max-content -webkit-max-content minmax(10px, 1fr);
  grid-template-rows: max-content max-content max-content minmax(10px, 1fr);
  -webkit-animation: fade-in 0.3s ease;
          animation: fade-in 0.3s ease;
}
.action-container[data-post-type=material].focus-mode .item-list {
  max-height: initial;
}
.action-container[data-post-type=material].focus-mode button[data-action=focus-materials] {
  display: none;
}
.action-container[data-post-type=material].focus-mode button[data-action=unfocus-materials] {
  display: inline-block;
}
.action-container[data-post-type=attachment][data-category=project-document] {
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
}
.action-container[data-post-type=attachment][data-category=project-document] .item-title {
  row-gap: 1rem;
}
.action-container[data-post-type=attachment][data-category=project-document] .header {
  font-size: 1em;
}
.action-container[data-post-type=attachment][data-category=project-document] .title {
  text-align: left;
  font-size: 0.925em;
}
.action-container[data-post-type=attachment][data-category=project-document] .details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.875em;
  gap: 1em;
}
.action-container[data-post-type=attachment][data-category=project-document] .item-list {
  max-height: 240px;
  overflow-y: auto;
}
.action-container[data-post-type=attachment][data-category=project-document] .attachment-item {
  -ms-grid-columns: minmax(10px, 1fr) -webkit-max-content;
  -ms-grid-columns: minmax(10px, 1fr) max-content;
  grid-template-columns: minmax(10px, 1fr) -webkit-max-content;
  grid-template-columns: minmax(10px, 1fr) max-content;
  cursor: pointer;
}
.action-container[data-post-type=attachment][data-category=project-document] .attachment-item.collapsed .details {
  display: none;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .attachment-item {
  -ms-grid-columns: 1.5rem 1fr 6rem 7rem 9rem 7rem;
  grid-template-columns: 1.5rem 1fr 6rem 7rem 9rem 7rem;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-title {
  display: block;
  font-weight: 600;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-extension,
.action-container[data-post-type=attachment][data-category=transfer-document] .item-filesize,
.action-container[data-post-type=attachment][data-category=transfer-document] .item-date {
  opacity: 0.6;
  text-align: center;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-type {
  text-align: center;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-type i {
  margin: 0;
  font-size: 1.25em;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-type .word {
  color: #0c4db3;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-type .pdf {
  color: #f20f00;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-type .image {
  color: #49b49a;
}
.action-container[data-post-type=attachment][data-category=transfer-document] .item-actions {
  display: block;
}

.status-workers-container h2 {
  font-size: 1em;
}
.status-workers-container .segment {
  position: relative;
}
.status-workers-container .segment:last-child::before {
  display: none;
}
.status-workers-container .segment::before {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 1px;
  background-color: #ccc;
}
.status-workers-container .segment-header {
  display: block;
  font-weight: 600;
  text-align: center;
  margin-bottom: 1em;
  color: var(--_status-color);
  font-family: var(--ff-accent);
  text-transform: uppercase;
  font-size: 1em;
}
.status-workers-container .segment-header svg {
  height: 1em;
  fill: currentColor;
}
.status-workers-container .content {
  margin-top: 1.5em;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(10px, 1fr))[5];
  grid-template-columns: repeat(5, minmax(10px, 1fr));
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.action-container[data-post-type=invoice] .header-data .value {
  font-variant-numeric: tabular-nums;
}
.action-container[data-post-type=invoice] .list-item {
  -ms-grid-columns: 1fr -webkit-max-content 7em -webkit-max-content;
  -ms-grid-columns: 1fr max-content 7em max-content;
  grid-template-columns: 1fr -webkit-max-content 7em -webkit-max-content;
  grid-template-columns: 1fr max-content 7em max-content;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.action-container[data-post-type=invoice] .list-item .comment {
  white-space: pre-line;
}
.action-container[data-post-type=invoice] .list-item .comment:empty {
  display: none;
}
.action-container[data-post-type=invoice] .list-item .item-date,
.action-container[data-post-type=invoice] .list-item .item-info {
  font-variant-numeric: tabular-nums;
}
.action-container[data-post-type=invoice] .list-item .item-info {
  text-align: right;
}
.action-container[data-post-type=invoice] .item-info {
  font-size: 1rem;
  font-family: var(--ff-accent);
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  color: var(--_status-color);
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-half {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes fade-in-half {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.5;
  }
}
@-webkit-keyframes glow {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes glow {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes inverted-glow {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes inverted-glow {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes wiggle {
  0%, 25% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  100% {
    -webkit-transform: translate(5rem);
            transform: translate(5rem);
  }
}
@keyframes wiggle {
  0%, 25% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  100% {
    -webkit-transform: translate(5rem);
            transform: translate(5rem);
  }
}
@-webkit-keyframes highlighted-element {
  0%, 25% {
    background-color: inherit;
  }
  100% {
    background-color: rgba(0, 0, 0, 0.1);
  }
}
@keyframes highlighted-element {
  0%, 25% {
    background-color: inherit;
  }
  100% {
    background-color: rgba(0, 0, 0, 0.1);
  }
}
@-webkit-keyframes pulsate {
  0% {
    -webkit-transform: scale(0.1, 0.1);
            transform: scale(0.1, 0.1);
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  75% {
    opacity: 0.25;
  }
  100% {
    -webkit-transform: scale(1.5, 1.5);
            transform: scale(1.5, 1.5);
    opacity: 0;
  }
}
@keyframes pulsate {
  0% {
    -webkit-transform: scale(0.1, 0.1);
            transform: scale(0.1, 0.1);
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  75% {
    opacity: 0.25;
  }
  100% {
    -webkit-transform: scale(1.5, 1.5);
            transform: scale(1.5, 1.5);
    opacity: 0;
  }
}
[data-debug][data-hidden=true] {
  display: none !important;
}

.debug.execution-time {
  text-align: center;
  padding-bottom: 2em;
}

.debug.edit-post-link {
  text-align: center;
  padding-bottom: 2em;
}

.debug-segments {
  padding: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}

.ui.debug.segment {
  margin: 0;
}
.ui.debug.segment div.content {
  display: -ms-grid;
  display: grid;
  gap: 1em;
}
.ui.debug.segment div.content > div {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(6em, -webkit-max-content) 1em 1fr;
  -ms-grid-columns: minmax(6em, max-content) 1em 1fr;
  grid-template-columns: minmax(6em, -webkit-max-content) 1fr;
  grid-template-columns: minmax(6em, max-content) 1fr;
  gap: 1em;
}
.ui.debug.segment div.content span {
  text-align: right;
}
.ui.debug.segment div.content .row {
  display: block;
}

.debug.block {
  background-color: #fff;
  border: 2px dashed #ddd;
  text-align: center;
  place-content: center;
  padding: 2em;
  text-transform: uppercase;
  font-family: var(--ff-accent);
  font-weight: 600;
}

.project-main .debug.block + .debug.block,
.project-main .nag + .debug.block {
  margin-top: 2em;
}

[data-list=debug-log].hidden {
  display: none;
}

td.debug {
  opacity: 0.4;
}
/*# sourceMappingURL=style.css.map */