:root {
  --direction: ltr;
  --disabled-opacity: 0.3;
  --base-height-multiplier: 8;
  --base-horizontal-spacing-multiplier: 3;
  --density: 0;
  --design-unit: 4;
  --control-corner-radius: 4;
  --layer-corner-radius: 8;
  --stroke-width: 1;
  --focus-stroke-width: 2;
  --body-font: "Segoe UI Variable", "Segoe UI", sans-serif;
  --font-weight: 400;
  --type-ramp-base-font-size: 14px;
  --type-ramp-base-line-height: 20px;
  --type-ramp-base-font-variations: "wght" 400, "opsz" 10.5;
  --type-ramp-minus-1-font-size: 12px;
  --type-ramp-minus-1-line-height: 16px;
  --type-ramp-minus-1-font-variations: "wght" 400, "opsz" 8;
  --type-ramp-minus-2-font-size: 10px;
  --type-ramp-minus-2-line-height: 14px;
  --type-ramp-minus-2-font-variations: "wght" 400, "opsz" 8;
  --type-ramp-plus-1-font-size: 16px;
  --type-ramp-plus-1-line-height: 22px;
  --type-ramp-plus-1-font-variations: "wght" 400, "opsz" 10.5;
  --type-ramp-plus-2-font-size: 20px;
  --type-ramp-plus-2-line-height: 26px;
  --type-ramp-plus-2-font-variations: "wght" 400, "opsz" 10.5;
  --type-ramp-plus-3-font-size: 24px;
  --type-ramp-plus-3-line-height: 32px;
  --type-ramp-plus-3-font-variations: "wght" 400, "opsz" 10.5;
  --type-ramp-plus-4-font-size: 28px;
  --type-ramp-plus-4-line-height: 36px;
  --type-ramp-plus-4-font-variations: "wght" 400, "opsz" 36;
  --type-ramp-plus-5-font-size: 32px;
  --type-ramp-plus-5-line-height: 40px;
  --type-ramp-plus-5-font-variations: "wght" 400, "opsz" 36;
  --type-ramp-plus-6-font-size: 40px;
  --type-ramp-plus-6-line-height: 52px;
  --type-ramp-plus-6-font-variations: "wght" 400, "opsz" 36;
  --base-layer-luminance: 0.98;
  --neutral-base-color: #808080;
  --accent-base-color: #0078d4;
  --neutral-layer-card-container: #f3f3f3;
  --neutral-layer-floating: #ffffff;
  --neutral-layer-1: #fbfbfb;
  --neutral-layer-2: #f3f3f3;
  --neutral-layer-3: #ebebeb;
  --neutral-layer-4: #e0e0e0;
  --fill-color: #fbfbfb;
  --accent-fill-rest: #036ac4;
  --accent-fill-hover: #0473ce;
  --accent-fill-active: #0481e0;
  --accent-fill-focus: #036ac4;
  --foreground-on-accent-rest: #ffffff;
  --foreground-on-accent-hover: #ffffff;
  --foreground-on-accent-active: #ffffff;
  --foreground-on-accent-focus: #ffffff;
  --accent-foreground-rest: #023b8f;
  --accent-foreground-hover: #012e7f;
  --accent-foreground-active: #0360b9;
  --accent-foreground-focus: #023b8f;
  --accent-stroke-control-rest: linear-gradient(#1c79ca 90%, #024885 100%);
  --accent-stroke-control-hover: linear-gradient(#1b80d2 90%, #035292 100%);
  --accent-stroke-control-active: #1b8ce3;
  --accent-stroke-control-focus: linear-gradient(#1c79ca 90%, #024885 100%);
  --neutral-fill-rest: #ffffff;
  --neutral-fill-hover: #f7f7f7;
  --neutral-fill-active: #fbfbfb;
  --neutral-fill-focus: #fbfbfb;
  --neutral-fill-input-rest: #ffffff;
  --neutral-fill-input-hover: #f7f7f7;
  --neutral-fill-input-active: #fbfbfb;
  --neutral-fill-input-focus: #ffffff;
  --neutral-fill-input-alt-rest: #f3f3f3;
  --neutral-fill-input-alt-hover: #ebebeb;
  --neutral-fill-input-alt-active: #e0e0e0;
  --neutral-fill-input-alt-focus: #f3f3f3;
  --neutral-fill-layer-rest: #ffffff;
  --neutral-fill-layer-hover: #ffffff;
  --neutral-fill-layer-active: #ffffff;
  --neutral-fill-layer-alt-rest: #ffffff;
  --neutral-fill-secondary-rest: #efefef;
  --neutral-fill-secondary-hover: #f3f3f3;
  --neutral-fill-secondary-active: #f7f7f7;
  --neutral-fill-secondary-focus: #efefef;
  --neutral-fill-stealth-rest: #fbfbfb;
  --neutral-fill-stealth-hover: #efefef;
  --neutral-fill-stealth-active: #f3f3f3;
  --neutral-fill-stealth-focus: #fbfbfb;
  --neutral-fill-strong-rest: #717171;
  --neutral-fill-strong-hover: #4b4b4b;
  --neutral-fill-strong-active: #868686;
  --neutral-fill-strong-focus: #717171;
  --neutral-foreground-rest: #1a1a1a;
  --neutral-foreground-hover: #7a7a7a;
  --neutral-foreground-active: #a8a8a8;
  --neutral-foreground-focus: #1a1a1a;
  --neutral-foreground-hint: #717171;
  --neutral-stroke-rest: #d6d6d6;
  --neutral-stroke-hover: #c6c6c6;
  --neutral-stroke-active: #e0e0e0;
  --neutral-stroke-focus: #d6d6d6;
  --neutral-stroke-control-rest: linear-gradient(#efefef 90%, #d6d6d6 100%);
  --neutral-stroke-control-hover: linear-gradient(#e5e5e5 90%, #cecece 100%);
  --neutral-stroke-control-active: #e5e5e5;
  --neutral-stroke-control-focus: linear-gradient(#e5e5e5 90%, #cecece 100%);
  --neutral-stroke-divider-rest: #ebebeb;
  --neutral-stroke-input-rest: linear-gradient(
    #efefef calc(100% - 1px),
    #929292 calc(100% - 1px),
    #929292
  );
  --neutral-stroke-input-hover: linear-gradient(
    #e5e5e5 calc(100% - 1px),
    #8a8a8a calc(100% - 1px),
    #8a8a8a
  );
  --neutral-stroke-input-active: #e5e5e5;
  --neutral-stroke-input-focus: linear-gradient(
    #e5e5e5 calc(100% - 1px),
    #8a8a8a calc(100% - 1px),
    #8a8a8a
  );
  --neutral-stroke-layer-rest: #efefef;
  --neutral-stroke-layer-hover: #efefef;
  --neutral-stroke-layer-active: #efefef;
  --neutral-stroke-strong-rest: #636363;
  --neutral-stroke-strong-hover: #636363;
  --neutral-stroke-strong-active: #636363;
  --neutral-stroke-strong-focus: #636363;
  --focus-stroke-outer: #000000;
  --focus-stroke-inner: #ffffff;
  --foreground-on-accent-rest-large: #ffffff;
  --foreground-on-accent-hover-large: #ffffff;
  --foreground-on-accent-active-large: #ffffff;
  --foreground-on-accent-focus-large: #ffffff;
  --neutral-fill-inverse-rest-delta: 0;
  --neutral-fill-inverse-hover-delta: -3;
  --neutral-fill-inverse-active-delta: 7;
  --neutral-fill-inverse-focus-delta: 0;
  --neutral-fill-inverse-rest: #131313;
  --neutral-fill-inverse-hover: #272727;
  --neutral-fill-inverse-active: #000000;
  --neutral-fill-inverse-focus: #131313;
  --neutral-fill-stealth-rest-on-neutral-fill-layer-rest: #ffffff;
  --neutral-fill-stealth-hover-on-neutral-fill-layer-rest: #f3f3f3;
  --neutral-fill-stealth-active-on-neutral-fill-layer-rest: #f7f7f7;
  --elevation-shadow-card-rest-size: 4;
  --elevation-shadow-card-hover-size: 8;
  --elevation-shadow-card-active-size: 0;
  --elevation-shadow-card-focus-size: 8;
  --elevation-shadow-card-rest: 0 0 2px rgba(0, 0, 0, 0.12),
    0 calc(4 * 0.5px) calc((4 * 1px)) rgba(0, 0, 0, 0.14);
  --elevation-shadow-card-hover: 0 0 2px rgba(0, 0, 0, 0.12),
    0 calc(8 * 0.5px) calc((8 * 1px)) rgba(0, 0, 0, 0.14);
  --elevation-shadow-card-active: 0 0 2px rgba(0, 0, 0, 0.12),
    0 calc(0 * 0.5px) calc((0 * 1px)) rgba(0, 0, 0, 0.14);
  --elevation-shadow-card-focus: 0 0 2px rgba(0, 0, 0, 0.12),
    0 calc(8 * 0.5px) calc((8 * 1px)) rgba(0, 0, 0, 0.14);
  --elevation-shadow-tooltip-size: 16;
  --elevation-shadow-tooltip: 0 0 2px rgba(0, 0, 0, 0.12),
    0 calc(16 * 0.5px) calc((16 * 1px)) rgba(0, 0, 0, 0.14);
  --elevation-shadow-flyout-size: 32;
  --elevation-shadow-flyout: 0 0 2px rgba(0, 0, 0, 0.2),
    0 calc(32 * 0.5px) calc((32 * 1px)) rgba(0, 0, 0, 0.24);
  --elevation-shadow-dialog-size: 128;
  --elevation-shadow-dialog: 0 0 2px rgba(0, 0, 0, 0.2),
    0 calc(128 * 0.5px) calc((128 * 1px)) rgba(0, 0, 0, 0.24);
  --input-placeholder-rest: #767676;
  --input-placeholder-hover: #717171;
  --input-filled-placeholder-rest: #6c6c6c;
  --input-filled-placeholder-hover: #6c6c6c;
  --clear-button-hover: #f3f3f3;
  --clear-button-active: #f7f7f7;
  --tree-item-expand-collapse-hover: #e0e0e0;
  --tree-item-expand-collapse-selected-hover: #e0e0e0;
  --primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  --gradient-1: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
  --gradient-2: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
  --gradient-3: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
  --gradient-4: linear-gradient(135deg, #d299c2 0%, #fef9d7 100%);

  --bs-body-bg: #f5f7fa;
}

body {
  height: 100vh;
  height: 100dvh;
  width: 100vw;
  width: 100dvw;
  overflow: hidden;
}

/* Avoid Chrome to see Safari hack */
@supports (-webkit-touch-callout: none) {
  html {
    /* The hack for Safari */
    height: -webkit-fill-available;
    width: -webkit-fill-available;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--body-font);
}

#app {
  height: 100%;
}

#container {
  height: 100%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
  grid-template-areas:
    "header"
    "main"
    "footer";

  --neutral-layer-card-container: #f3f3f3;
  --neutral-layer-floating: #ffffff;
  --neutral-layer-1: #fbfbfb;
  --neutral-layer-2: #f3f3f3;
  --neutral-layer-3: #ebebeb;
  --neutral-layer-4: #e0e0e0;
  --fill-color: #fbfbfb;
  --accent-fill-rest: #af5200;
  --accent-fill-hover: #bb5c00;
  --accent-fill-active: #cb6800;
  --accent-fill-focus: #af5200;
  --accent-foreground-rest: #772900;
  --accent-foreground-hover: #641b00;
  --accent-foreground-active: #a24900;
  --accent-foreground-focus: #772900;
  --accent-stroke-control-rest: linear-gradient(#b7631a 90%, #793900 100%);
  --accent-stroke-control-hover: linear-gradient(#c16b17 90%, #854100 100%);
  --accent-stroke-control-active: #d0771a;
  --accent-stroke-control-focus: linear-gradient(#b7631a 90%, #793900 100%);
  --neutral-fill-rest: #ffffff;
  --neutral-fill-hover: #f7f7f7;
  --neutral-fill-active: #fbfbfb;
  --neutral-fill-focus: #fbfbfb;
  --neutral-fill-input-rest: #ffffff;
  --neutral-fill-input-hover: #f7f7f7;
  --neutral-fill-input-active: #fbfbfb;
  --neutral-fill-input-focus: #ffffff;
  --neutral-fill-input-alt-rest: #f3f3f3;
  --neutral-fill-input-alt-hover: #ebebeb;
  --neutral-fill-input-alt-active: #e0e0e0;
  --neutral-fill-input-alt-focus: #f3f3f3;
  --neutral-fill-layer-rest: #ffffff;
  --neutral-fill-layer-hover: #ffffff;
  --neutral-fill-layer-active: #ffffff;
  --neutral-fill-layer-alt-rest: #ffffff;
  --neutral-fill-secondary-rest: #efefef;
  --neutral-fill-secondary-hover: #f3f3f3;
  --neutral-fill-secondary-active: #f7f7f7;
  --neutral-fill-secondary-focus: #efefef;
  --neutral-fill-stealth-rest: #fbfbfb;
  --neutral-fill-stealth-hover: #efefef;
  --neutral-fill-stealth-active: #f3f3f3;
  --neutral-fill-stealth-focus: #fbfbfb;
  --neutral-fill-strong-rest: #717171;
  --neutral-fill-strong-hover: #4b4b4b;
  --neutral-fill-strong-active: #868686;
  --neutral-fill-strong-focus: #717171;
  --neutral-foreground-rest: #1a1a1a;
  --neutral-foreground-hover: #7a7a7a;
  --neutral-foreground-active: #a8a8a8;
  --neutral-foreground-focus: #1a1a1a;
  --neutral-foreground-hint: #717171;
  --neutral-stroke-rest: #d6d6d6;
  --neutral-stroke-hover: #c6c6c6;
  --neutral-stroke-active: #e0e0e0;
  --neutral-stroke-focus: #d6d6d6;
  --neutral-stroke-control-rest: linear-gradient(#efefef 90%, #d6d6d6 100%);
  --neutral-stroke-control-hover: linear-gradient(#e5e5e5 90%, #cecece 100%);
  --neutral-stroke-control-active: #e5e5e5;
  --neutral-stroke-control-focus: linear-gradient(#e5e5e5 90%, #cecece 100%);
  --neutral-stroke-divider-rest: #ebebeb;
  --neutral-stroke-input-rest: linear-gradient(
    #efefef calc(100% - 1px),
    #929292 calc(100% - 1px),
    #929292
  );
  --neutral-stroke-input-hover: linear-gradient(
    #e5e5e5 calc(100% - 1px),
    #8a8a8a calc(100% - 1px),
    #8a8a8a
  );
  --neutral-stroke-input-active: #e5e5e5;
  --neutral-stroke-input-focus: linear-gradient(
    #e5e5e5 calc(100% - 1px),
    #8a8a8a calc(100% - 1px),
    #8a8a8a
  );
  --neutral-stroke-layer-rest: #efefef;
  --neutral-stroke-layer-hover: #efefef;
  --neutral-stroke-layer-active: #efefef;
  --neutral-stroke-strong-rest: #636363;
  --neutral-stroke-strong-hover: #636363;
  --neutral-stroke-strong-active: #636363;
  --neutral-stroke-strong-focus: #636363;
  --neutral-fill-inverse-rest: #131313;
  --neutral-fill-inverse-hover: #272727;
  --neutral-fill-inverse-active: #000000;
  --neutral-fill-inverse-focus: #131313;
  --neutral-fill-stealth-rest-on-neutral-fill-layer-rest: #ffffff;
  --neutral-fill-stealth-hover-on-neutral-fill-layer-rest: #f3f3f3;
  --neutral-fill-stealth-active-on-neutral-fill-layer-rest: #f7f7f7;
  --input-placeholder-rest: #767676;
  --input-placeholder-hover: #717171;
  --input-filled-placeholder-rest: #6c6c6c;
  --input-filled-placeholder-hover: #6c6c6c;
  --clear-button-hover: #f3f3f3;
  --clear-button-active: #f7f7f7;
  --tree-item-expand-collapse-hover: #e0e0e0;
  --tree-item-expand-collapse-selected-hover: #e0e0e0;
}

header {
  padding: 8px 16px 8px 16px;
  background-color: rgba(var(--bs-white-rgb), 100) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  /* border-bottom: calc(var(--stroke-width) * 2px) solid var(--accent-fill-rest); */
  z-index: 10;
}

header .logo {
  flex: auto 0 0;
}

header .logo img {
  height: 40px;
  padding: 5px 0px;
  display: block;
}

header .site-name {
  flex: auto 1 0;
  margin-left: 10px;
  white-space: nowrap;
}

header .site-name svg {
  height: 40px;
  padding: 5px 0;
  display: block;
}

header .user-dropdown {
  flex: auto 0 0;
  padding: 5px 0;
}

header .user-dropdown #user-dropdown-check {
  display: none;
}

header .user-dropdown ul {
  list-style-type: none;
  margin: 0;
  margin-left: 5px;
  padding: 0;
}

header .user-dropdown ul li ul {
  color: var(--neutral-fill-strong-hover);
  display: none;
  position: absolute;
  margin-left: -216px;
  padding: 6px 0;
  width: 256px;
  background: var(--neutral-fill-stealth-hover);
  border-radius: 3px;
}

header .user-dropdown ul li ul li {
  padding: 6px 20px;
  color: var(--neutral-foreground-rest);
}

header .user-dropdown .user-dropdown-menu-input {
  cursor: pointer;
}

header .user-dropdown .user-dropdown-menu-input:hover {
  cursor: pointer;
  background-color: rgba(var(--bs-white-rgb), 100);
}

header .user-dropdown .user-dropdown-menu-input > div {
  display: flex;
  flex-direction: row;
  gap: 5px;
}

header #user-dropdown-check:checked ~ ul > li > .mobile-panel-toggler {
  background: var(--neutral-fill-stealth-hover);
  border-radius: 3px 3px 0 0;
}

header #user-dropdown-check:checked ~ ul > li > ul {
  display: block;
}

.user-dropdown
  #user-dropdown-check:checked
  ~ ul
  > li
  > label
  > #user-dropdown-hamburger {
  display: none;
}

.user-dropdown
  #user-dropdown-check:checked
  ~ ul
  > li
  > label
  > #user-dropdown-close {
  display: block;
}

.user-dropdown
  #user-dropdown-check:not(checked)
  ~ ul
  > li
  > label
  > #user-dropdown-hamburger {
  display: block;
}

.user-dropdown
  #user-dropdown-check:not(checked)
  ~ ul
  > li
  > label
  > #user-dropdown-close {
  display: none;
}

header .colorgroup {
  grid-column: 3;
  display: flex;
  align-items: center;
}

header .switches {
  grid-column: 4;
  justify-self: end;
  display: flex;
  align-items: center;
}

header .mobile-panel-toggler {
  display: block;
  margin: 0px;
  padding: 5px;
  z-index: 1;
  cursor: pointer;
  border-radius: 3px;
}

header .mobile-panel-toggler:hover {
  background: var(--neutral-fill-stealth-hover);
}

footer {
  display: grid;
  grid-template-columns: 10px auto auto 10px;
  background: var(--neutral-layer-4);
  color: var(--neutral-foreground-rest);
  align-items: center;
  grid-area: footer;
  padding: 10px 10px;
}

footer .version {
  grid-column: 2;
  justify-content: start;
}

footer .version a {
  color: var(--neutral-foreground-rest);
  text-decoration: none;
}

footer .version a:focus {
  outline: 1px dashed;
  outline-offset: 3px;
}

footer .version a:hover {
  text-decoration: underline;
}

footer .copy {
  grid-column: 3;
  justify-self: end;
}

main {
  grid-area: main;
  background-color: var(--neutral-layer-1);
  color: var(--neutral-foreground-rest);
  z-index: 1;
  overflow: hidden;
}

nav {
  z-index: 1;
  background-color: var(--neutral-layer-3);
  transition: all 300ms ease-in-out;
  grid-column: 1 / 2;
  text-align: center;
}

nav a {
  color: var(--neutral-foreground-rest);
  padding: 1rem 1.5rem;
}

nav a:first-child {
  margin-top: 1.5rem;
}

nav a.active {
  color: var(--accent-fill-rest);
  background-color: var(--neutral-layer-4);
}

nav .nav-item {
  display: flex;
  gap: 5px;
  flex-direction: column;
  justify-content: center;
  cursor: pointer;
  text-decoration: none;
}

nav .icon {
  width: 100%;
}

.content {
  padding: 1.5rem;
}

.content .content-block:not(:first-child) {
  margin-top: 1.5rem;
}

.page-content {
  padding: 1.5rem 2.5rem;
  overflow: auto;
  height: 100%;
}

.page-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 0 40px;
}

article {
  grid-area: 1 / 1;
  padding: 2.2rem 1.5rem;
  margin: 0 0;
  overflow-x: hidden;
  transition: all 300ms ease-in-out;
}

aside {
  padding: 2rem 0.75rem;
  border-left: 1px solid var(--neutral-stroke-divider-rest);
  grid-area: 1 / 2;
}

#menu-toggle {
  display: none;
}

.menu-icon {
  display: none;
}

#menu-toggle:checked > nav {
  width: 0px;
}

[dir="rtl"] #menu-toggle:checked ~ nav {
  right: 0px;
}

