section.service_new {
  position: relative;
  display: grid;
  grid-template-columns: 2fr 1fr 2fr;
  grid-template-rows: repeat(5, auto) 1fr;
  grid-template-areas: "head head head" "service service title" "service service cloud" "service service cloud" "report hist hist" "report info info";
  justify-items: stretch;
  gap: 0 5vw;
  margin-top: var(--section-top-gap);
}
section.service_new:has(.cloud:empty) {
  grid-template-areas: "title   title   title  " "service service service" "service service service" "service service service" "report  hist    hist   " "report  info    info   ";
}
section.service_new:has(.cloud:empty) > div:nth-child(2) {
  margin-bottom: var(--section-top-gap);
}
section.service_new:has(.cloud:empty) .service {
  grid-template-rows: repeat(3, auto);
  width: 862px;
  max-width: 100%;
  justify-self: center;
}
section.service_new > img:first-child {
  display: none;
}
section.service_new > div:nth-child(2) {
  grid-area: title;
  align-self: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--h-gap-content-small) var(--v-gap-content-small);
}
section.service_new > div:nth-child(2) > h1,
section.service_new > div:nth-child(2) > h2 {
  text-align: center;
}
section.service_new > h2 {
  grid-area: head;
  text-align: center;
  margin-bottom: var(--section-top-gap);
}
section.service_new > .service {
  grid-area: service;
  display: grid;
  grid-template-columns: 250px 1fr;
  grid-template-rows: subgrid;
}
section.service_new > .service > img:first-child {
  width: 160px;
  height: 160px;
  align-self: center;
  justify-self: center;
  object-fit: contain;
}
section.service_new > .service > .errors {
  grid-column: 1 / -1;
}
section.service_new > .service > .errors header {
  display: grid;
  grid-template-columns: repeat(3, auto) minmax(max-content, 1fr) max-content repeat(2, auto);
  align-items: center;
}
section.service_new > .service > .errors header > h2 {
  grid-column: 1 / -1;
  margin-block: var(--h-gap-content-small);
  display: flex;
  justify-content: center;
  align-items: center;
}
section.service_new > .service > .errors header > h2 img {
  display: inline-block;
  width: 1em;
  height: 1em;
  transform: translateY(0.15em);
  margin: 0 0.5ch;
}
section.service_new > .service > .errors header > h2 a:not([href]) {
  opacity: 0.5;
}
section.service_new > .service > .errors header > div {
  justify-self: center;
  margin: 0 1ch;
  user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
}
section.service_new > .service > .errors header > div::before {
  content: "\3008";
}
section.service_new > .service > .errors header > div::after {
  content: "\3009";
}
section.service_new > .service > .errors header > div.disabled {
  opacity: 0.5;
}
section.service_new > .service > .errors header > span {
  grid-column: -2 / -1;
  display: flex;
  align-items: center;
  margin-left: 0.5ch;
  padding-right: 2ch;
  position: relative;
  user-select: none;
  -webkit-user-select: none;
  white-space: nowrap;
  pointer-events: none;
}
section.service_new > .service > .errors header > span .selector {
  display: flex;
  align-items: center;
  margin-left: 0.5ch;
  pointer-events: all;
  filter: saturate(0);
  opacity: 0.5;
  cursor: pointer;
}
section.service_new > .service > .errors header > span .selector img {
  width: 1.2em;
  height: 1.2em;
  object-fit: contain;
  z-index: 1;
}
section.service_new > .service > .errors header > span .selector span {
  width: 1em;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
section.service_new > .service > .errors header > span .selector span::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  border-left: 2px solid var(--main-bg-blue);
  border-bottom: 2px solid var(--main-bg-blue);
  transform-origin: center;
}
section.service_new > .service > .errors header > span .selector span:first-child::before {
  transform: translateX(40%) rotate(45deg);
}
section.service_new > .service > .errors header > span .selector span:last-child::before {
  transform: translateX(-40%) rotate(-135deg);
}
section.service_new > .service > .errors header > span .selector:has(+ .calendar) {
  filter: none;
  opacity: 1;
}
section.service_new > .service > .errors header > span .calendar {
  pointer-events: all;
  position: absolute;
  z-index: 100;
  right: 2ch;
  top: 100%;
  transform-origin: top right;
  scale: 0;
  transition: scale 200ms ease-out;
  display: grid;
  grid-template-columns: repeat(7, 2em);
  grid-auto-rows: 2em;
  background-color: var(--menu-bg);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  padding: 0.5ch 1ch;
  border-radius: 1ch;
  gap: 3px;
}
section.service_new > .service > .errors header > span .calendar > span {
  display: flex;
  align-items: center;
  justify-content: center;
  font-variant: small-caps;
  border-radius: 4px;
  transition: background-color 200ms linear;
}
section.service_new > .service > .errors header > span .calendar > span:nth-of-type(7n + 6),
section.service_new > .service > .errors header > span .calendar > span:nth-of-type(7n + 7) {
  color: var(--main-red);
}
section.service_new > .service > .errors header > span .calendar > span:nth-of-type(n + 8):hover {
  background-color: color-mix(in oklab, var(--menu-bg) 90%, var(--main-bg-blue));
  cursor: pointer;
}
section.service_new > .service > .errors header > span .calendar > span.other {
  opacity: 0.5;
}
section.service_new > .service > .errors header > span .calendar > span.current,
section.service_new > .service > .errors header > span .calendar > span.current:hover {
  background-color: var(--main-bg-blue);
  color: var(--menu-bg);
  font-weight: bolder;
}
section.service_new > .service > .errors header > span .calendar > div {
  grid-column: 1 / -1;
  justify-self: center;
  display: flex;
  align-items: center;
  gap: 1ch;
}
section.service_new > .service > .errors header > span .calendar > div > span {
  background-color: var(--main-bg-blue);
  color: var(--menu-bg);
  font-weight: bolder;
  font-variant: small-caps;
  border-radius: 4px;
  padding: 0 1ch;
}
section.service_new > .service > .errors header > span .calendar > div > div {
  width: 1.5em;
  height: 1.5em;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}