#color {
  margin-right: 10px;
  margin-left: 0;
}

[dir="rtl"] #color {
  margin-left: 10px;
  margin-right: 0;
}

label {
  display: block;
  color: var(--neutral-foreground-rest);
  font-family: var(--body-font);
  font-size: var(--type-ramp-base-font-size);
  line-height: var(--type-ramp-base-line-height);
  font-weight: initial;
  font-variation-settings: var(--type-ramp-base-font-variations);
  margin-inline-end: calc(var(--design-unit) * 2px + 2px);
  margin-bottom: 4px;
  cursor: pointer;
}

.shell,
.sourceCode {
  background: var(--neutral-stroke-layer-rest);
  padding: 7px;
}

code {
  background: var(--neutral-stroke-layer-rest);
}

.demopanel {
  border: 1px dashed red;
  padding: 5px;
}

.highlighted-row {
  background-color: var(--neutral-fill-secondary-hover);
}

#blazor-error-ui {
  background: lightyellow;
  bottom: 0;
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  padding: 0.6rem 1.25rem 0.7rem 1.25rem;
  position: fixed;
  width: 100%;
  z-index: 1000;
  margin: 20px 0;
}

#blazor-error-ui > div {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#blazor-error-ui .dismiss {
  cursor: pointer;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem;
}