section.service_new > .service > .errors header > span .calendar > div > div:hover {
  background-color: color-mix(in oklab, var(--menu-bg) 90%, var(--main-bg-blue));
}
section.service_new > .service > .errors header > span .calendar > div > div::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 40%;
  height: 40%;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform-origin: center;
  transform: translate(-25%, -50%) rotate(45deg);
}
section.service_new > .service > .errors header > span .calendar > div > div:last-child::before {
  transform: translate(-75%, -50%) rotate(-135deg);
}
section.service_new > .service > .errors header > span .calendar.open {
  scale: 1;
}
section.service_new > .service > .errors header button {
  justify-self: start;
  margin-left: 1em;
  line-height: 1.2;
  padding: 0 0.5em;
  background-color: transparent;
  color: var(--main-blue);
  text-decoration: underline;
}
section.service_new > .service > .errors header button.disabled {
  filter: saturate(0);
  opacity: 0.7;
}
section.service_new > .service > .errors header button:not(.disabled):hover {
  color: var(--main-red);
}
section.service_new > .service > .errors header > img {
  width: 1.2em;
  height: 1.2em;
  margin-left: 1ch;
  object-fit: contain;
  justify-self: end;
  cursor: pointer;
}
section.service_new > .service > .errors header > img.disabled {
  filter: saturate(0);
  opacity: 0.5;
}
section.service_new > .service > .errors header > img:nth-of-type(2) {
  grid-column-start: 4;
}
section.service_new > .service > .errors header > img:nth-of-type(3) {
  grid-column-start: 5;
}
section.service_new > .service > .errors > div {
  position: relative;
  width: 100%;
  aspect-ratio: 2;
}
section.service_new > .service > .errors > div img {
  position: absolute;
  left: 7.5%;
  width: 85%;
  top: 45%;
  transform: translateY(-50%);
  pointer-events: none;
  visibility: hidden;
}
section.service_new > .service > .errors > div > div {
  position: absolute;
  left: 50%;
  color: var(--menu-bg);
  background-color: var(--main-bg-blue);
  padding: 0.25em 1ch;
  border-radius: 0.25em;
  text-align: center;
  transform-origin: center;
  animation: showhide 3s linear forwards;
}
section.service_new > .service > .errors > div canvas {
  width: 100%;
  height: 100%;
}
section.service_new > .service div.buttons {
  grid-column: 1 / -1;
}
section.service_new > .service div.buttons button {
  white-space: nowrap;
  line-height: 3;
  text-align: center;
  cursor: pointer;
  flex: 1;
}
section.service_new > .service div.buttons .report {
  background-color: var(--button-color-alert);
}
section.service_new > .service div.buttons .others {
  background-color: var(--button-color);
}
section.service_new > .service div.buttons > p {
  margin-top: var(--gap-micro);
  text-align: center;
}
section.service_new > .service div.buttons > div {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--v-gap-content-small);
}
section.service_new .problems {
  display: grid;
  grid-template-columns: max-content auto;
  align-content: center;
  align-items: center;
  justify-items: start;
  gap: var(--h-gap-content-small) 1ch;
}
section.service_new .problems img {
  width: 1.2em;
}
section.service_new .problems svg {
  width: 1.2em;
  transform-origin: center;
}
section.service_new .problems svg.good {
  fill: var(--main-green);
}
section.service_new .problems svg.bad {
  fill: var(--main-bg-red);
}
section.service_new .problems svg.warn {
  fill: var(--main-yellow);
}
section.service_new .problems .throbber {
  width: 1.2em;
  aspect-ratio: 1;
  color: var(--main-blue);
}
section.service_new .problems .throbber + svg {
  display: none;
  transform: scale(0);
}
section.service_new .problems .throbber + svg + svg {
  display: none;
  transform: scale(0);
}
section.service_new .problems .throbber[hidden] + svg {
  display: block;
  animation: showup 350ms ease-out forwards;
}
section.service_new .problems:not(.open) .problemlist {
  display: none;
}
section.service_new .problems em {
  font-style: normal;
  color: var(--red-accent);
}
section.service_new .problems em::before {
  content: " ";
}
section.service_new .problems em:not(:last-child)::after {
  content: ",";
  color: var(--font-main);
}
section.service_new .problems .cities > span:first-of-type {
  color: var(--red-accent);
}
section.service_new .problems .cities > span:nth-of-type(2) {
  color: var(--link-color);
  font-style: italic;
  cursor: pointer;
}
section.service_new .problems .qms {
  color: var(--link-color);
  cursor: pointer;
}
section.service_new .problems .qms:active,
section.service_new .problems .qms:visited {
  color: var(--link-color);
}
section.service_new .problems .qms:hover {
  color: var(--red-accent);
}
section.service_new .problems .infolink {
  color: var(--link-color);
  cursor: pointer;
}
section.service_new .problems .infolink:hover {
  color: var(--red-accent);
}
section.service_new > .cloud {
  grid-area: cloud;
  align-self: start;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
section.service_new > .cloud:empty {
  display: none;
}
section.service_new > .cloud h2 {
  position: relative;
  margin-top: var(--h-gap-content-small);
}
section.service_new > .cloud h2::after {
  position: absolute;
  display: block;
  content: "by LLM";
  white-space: nowrap;
  top: 0.25rem;
  left: 100%;
  font-size: 0.7rem;
  line-height: 1;
  padding: 0.35em 0.5em 0.25em;
  border-radius: 1000vmax;
  background-color: color-mix(in oklab, var(--main-red) 30%, var(--main-bg));
  transform: translateY(-50%);
}
section.service_new > .cloud p {
  text-align: center;
}
section.service_new > .cloud .bow {
  width: 100%;
  max-width: 500px;
  aspect-ratio: 2;
  margin: var(--h-gap-content) auto 0;
  cursor: default;
}
section.service_new > .cloud .bow > svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
section.service_new > .cloud .bow > svg text {
  line-height: 1;
}
section.service_new > .cloud .bow > span {
  display: none;
}
section.service_new > .cloud .bow:has(span:first-child) {
  display: flex;
  align-items: center;
  justify-content: center;
  text-wrap: balance;
}
section.service_new > .cloud .bow:has(span:first-child) > span {
  display: block;
  opacity: 0.3;
}
section.service_new > .report {
  grid-area: report;
  width: 100%;
  display: grid;
  grid-template-columns: 3ch minmax(0px, 20ch) minmax(auto, 1fr) auto;
  align-items: start;
  align-self: start;
  margin-top: var(--section-top-gap);
}
section.service_new > .report button {
  min-width: 7em;
  grid-column: -2 / -1;
  grid-row: 1 / 3;
  margin-bottom: var(--gap-micro);
  margin-left: var(--gap-micro);
  cursor: pointer;
}
section.service_new > .report button:has(~ .attach) {
  grid-row: 1 / 2;
}
section.service_new > .report button.send {
  background-color: var(--button-color);
  white-space: nowrap;
}
section.service_new > .report button.message {
  background-color: var(--main-bg-purple);
  line-height: 1.2;
  height: 2.75em;
}
section.service_new > .report label.attach {
  grid-column: -2 / -1;
  grid-row: 2 / 3;
  align-self: start;
  height: 2.5em;
  margin-bottom: var(--gap-micro);
  margin-left: var(--gap-micro);
  border-radius: var(--border-radius);
  background-color: var(--button-color);
  background-image: url(/img/paperclip.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 70%;
  cursor: pointer;
}
section.service_new > .report label.attach.attached {
  background-image: url(/img/image.svg);
  background-size: auto 90%;
}
section.service_new > .report label.attach input {
  width: 1px;
  height: 1px;
  opacity: 0;
}
section.service_new > .report input {
  padding: 0 0.75em;
  margin-bottom: var(--gap-micro);
}
section.service_new > .report textarea {
  padding: 0.5rem 0.75rem;
  height: 10rem;
  line-height: 1.5rem;
  margin-bottom: var(--h-gap-content);
  resize: none;
  outline-offset: -2px;
}
section.service_new > .report textarea,
section.service_new > .report input {
  grid-column: span 3;
  justify-self: stretch;
  accent-color: var(--main-accent);
  outline-color: var(--main-accent);
  border: 1px solid var(--border);
  border-radius: var(--border-radius);
}
section.service_new > .report textarea::placeholder,
section.service_new > .report input::placeholder {
  font-style: normal;
  opacity: 0.5;
}
section.service_new > .report > .subscribe {
  grid-column: 1 / -1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.75em;
  flex-wrap: wrap;
  gap: var(--gap-micro) 0.5em;
  border: 2px solid color-mix(in oklab, #38b0e3 50%, var(--main-bg));
  border-radius: 0.5em;
  background-color: color-mix(in oklab, #38b0e3 10%, var(--main-bg));
  margin-bottom: var(--h-gap-content);
  margin-left: 0;
}
section.service_new > .report > .subscribe span {
  text-align: center;
}
section.service_new > .report > .subscribe a {
  position: relative;
  color: white;
  text-decoration: none;
  background-image: linear-gradient(to top, #1d93d2, #38b0e3);
  line-height: 2em;
  border-radius: 100vw;
  padding-left: 2em;
  padding-right: 0.75em;
}
section.service_new > .report > .subscribe a:active,
section.service_new > .report > .subscribe a:visisted {
  color: white;
}
section.service_new > .report > .subscribe a::before {
  content: "";
  position: absolute;
  width: calc(2em - 2px);
  aspect-ratio: 1;
  left: 1px;
  top: 1px;
  background-image: url(/img/telegram.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
section.service_new > .report > .subscribe + span {
  grid-column: 1 / -1;
  color: var(--font-main);
  font-style: italic;
  margin-bottom: var(--h-gap-content);
}
section.service_new > .report > div.message {
  grid-column: 1 / -1;
  grid-row: span 2;
  position: relative;
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  border: 2px solid var(--green-border);
  border-radius: 0.5em;
  background-color: var(--green-accent);
  padding: 0.5em 0;
}
section.service_new > .report > div.message > span:nth-child(1) {
  font-weight: bolder;
  grid-column: 2 / 3;
}
section.service_new > .report > div.message > span:nth-child(2) {
  font-style: italic;
  color: color-mix(in oklab, currentColor 70%, var(--main-bg));
  grid-column: 3 / -1;
  padding-right: 2rem;
}
section.service_new > .report > div.message > span:nth-child(2) img {
  display: inline-block;
  width: 1rem;
  aspect-ratio: 1;
  object-fit: contain;
  object-position: center;
  margin-left: 0.25em;
  transform: translateY(15%);
}
section.service_new > .report > div.message > span:nth-child(3) {
  grid-column: 2 / -1;
  padding-right: 1rem;
}
section.service_new > .report > div.message > div.remove {
  color: color-mix(in oklab, currentColor, var(--green-border));
  position: absolute;
  top: 0;
  right: 0;
  width: 2rem;
  aspect-ratio: 1;
  font-size: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
section.service_new > .report [data-anchor] {
  grid-column: 1 / -1;
  color: var(--font-main);
  font-style: italic;
  margin-bottom: 1.5rem;
}
section.service_new > .report [data-anchor]::before {
  opacity: 0.7;
  content: attr(data-anchor);
}
section.service_new > .report [data-anchor]:last-child::before {
  content: attr(data-nomsg);
}
section.service_new > .report [data-anchor]:not(:last-child)::after {
  content: attr(data-llm);
  display: inline-block;
  vertical-align: super;
  position: relative;
  bottom: 0.3em;
  font-size: 0.7rem;
  line-height: 1;
  padding: 0.35em 0.75em 0.25em;
  margin-left: 0.5ch;
  border-radius: 1000vmax;
  background-color: color-mix(in oklab, var(--red-accent) 30%, var(--content-bg));
}
section.service_new > .report [data-author] {
  font-weight: bolder;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
  margin-left: var(--v-gap-content-small);
}
section.service_new > .report [data-author]:not([data-author=""])::after {
  content: "";
  display: inline-block;
  width: 1.75em;
  height: 1.25em;
  background-color: var(--main-bg-purple);
  background-image: url(/img/image.svg);
  background-size: auto 90%;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 0.25em;
  margin-left: 0.5ch;
  margin-bottom: -0.25em;
  pointer-events: all;
  cursor: pointer;
}
section.service_new > .report [data-tick] {
  grid-column: span 2;
  white-space: nowrap;
  font-style: italic;
  color: color-mix(in oklab, currentColor 70%, var(--content-bg));
}
section.service_new > .report [data-plus] {
  grid-row: span 2;
  border-radius: 0.25em;
  background-color: color-mix(in oklab, var(--button-color) 5%, var(--content-bg));
  color: var(--button-color);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  pointer-events: none;
  margin-bottom: var(--h-gap-content);
}
section.service_new > .report [data-plus]::before {
  content: "\271A";
  padding: 0.25em 0;
  color: color-mix(in oklab, var(--main-blue) 40%, var(--main-bg));
  text-align: center;
  cursor: pointer;
}
section.service_new > .report [data-plus]:not([data-text=""])::before {
  pointer-events: all;
}
section.service_new > .report [data-plus]::after {
  content: attr(data-plus);
  font-size: 0.9em;
  font-weight: bolder;
  text-align: center;
  padding-bottom: 0.25em;
}
section.service_new > .report [data-plus] ~ [data-anchor]:last-child {
  display: none;
}
section.service_new > .report div {
  grid-column: span 3;
  margin-left: var(--v-gap-content-small);
  margin-bottom: var(--h-gap-content);
  overflow: hidden;
}
section.service_new > .report hr {
  grid-column: 1 / -1;
  border: none;
  border-bottom: 1px solid var(--main-fg);
  opacity: 0.3;
  margin: 0 -0.5em var(--h-gap-content);
}
section.service_new > .report [data-ellipsis] {
  appearance: none;
  grid-column: 1 / -1;
  grid-row: unset;
  background-color: transparent;
  color: inherit;
  height: 1em;
  line-height: 1;
  text-align: center;
  font-style: italic;
  user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
}
section.service_new > .report [data-ellipsis]:not(:empty) {
  opacity: 0.3;
}
section.service_new > .report [data-ellipsis]:empty::after {
  content: "";
  display: inline-block;
  width: 60px;
  height: 1em;
  background-image: url(/img/ellipsis.svg);
  background-repeat: no-repeat;
  background-position: center;
}
section.service_new > .report [data-ellipsis] span {
  display: inline-block;
  width: 1em;
  aspect-ratio: 1;
  background-color: currentColor;
  margin: 0 0.75em;
  transform-origin: center;
}
section.service_new > .report [data-ellipsis].active span {
  animation: waveform 1.5s linear infinite;
}
section.service_new > .report [data-ellipsis] span:nth-child(2) {
  animation-delay: 250ms;
}
section.service_new > .report [data-ellipsis] span:nth-child(3) {
  animation-delay: 500ms;
}
section.service_new > .histograms {
  grid-area: hist;
  display: grid;
  grid-template-columns: auto minmax(35%, 1fr);
  align-items: center;
  gap: 0 var(--v-gap-content-small);
  margin-top: var(--section-top-gap);
}
section.service_new > .histograms:empty {
  display: none;
}
section.service_new > .histograms > h2 {
  grid-column: span 2;
  text-align: center;
  margin-bottom: var(--h-gap-content);
}
section.service_new > .histograms > h2 + p {
  text-align: center;
}
section.service_new > .histograms > p {
  grid-column: span 2;
}
section.service_new > .histograms > p:has(+ label) {
  margin-bottom: var(--h-gap-content);
}
section.service_new > .histograms > p:has(+ h2) {
  margin-bottom: var(--section-top-gap);
}
section.service_new > .histograms label {
  grid-column: span 2;
  display: grid;
  grid-template-columns: subgrid;
}
section.service_new > .histograms label:has(+ label) {
  margin-bottom: var(--gap-micro);
}
section.service_new > .histograms label:has(+ p) {
  margin-bottom: var(--h-gap-content);
}
section.service_new > .histograms label:has(+ h2) {
  margin-bottom: var(--section-top-gap);
}
section.service_new > .histograms label a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  color: inherit;
}
section.service_new > .histograms label a:active,
section.service_new > .histograms label a:visited {
  color: inherit;
}
section.service_new > .histograms label a[href] {
  color: var(--main-bg-blue);
}
section.service_new > .histograms label a[href]:hover {
  color: var(--main-red);
}
section.service_new > .histograms [data-pos] {
  height: 1.5em;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  --size: max(calc((100% - 5ch) * var(--pos) / 100),1px);
  background-image: linear-gradient(to right, var(--clr) var(--size), transparent var(--size));
}
section.service_new > .histograms [data-pos]:nth-child(1 of .region) {
  --clr: var(--hist1);
}
section.service_new > .histograms [data-pos]:nth-child(2 of .region) {
  --clr: color-mix(in oklab, var(--hist1) 80%, white);
}
section.service_new > .histograms [data-pos]:nth-child(3 of .region) {
  --clr: color-mix(in oklab, var(--hist1) 60%, white);
}
section.service_new > .histograms [data-pos]:nth-child(4 of .region) {
  --clr: color-mix(in oklab, var(--hist1) 40%, white);
}
section.service_new > .histograms [data-pos]:nth-child(5 of .region) {
  --clr: color-mix(in oklab, var(--hist1) 20%, white);
}
section.service_new > .histograms [data-pos]:nth-child(1 of .cause) {
  --clr: var(--hist2);
}
section.service_new > .histograms [data-pos]:nth-child(2 of .cause) {
  --clr: color-mix(in oklab, var(--hist2) 80%, white);
}
section.service_new > .histograms [data-pos]:nth-child(3 of .cause) {
  --clr: color-mix(in oklab, var(--hist2) 60%, white);
}
section.service_new > .histograms [data-pos]:nth-child(4 of .cause) {
  --clr: color-mix(in oklab, var(--hist2) 40%, white);
}
section.service_new > .histograms [data-pos]:nth-child(5 of .cause) {
  --clr: color-mix(in oklab, var(--hist2) 20%, white);
}
section.service_new > .histograms [data-pos] > span {
  min-width: calc(100% - var(--size));
  padding: 0 0.5ch;
  text-align: left;
  font-size: 90%;
}
section.service_new > .histograms > .doublepie {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--v-gap-content);
}
section.service_new > .histograms > .doublepie > div {
  grid-row: span 3;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: subgrid;
  align-items: center;
}
section.service_new > .histograms > .doublepie > div > h2,
section.service_new > .histograms > .doublepie > div > p {
  text-wrap: balance;
  text-align: center;
}
section.service_new > .histograms > .doublepie > div > h2 {
  margin-top: var(--section-top-gap);
}
section.service_new > .histograms > .doublepie > div > p {
  margin-top: var(--h-gap-content-small);
  margin-bottom: var(--h-gap-content);
}
section.service_new > .histograms > .doublepie > div > div {
  display: flex;
  justify-content: center;
  gap: var(--h-gap-content-small) var(--v-gap-content-small);
}
section.service_new > .histograms > .doublepie > div > div > :first-child {
  width: min(12em,50%);
  flex-shrink: 0;
  flex-grow: 0;
  aspect-ratio: 1;
}
section.service_new > .histograms > .doublepie > div > div > :last-child {
  min-width: 0;
  flex-shrink: 1;
  display: flex;
  flex-direction: column;
  gap: var(--gap-micro) var(--v-gap-content-small);
  justify-content: center;
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span {
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span::before {
  content: "";
  display: inline-block;
  width: 0.75em;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: var(--color);
  margin-right: 0.5ch;
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:nth-child(1) {
  --color: var(--chart1);
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:nth-child(2) {
  --color: var(--chart2);
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:nth-child(3) {
  --color: var(--chart3);
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:nth-child(4) {
  --color: var(--chart4);
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:nth-child(5) {
  --color: var(--chart5);
}
section.service_new > .histograms > .doublepie > div > div > :last-child > span:last-child {
  --color: #a3abe460;
}
section.service_new > .histograms > .doublepie > p {
  grid-column: 1 / -1;
  margin-top: var(--h-gap-content-small);
}
section.service_new .problemlist {
  position: fixed;
  top: 4.5rem;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(3px);
  z-index: 2;
}
section.service_new .problemlist > div {
  width: 35em;
  max-width: calc(100% - 2em);
  min-height: 50vh;
  max-height: calc(100% - 2em);
  background-color: var(--menu-bg);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  border-radius: 1em;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: max-content max-content minmax(0, 1fr) max-content;
  overflow: hidden;
}
section.service_new .problemlist > div h2 {
  display: flex;
  position: relative;
  margin: 0 -1.5rem;
  padding: 0.5rem 2.8rem 0.5rem 1.5rem;
  font-size: 1.2rem;
  font-weight: bolder;
  pointer-events: none;
}
section.service_new .problemlist > div h2::after {
  content: "\00D7";
  position: absolute;
  right: 0;
  top: 0;
  width: 2.8rem;
  height: 2.8rem;
  font-size: 150%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: all;
  cursor: pointer;
}
section.service_new .problemlist > div h2:hover::after {
  color: var(--menu-bg);
  background-color: var(--main-red);
}
section.service_new .problemlist > div h3 {
  font-size: 1.2rem;
  color: var(--subtitle-fg);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
section.service_new .problemlist > div > div {
  max-height: 100%;
  overflow: scroll;
  scrollbar-width: thin;
  scrollbar-color: var(--subtitle-fg) var(--menu-bg);
}
section.service_new .problemlist > div > div::-webkit-scrollbar {
  width: 6px;
  background-color: var(--menu-bg);
}
section.service_new .problemlist > div > div::-webkit-scrollbar-thumb {
  background-color: var(--subtitle-fg);
}
section.service_new .problemlist > div p.down {
  width: 100%;
  padding: 0.5em 0 0;
}
section.service_new .problemlist > div p.down a {
  display: inline-block;
  width: 100%;
  color: var(--main-blue);
}
section.service_new .problemlist > div p.down a:visited,
section.service_new .problemlist > div p.down a:active {
  color: var(--main-blue);
}
section.service_new .problemlist > div button {
  margin: 1em 0;
  background-color: var(--main-bg-blue);
}
section.service_new .fullinfo {
  position: fixed;
  top: 4.5rem;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(3px);
  z-index: 2;
}
section.service_new .fullinfo > div {
  width: 35em;
  max-width: calc(100% - 2em);
  min-height: 50vh;
  max-height: calc(100% - 2em);
  background-color: var(--menu-bg);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  border-radius: 1em;
  padding: 0 1.5rem 1rem;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(3, max-content) 1fr;
  overflow: hidden;
}
section.service_new .fullinfo > div h2 {
  display: flex;
  position: relative;
  margin: 0 -1.5rem;
  padding: 0.5rem 2.8rem 0.5rem 1.5rem;
  font-size: 1.2rem;
  font-weight: bolder;
  pointer-events: none;
}
section.service_new .fullinfo > div h2::after {
  content: "\00D7";
  position: absolute;
  right: 0;
  top: 0;
  width: 2.8rem;
  height: 2.8rem;
  font-size: 150%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: all;
  cursor: pointer;
}
section.service_new .fullinfo > div h2:hover::after {
  color: var(--menu-bg);
  background-color: var(--main-red);
}
section.service_new .fullinfo > div > span {
  font-size: 90%;
  opacity: 0.5;
  margin-top: -0.8em;
  margin-bottom: 0.5em;
}
section.service_new .fullinfo > div > button {
  margin-top: 1.5rem;
  align-self: end;
  background-color: var(--main-bg-blue);
}
section.service_new .fullinfo .host {
  color: var(--main-bg-blue);
}
section.service_new > .info {
  grid-area: info;
  display: flex;
  flex-direction: column;
  margin-top: var(--section-top-gap);
}
section.service_new > .info h2,
section.service_new > .info h3 {
  text-align: center;
  margin-bottom: var(--h-gap-content-small);
}
section.service_new > .info h2:has(+ h2),
section.service_new > .info h3:has(+ h2) {
  margin-bottom: var(--h-gap-content);
}
section.service_new > .info h2:has(+ h3),
section.service_new > .info h3:has(+ h3) {
  margin-bottom: var(--section-top-gap);
}
section.service_new > .info a {
  color: var(--link-color);
  font-weight: normal;
  text-decoration: none;
}
section.service_new > .info a:hover {
  color: var(--red-accent);
}
section.service_new > .info p {
  margin-bottom: var(--h-gap-content-small);
}
section.service_new > .info p:has(+ h2) {
  margin-bottom: var(--h-gap-content);
}
section.service_new > .info p:has(+ h3) {
  margin-bottom: var(--section-top-gap);
}
section.service_new > .info ul {
  padding-left: 1.5em;
  margin-bottom: var(--h-gap-content-small);
}
section.service_new > .info ul:has(+ h2) {
  margin-bottom: var(--h-gap-content);
}
section.service_new > .info ul:has(+ h3) {
  margin-bottom: var(--section-top-gap);
}
section.service_new > .info .extra {
  display: grid;
  grid-template-columns: repeat(auto-fit, min(calc(25% - 1em), 155px));
  justify-content: center;
  gap: var(--h-gap-content-small) var(--v-gap-content-small);
}
section.service_new > .info .extra .card {
  width: 100%;
  grid-template-rows: 45% 2.5em;
  align-content: center;
}
section.service_new .monitored {
  display: none;
  position: fixed;
  top: 4.5rem;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(3px);
  z-index: 1;
}
section.service_new .monitored > div {
  font-size: 120%;
  width: 35em;
  max-width: calc(100% - 2em);
  min-height: 50vh;
  max-height: calc(100% - 2em);
  background-color: var(--menu-bg);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  border-radius: 1em;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: max-content max-content minmax(0, 1fr) max-content;
  overflow: hidden;
}
section.service_new .monitored > div h2 {
  display: flex;
  position: relative;
  margin: 0 -1.5rem;
  padding: 0.5rem 2.8rem 0.5rem 1.5rem;
  font-size: 1.2rem;
  font-weight: bolder;
  pointer-events: none;
}
section.service_new .monitored > div h2::after {
  content: "\00D7";
  position: absolute;
  right: 0;
  top: 0;
  width: 2.8rem;
  height: 2.8rem;
  font-size: 150%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: all;
  cursor: pointer;
}
section.service_new .monitored > div h2:hover::after {
  color: var(--menu-bg);
  background-color: var(--main-red);
}
section.service_new .monitored > div h3 {
  font-size: 1.2rem;
  color: var(--subtitle-fg);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
section.service_new .monitored > div > div {
  max-height: 100%;
  overflow: scroll;
  scrollbar-width: thin;
  scrollbar-color: var(--subtitle-fg) var(--menu-bg);
  margin-top: 0.5em;
}
section.service_new .monitored > div > div::-webkit-scrollbar {
  width: 6px;
  background-color: var(--menu-bg);
}
section.service_new .monitored > div > div::-webkit-scrollbar-thumb {
  background-color: var(--subtitle-fg);
}
section.service_new .monitored > div a {
  color: var(--main-blue);
  text-decoration: none;
}
section.service_new .monitored > div a:not(:first-child)::before {
  content: " ";
}
section.service_new .monitored > div a:not(:last-child)::after {
  content: ",";
  color: var(--main-fg);
}
section.service_new .monitored > div a:visited,
section.service_new .monitored > div a:active {
  color: var(--main-blue);
}
section.service_new .monitored > div a[href]:hover {
  color: var(--main-red);
}
section.service_new .monitored > div button {
  margin: 1em 0;
  background-color: var(--main-bg-blue);
}
section.service_new .monitored.open {
  display: flex;
}
section.service_new .monitored.open > div {
  transform-origin: center;
  animation: showup 250ms ease-out;
}
.sitereport {
  width: 100%;
  max-width: 375px;
  max-height: 100dvh;
  background-color: var(--menu-bg);
  border-radius: var(--border-radius);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  padding: 1rem;
  overflow: auto;
  display: grid;
  grid-template-columns: 100%;
  grid-auto-rows: max-content;
  gap: 0.75em;
  animation: showup 250ms ease-out;
}
.sitereport .report {
  background-color: var(--main-bg-blue);
}
.sitereport header {
  margin: -1rem -1rem -1.5rem;
  overflow: hidden;
  display: flex;
  justify-content: flex-end;
}
.sitereport .close {
  width: 1.2em;
  height: 1.2em;
  padding: 0;
  display: flex;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: bold;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  background-color: transparent;
  color: var(--main-fg);
}
.sitereport .close:hover {
  background-color: var(--main-bg-red);
  color: var(--menu-bg);
}
.sitereport h2 {
  font-size: 1.5rem;
  text-align: center;
}
.sitereport textarea {
  height: 10rem;
  line-height: 1.5;
  resize: none;
  accent-color: var(--main-accent);
  outline-color: var(--main-accent);
  border: 1px solid var(--border);
  border-radius: var(--border-radius);
  padding: 0.5em 0.75em;
}
.sitereport input {
  padding: 0 0.75em;
}
.sitereport textarea,
.sitereport input {
  outline-offset: -2px;
}
.sitereport textarea::placeholder,
.sitereport input::placeholder {
  font-style: normal;
  opacity: 0.5;
}
.sitereport button {
  cursor: pointer;
}
.sitereport p {
  text-align: center;
  font-size: 120%;
  padding: 1em 0;
  opacity: 0.7;
}
.sitereport p:first-of-type {
  font-size: 170%;
  padding-bottom: 0;
}
.sitereport > div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75em;
}
.sitereport .social {
  font-size: 120%;
  justify-content: center;
  padding-bottom: 1em;
}
.sitereport .social > div {
  width: 100%;
  text-align: center;
}
.sitereport .pre {
  background-color: var(--main-bg-red);
  flex: 1;
  white-space: nowrap;
}
.sitereport label.attach {
  line-height: 2.5em;
  border-radius: var(--border-radius);
  background-color: var(--main-bg-blue);
  color: var(--menu-bg);
  font-weight: bolder;
  cursor: pointer;
}
.sitereport label.attach input {
  width: 1px;
  height: 1px;
  opacity: 0;
}
.notabene {
  width: min(95vw,40em);
  padding: 1.5em;
  border-radius: 1em;
  background-color: var(--menu-bg);
  box-shadow: 1px 2px 6px 0 rgba(0, 0, 0, 0.25);
  font-size: min(1rem,3.5vw);
}
.notabene h2 {
  text-align: center;
}
.notabene p {
  font-size: 110%;
  margin-top: 0.5rem;
}
.notabene button {
  width: 100%;
  margin-top: 1rem;
  background-color: var(--main-bg-blue);
}
.throbber {
  position: relative;
}
.throbber::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 50%;
  aspect-ratio: 1;
  transform-origin: center;
  border-radius: 50%;
  background-color: currentColor;
  animation: throbber 750ms linear alternate infinite;
}
.modal .screenshot {
  width: 95%;
  height: 95%;
  object-position: center;
  object-fit: scale-down;
}
.modal .screenshot + span {
  display: none;
}
.modal .screenshot[hidden] + span {
  display: flex;
  width: min(20em,95vw);
  padding: 1rem;
  background-color: var(--menu-bg);
  border-radius: var(--border-radius);
  font-size: 1.5rem;
  align-items: center;
  text-align: center;
}
.modal .screenshot[hidden] + span::before {
  content: "";
  flex-basis: 3em;
  flex-shrink: 0;
  aspect-ratio: 1;
  margin: 0 1rem;
  border-radius: 50%;
  background-color: var(--main-bg-red);
  background-image: url(/img/profile.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 60% auto;
  filter: brightness(150%);
}
@keyframes waveform {
  0% {
    transform: scale(1, 1);
  }
  10% {
    transform: scale(0.5, 2);
  }
  20% {
    transform: scale(1, 0.5);
  }
  30% {
    transform: scale(1, 1);
  }
}
@keyframes showhide {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }
  10% {
    transform: translate(-50%, -50%) scale(1);
  }
  90% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.5);
  }
}
@keyframes throbber {
  0% {
    transform: translate(0, -50%) scale(1);
  }
  50% {
    transform: translate(50%, -50%) scale(30%);
  }
  100% {
    transform: translate(100%, -50%) scale(1);
  }
}
@media (max-width: 1500px) {
  section.service_new > .histograms > .doublepie > div > div {
    align-self: start;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }
  section.service_new > .histograms > .doublepie > div > div > div:last-child {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media (max-width: 1200px) {
  section.service_new > .histograms > .doublepie {
    grid-template-columns: 100%;
  }
  section.service_new > .histograms > .doublepie > div {
    grid-template-columns: subgrid;
  }
  section.service_new > .histograms > .doublepie > div > div {
    justify-self: stretch;
    align-self: center;
    flex-direction: row;
  }
  section.service_new > .histograms > .doublepie > div > div > div:last-child {
    flex-direction: column;
    flex-wrap: nowrap;
  }
  section.service_new > .report [data-anchor] {
    text-align: center;
  }
}
@media (max-width: 1060px) {
  section.service_new {
    grid-template-rows: repeat(7, auto) 1fr;
    grid-template-areas: "head head head" "title title title" "service service service" "service service service" "service service service" "report cloud cloud" "report hist hist" "report info info";
  }
  section.service_new:has(.cloud:empty) {
    grid-template-rows: repeat(6, auto) 1fr;
    grid-template-areas: "head    head    head   " "title   title   title  " "service service service" "service service service" "service service service" "report  hist    hist   " "report  info    info   ";
  }
  section.service_new > div:nth-child(2) {
    margin-bottom: var(--h-gap-content);
  }
  section.service_new > .cloud > h2 {
    margin-top: var(--section-top-gap);
  }
  section.service_new > .service {
    grid-template-rows: repeat(3, auto);
    justify-self: center;
    width: 862px;
    max-width: 100%;
  }
  section.service_new > .info .extra {
    grid-template-columns: repeat(2, min(calc(50% - 1em), 155px, 15vh));
  }
  section.service_new > .report {
    grid-template-columns: 3ch minmax(0px, 1fr) min-content;
  }
  section.service_new > .report textarea,
  section.service_new > .report input {
    grid-column: span 3;
    margin-bottom: var(--gap-micro);
  }
  section.service_new > .report > .subscribe {
    grid-column: span 3;
  }
  section.service_new > .report [data-tick] {
    grid-column: span 1;
  }
  section.service_new > .report div {
    grid-column: span 2;
  }
  section.service_new > .report button {
    grid-column: span 3;
    grid-row: unset;
    justify-self: stretch;
    margin-left: 0;
    margin-bottom: var(--h-gap-content);
  }
  section.service_new > .report button:has(~ .attach) {
    grid-column: span 2;
    grid-row: unset;
  }
  section.service_new > .report label.attach {
    grid-column: unset;
    grid-row: unset;
  }
}
@media (max-width: 800px) {
  section.service_new {
    grid-template-columns: 100%;
    grid-template-rows: repeat(9, auto);
    grid-template-areas: "head" "title" "service" "service" "service" "cloud" "hist" "report" "info";
  }
  section.service_new:has(.cloud:empty) {
    grid-template-rows: repeat(8, auto);
    grid-template-areas: "head   " "title  " "service" "service" "service" "hist   " "report " "info   ";
  }
  section.service_new > .report {
    grid-template-columns: 3ch minmax(0px, 20ch) minmax(min-content, 1fr);
  }
  section.service_new > .report label.attach {
    width: 10em;
    justify-self: end;
  }
  section.service_new > .report [data-anchor] {
    text-align: left;
  }
  section.service_new > .info .extra {
    grid-template-columns: repeat(4, min(calc(25% - 1em), 155px));
  }
  section.service_new > .histograms > .doublepie {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  section.service_new > .histograms > .doublepie > div {
    grid-template-columns: 100%;
  }
  section.service_new > .histograms > .doublepie > div > div {
    justify-content: center;
  }
}
@media (max-width: 600px) {
  section.service_new {
    grid-template-columns: max-content minmax(0, 1fr);
    grid-template-areas: "ico head" "title title" "service service" "service service" "service service" "cloud cloud" "hist hist" "report report" "info info";
    gap: 0 var(--v-gap-content);
  }
  section.service_new:has(.cloud:empty) {
    grid-template-rows: repeat(8, auto);
    grid-template-areas: "ico     head   " "title   title  " "service service" "service service" "service service" "hist    hist   " "report  report " "info    info   ";
  }
  section.service_new > div:nth-child(2) {
    margin-top: var(--h-gap-content);
  }
  section.service_new > img:first-child {
    grid-area: ico;
    display: block;
    width: 20vw;
    align-self: center;
    justify-self: center;
  }
  section.service_new > img:first-child:not(:has(~ h2)) {
    grid-area: unset;
    grid-column: span 2;
  }
  section.service_new > h2 {
    margin-bottom: 0;
  }
  section.service_new .service {
    grid-template-columns: 1fr;
  }
  section.service_new .service > img:first-child {
    display: none;
  }
  section.service_new .service .problems {
    padding: 0;
    justify-self: center;
  }
  section.service_new .service div.buttons > div {
    flex-wrap: wrap;
    gap: var(--gap-micro) var(--v-gap-content-small);
  }
  section.service_new .service .errors header button {
    order: -1;
    margin-top: var(--h-gap-content);
  }
  section.service_new .service .errors header button:first-of-type {
    margin-left: 0;
  }
  section.service_new .service .errors header button:nth-of-type(2) {
    grid-column: 2 / -1;
  }
  section.service_new .service .errors header img:first-of-type {
    justify-self: start;
  }
  section.service_new > .info .extra {
    grid-template-columns: repeat(2, min(calc(50% - 1em), 155px, 15vh));
  }
  section.service_new > .report label.attach {
    width: 100%;
    max-width: 10em;
  }
  section.service_new > .histograms > .doublepie {
    grid-template-columns: 100%;
  }
  section.service_new > .histograms > .doublepie > div > div {
    justify-content: start;
  }
}
@media (max-width: 450px) {
  section.service_new > h2 {
    hyphens: auto;
  }
  section.service_new .service .errors > div:first-of-type {
    aspect-ratio: 1.5;
  }
  section.service_new > .report {
    grid-template-columns: 3ch minmax(0px, 1fr) min-content;
  }
  section.service_new > .report button {
    margin-right: var(--gap-micro);
  }
  section.service_new > .report [data-anchor] {
    text-align: center;
  }
}
@media (pointer: coarse) {
  section.service_new > .report [data-plus]::before {
    padding: 1.25em 1em;
    margin: -1em;
    z-index: 1;
  }
}