.blazor-error-boundary {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=)
      no-repeat 1rem/1.8rem,
    #b32121;
  padding: 1rem 1rem 1rem 3.7rem;
  color: white;
}

.blazor-error-boundary::before {
  content: "An error has occurred. ";
}

.loading-progress {
  display: flex;
  align-items: center;
  justify-content: center;
}

#animation {
  width: min(100%, 400px);
}

#ambulanza {
  transform-origin: 50% 50%;
  transform: rotate(5deg);
}

#traiettoria {
  transform-origin: 50% 50%;
  transform: rotate(-90deg);
  stroke-dasharray: calc(3.141 * var(--load-percentage, 0%) * 0.8), 500%;
}

.loading-progress-text {
  font-size: var(--type-ramp-plus-3-font-size);
  position: absolute;
}

.loading-progress-text:after {
  content: var(--blazor-load-percentage-text, "Loading");
}

.training-resources-overflow {
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  overflow: auto;
}

.training-resources-container {
  display: flex;
  height: 100%;
  flex-direction: column;
  line-height: normal;
  padding: 0 40px;
  max-width: 1024px;
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .training-resources-container {
    min-width: 1024px;
  }
}

.training-resources-container .training-resources-hero {
  margin-top: 37px;
  font-size: 53px;
  font-weight: 700;
  text-align: center;
}

.training-resources-container
  .training-resources-main-grid
  .training-resources-divider {
  height: 1px;
  outline: none;
  border: none;
  margin: 0 auto;
  padding: 0;
  display: block;
  width: 100%;
  border-top: 1px solid var(--neutral-stroke-hover);
  box-sizing: content-box;
}

.training-resources-loader {
  padding-top: 50px;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: row;
}

.training-resources-index-entry {
  padding: 17px 25px;
  margin: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  column-gap: 10px;
  cursor: pointer;
  background: white;
  border: 2px solid var(--neutral-stroke-hover);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  transition: all 0.2s ease;
  height: 100%;
}

.training-resources-index-entry:hover {
  border-color: #667eea;
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15);
  transform: translateY(-2px);
  color: inherit;
}

.training-resources-index-entry-text {
  font-size: 24px;
  font-weight: 700;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.training-resources-breadcrumb {
  display: flex;
  flex-direction: row;
  font-size: 15px;
  padding: 0;
  margin: 15px 0 20px;
  z-index: 2;
}

.training-resources-breadcrumb .training-resources-breadcrumb-item {
  color: var(--neutral-foreground-hint);
  margin-right: 10px;
  cursor: pointer;
}

.training-resources-breadcrumb .training-resources-breadcrumb-item::after {
  margin-left: 10px;
  content: "›";
  color: var(--neutral-foreground-hint);
  font-size: 20px;
  line-height: 1rem;
}

.training-resources-breadcrumb
  .training-resources-breadcrumb-item-active.pointer {
  cursor: pointer;
}

.text-capitalize {
  text-transform: capitalize;
}

.training-resources-card {
  width: 100%;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: all 0.2s ease;
  cursor: pointer;
  border: 1px solid #e2e8f0;
  height: 100%;
  background: white;
  border-radius: 8px;
}

.training-resources-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
  transform: translateY(-4px);
}

.training-resources-card-background {
  position: relative;
  height: 100%;
}

.training-resources-card-background::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
}

.training-resources-card-thumbnail-image {
  width: 100%;
  filter: blur(1px);
  transition: transform 0.2s;
}

.training-resources-card:hover .training-resources-card-thumbnail-image {
  filter: none;
  transform: scale(1.2);
}

.training-resources-card-icon {
  position: absolute;
  top: 5px;
  left: 5px;
}

.training-resources-card-thumbnail-placeholder {
  text-align: center;
  height: 100%;
  background-color: black;
  color: white;
  font-weight: 700;
  padding-top: 50px;
}

.training-resources-card .training-resources-card-thumbnail {
  width: 100%;
  aspect-ratio: 1200/630;
  overflow: hidden;
  margin-bottom: 16px;
  position: relative;
}

.training-resources-card .training-resources-card-title {
  font-size: 24px;
  font-weight: 700;
}

.training-resources-card .training-resources-card-description {
  margin: 14px 0px 20px 0px;
  font-size: 15px;
}

.training-resources-card .training-resources-card-details {
  display: flex;
  flex-direction: row;
  column-gap: 5px;
}

.training-resources-section {
  width: 100%;
}

.training-resources-section .training-resources-title h1 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 0px;
}

.training-resources-section .training-resources-title {
  display: flex;
  flex-direction: row;
  margin-bottom: 10px;
  align-items: center;
  column-gap: 5px;
}

.training-resources-section .training-resources-empty-list {
  font-size: 24px; /* XXX */
  font-style: italic;
}

.training-resources-section .training-resources-subsection-name {
  display: flex;
  flex-direction: row;
  align-items: center;
  column-gap: 5px;
}

.training-resources-section .training-resources-subsection-name h1 {
  font-size: 28px;
  font-weight: 700;
  margin: 0;
}

.training-resource-viewer-layout {
  display: flex;
  flex-direction: row;
  justify-content: center;
  height: 100%;
  width: 100%;
  overflow: auto;
}

.training-resource-viewer-container {
  display: flex;
  height: 100%;
  flex-direction: column;
  line-height: normal;
  max-width: 1024px;
  width: 100%;
}

.training-resource-viewer-container .training-resources-breadcrumb {
  flex: content 0 0;

  padding: 0 10px;
}

.training-resource-viewer-container #training-resource-main {
  flex: auto 0 1;
}

.training-resource-viewer-container .training-resource-viewer-title {
  flex: auto 0 0;
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 31px;

  padding: 0 10px;
}

@media screen and (min-width: 1024px) {
  .training-resource-viewer-container {
    min-width: 1024px;
    padding: 0 40px;
  }

  .training-resource-viewer-container .training-resources-breadcrumb {
    padding: 0;
  }

  .training-resource-viewer-container .training-resource-viewer-title {
    padding: 0;
  }
}

@media screen and (max-height: 700px) {
  .training-resource-viewer-container .training-resource-viewer-title {
    display: none;
  }
}
