:root {
  --font-base: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-code: "Monaspace Argon", "Monaco", "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace;
  --body-bg: light-dark(
    #F8F8F6,
    #212121
  );
  --common-base: light-dark(
    #f9f9f9,
    #212121
  );
  --common-base-rev: light-dark(
    #212121,
    #EFEEEA
  );
  --tooltip-bg-color: light-dark(
    #F8F8F6,
    #353535
  );
  --modal-bg-color: light-dark(
    #F8F8F695,
    #353535
  );
  --tooltip-text-color: light-dark(
    #212121,
    #ededed
  );
  --tooltip-shadow-color: light-dark(
    #00000015,
    #00000030
  );
  --tooltip-shadow-border: light-dark(
    #00000040,
    #00000030
  );
  --tooltip-hover: light-dark(
    rgba(0, 0, 0, 0.07),
    rgba(0, 0, 0, 0.07)
  );
  --tooltip-hover-2: light-dark(
    rgba(0, 0, 0, 0.07),
    #ededed20
  );
  --text-color-0: light-dark(
    #212121,
    #f9f9f9
  );
  --text-color-1: light-dark(
    #212121,
    #ededed
  );
  --section-bg-1: light-dark(
    #21212109,
    #ededed10
  );
  --text-color-2: color-mix(in srgb, var(--text-color-1) 80%, var(--body-bg));
  --text-color-3: color-mix(in srgb, var(--text-color-1) 50%, var(--body-bg));
  --text-color-4: color-mix(in srgb, var(--text-color-1) 30%, var(--body-bg));
  --text-color-5: color-mix(in srgb, var(--text-color-1) 20%, var(--body-bg));
  --text-color-rev-1: var(--body-bg);
  --text-color-rev-2: color-mix(in srgb, var(--text-color-rev-1) 80%, #ffffff);
  --text-color-rev-3: color-mix(in srgb, var(--text-color-rev-1) 50%, #ffffff);
  --text-color-error: #fb423f;
  --common-border: color-mix(in srgb, var(--text-color-1) 10%, transparent);
  --common-border-5: color-mix(in srgb, var(--text-color-1) 50%, transparent);
  --nav-action-hover: light-dark(
    color-mix(in srgb, #212121 6%, transparent),
    color-mix(in srgb, var(--common-base-rev) 7%, transparent)
  );
  --nav-action-hover-2: light-dark(
    color-mix(in srgb, #212121 6%, transparent),
    color-mix(in srgb, var(--common-base-rev) 20%, transparent)
  );
  --border-color-1: light-dark(
    color-mix(in srgb, #000 10%, var(--body-bg)),
    color-mix(in srgb, #ffffff 6%, var(--body-bg))
  );
  --border-color-2: color-mix(in srgb, #ffffff 6%, var(--body-bg));
  --border-color-3: color-mix(in srgb, #ffffff 30%, var(--body-bg));
  --border-color-4: color-mix(in srgb, #ffffff 40%, var(--body-bg));
  --border-color-5: color-mix(in srgb, #ffffff 50%, var(--body-bg));
  --border-color-6: color-mix(in srgb, #ffffff 60%, var(--body-bg));
  --border-color-7: color-mix(in srgb, #ffffff 70%, var(--body-bg));
  --border-color-8: color-mix(in srgb, #ffffff 80%, var(--body-bg));
  --border-color-9: color-mix(in srgb, #ffffff 90%, var(--body-bg));
  --border-color-10: color-mix(in srgb, #ffffff 95%, var(--body-bg));
  --border-color-11: light-dark(
    color-mix(in srgb, #212121 20%, var(--body-bg)),
    color-mix(in srgb, #ffffff 35%, var(--body-bg))
  );
  --border-color-12: light-dark(
    color-mix(in srgb, #212121 40%, var(--body-bg)),
    color-mix(in srgb, #ffffff 70%, var(--body-bg))
  );
  --border-color-rev-1: color-mix(in srgb, #ffffff 90%, var(--body-bg));
  --border-color-rev-2: color-mix(in srgb, #ffffff 20%, var(--body-bg));
  --icon-color-1: color-mix(in srgb, #ffffff 12%, var(--body-bg));
  --common-accent: light-dark(oklch(70.89% 0.185 75.67), oklch(76.89% 0.147 75.67));
  --default-common-accent: light-dark(oklch(70.89% 0.185 75.67), oklch(76.89% 0.147 75.67));
  --header-bg: color-mix(in srgb, #000 2%, var(--body-bg));
  --header-text-color: var(--text-color-1);
  --sidebar-bg: light-dark(
    #EFEEEA,
    color-mix(in srgb, #000 20%, var(--body-bg))
  );
  --modal-inner-bg: light-dark(
    #ffffff,
    color-mix(in srgb, #000 20%, var(--body-bg))
  );
  --modal-bg: light-dark(
    #EFEFEF,
    color-mix(in srgb, #fff 8%, var(--body-bg))
  );
  --input-placeholder: light-dark(
    var(--text-color-1),
    var(--text-color-3)
  );
  --input-bg: var(--nav-action-hover);
  --input-bg-focus: light-dark(
    color-mix(in srgb, #000 15%, var(--body-bg)),
    #ffffff35
  );
  --l-multiplier: 1.05;
  --c-multiplier: 1.20;
  --text-color-accent-0: light-dark(oklch(calc(67.3% * var(--l-multiplier)) calc(0.21 * var(--c-multiplier)) 25.039), oklch(67.3% 0.21 25.039));
  --text-color-accent-1: light-dark(oklch(calc(57.85% * var(--l-multiplier)) calc(0.15 * var(--c-multiplier)) 349.06), oklch(57.85% 0.15 349.06));
  --text-color-accent-2: light-dark(oklch(calc(72.4% * var(--l-multiplier)) calc(0.16 * var(--c-multiplier)) 19.59), oklch(72.4% 0.16 19.59));
  --text-color-accent-3: light-dark(#DE9D77, #DE9D77);
  --text-color-accent-4: light-dark(#FFCF96, #FFCF96);
  --text-color-accent-5: light-dark(#FFB82E, #FFB82E);
  --text-color-accent-6: light-dark(#B8B9EE, #B8B9EE);
  --text-color-accent-7: light-dark(#88D2FC, #88D2FC);
  --text-color-accent-8: light-dark(oklch(calc(66.3% * var(--l-multiplier)) calc(0.08 * var(--c-multiplier)) 200.71), oklch(66.3% 0.08 200.71));
  --text-color-accent-9: light-dark(#70D18C, #70D18C);
  --text-color-accent-10: light-dark(oklch(calc(69.1% * var(--l-multiplier)) calc(0.12 * var(--c-multiplier)) 151.34), oklch(69.1% 0.12 151.34));
  --text-color-accent-11: light-dark(#5071a7, #5071a7);
  --promo-accent: light-dark(oklch(59.1% 0.12 151.34), oklch(69.1% 0.12 151.34)); }

.tippy-box[data-animation="fade"][data-state="hidden"] {
  opacity: 0; }

[data-tippy-root] {
  max-width: calc(100vw - 10px); }

.tippy-box {
  position: relative;
  background-color: #333;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.4;
  white-space: normal;
  outline: 0;
  -webkit-transition-property: visibility, opacity, -webkit-transform;
  transition-property: visibility, opacity, -webkit-transform;
  transition-property: transform, visibility, opacity;
  transition-property: transform, visibility, opacity, -webkit-transform; }

.tippy-box[data-placement^="top"] > .tippy-arrow {
  bottom: 0; }

.tippy-box[data-placement^="top"] > .tippy-arrow:before {
  bottom: -7px;
  left: 0;
  border-width: 8px 8px 0;
  border-top-color: initial;
  -webkit-transform-origin: center top;
          transform-origin: center top; }

.tippy-box[data-placement^="bottom"] > .tippy-arrow {
  top: 0; }

.tippy-box[data-placement^="bottom"] > .tippy-arrow:before {
  top: -7px;
  left: 0;
  border-width: 0 8px 8px;
  border-bottom-color: initial;
  -webkit-transform-origin: center bottom;
          transform-origin: center bottom; }

.tippy-box[data-placement^="left"] > .tippy-arrow {
  right: 0; }

.tippy-box[data-placement^="left"] > .tippy-arrow:before {
  border-width: 8px 0 8px 8px;
  border-left-color: initial;
  right: -7px;
  -webkit-transform-origin: center left;
          transform-origin: center left; }

.tippy-box[data-placement^="right"] > .tippy-arrow {
  left: 0; }

.tippy-box[data-placement^="right"] > .tippy-arrow:before {
  left: -7px;
  border-width: 8px 8px 8px 0;
  border-right-color: initial;
  -webkit-transform-origin: center right;
          transform-origin: center right; }

.tippy-box[data-inertia][data-state="visible"] {
  -webkit-transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);
          transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11); }

.tippy-arrow {
  width: 16px;
  height: 16px;
  color: #333; }

.tippy-arrow:before {
  content: "";
  position: absolute;
  border-color: transparent;
  border-style: solid; }

.tippy-content {
  position: relative;
  padding: 5px 9px;
  z-index: 1; }

.tippy-box[data-animation=scale-subtle][data-placement^=top] {
  -webkit-transform-origin: bottom;
          transform-origin: bottom; }

.tippy-box[data-animation="scale-subtle"][data-placement^="bottom"] {
  -webkit-transform-origin: top;
          transform-origin: top; }

.tippy-box[data-animation="scale-subtle"][data-placement^="left"] {
  -webkit-transform-origin: right;
          transform-origin: right; }

.tippy-box[data-animation="scale-subtle"][data-placement^="right"] {
  -webkit-transform-origin: left;
          transform-origin: left; }

.tippy-box[data-animation="scale-subtle"][data-state="hidden"] {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  opacity: 0; }

.tippy-box[data-theme~=light][data-placement^=top] > .tippy-arrow:before {
  border-top-color: var(--tooltip-bg-color); }

.tippy-box[data-theme~=light][data-placement^=bottom] > .tippy-arrow:before {
  border-bottom-color: var(--tooltip-bg-color); }

.tippy-box[data-theme~=light][data-placement^=left] > .tippy-arrow:before {
  border-left-color: var(--tooltip-bg-color); }

.tippy-box[data-theme~=light][data-placement^=right] > .tippy-arrow:before {
  border-right-color: var(--tooltip-bg-color); }

.tippy-box[data-theme~=light] > .tippy-backdrop {
  background-color: var(--tooltip-bg-color); }

.tippy-box[data-theme~=light] > .tippy-svg-arrow {
  fill: var(--common-base-rev); }

body .tippy-box[data-theme~=light] {
  color: var(--text-color-1);
  box-shadow: 0px 8px 16px 0px var(--tooltip-shadow-color), 0px 0px 1px 0px var(--tooltip-shadow-border);
  background-color: var(--tooltip-bg-color);
  display: -webkit-box;
  display: flex;
  border-radius: 8px;
  font-size: 13px;
  text-align: center;
  font-weight: 500;
  padding: 1px;
  max-width: 400px !important; }
  body .tippy-box[data-theme~=light] kbd {
    color: var(--text-color-3);
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
    margin-top: 5px; }
    body .tippy-box[data-theme~=light] kbd.pro {
      background: var(--common-accent);
      padding: 3px 6px;
      font-size: 9px;
      text-transform: uppercase;
      border-radius: 4px;
      color: var(--common-base);
      font-weight: 700; }
  body .tippy-box[data-theme~=light] code {
    font-size: 11px;
    background: rgba(0, 0, 0, 0.1);
    padding: 1px 4px;
    border-radius: 6px;
    margin-right: 5px; }
  body .tippy-box[data-theme~=light] strong {
    font-weight: 700; }

.tippy-content:has(.windowSettings) {
  padding: 0;
  text-align: left; }

.profileTooptipCont {
  text-align: left;
  margin-top: 10px;
  padding: 0px 10px;
  font-size: .9em; }
  .profileTooptipCont h4 {
    font-size: 9px;
    color: var(--text-color-2);
    text-transform: uppercase;
    letter-spacing: 1px; }

.ptcUserInfo {
  margin: 10px 0 20px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  .ptcUserInfo .pseudoAvatar {
    height: 50px;
    width: 50px;
    font-size: 15px;
    box-shadow: inset 0 0 0 2px var(--common-border-5); }
  .ptcUserInfo .ptcAuthorName {
    margin-left: 10px;
    font-weight: 700;
    font-size: 1.5em; }
    .ptcUserInfo .ptcAuthorName a {
      color: var(--text-color-6); }

.ptcBasicInfo svg {
  width: 16px;
  stroke: var(--common-accent);
  margin-right: 5px; }

.ptcBasicInfo p {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }

.ptcBasicInfo a {
  color: var(--common-accent);
  font-weight: 400;
  text-decoration: underline; }

.socialInfo {
  margin: 20px 0 15px;
  display: -webkit-box;
  display: flex;
  gap: 5px; }
  .socialInfo a {
    background-color: var(--tooltip-hover);
    padding: 4px 8px;
    border-radius: 4px;
    color: var(--text-color-6); }
    .socialInfo a:hover {
      background-color: var(--common-accent);
      color: var(--text-color-1); }

.menuList {
  display: none;
  text-align: left;
  width: 230px;
  margin: 4px 0; }
  .menuList a {
    color: var(--text-color-rev-1);
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    padding: 8px 10px;
    border-radius: 8px;
    font-weight: 500; }
    .menuList a:hover {
      background-color: var(--tooltip-hover); }
  .menuList svg {
    margin-right: 6px; }

.withSeparator {
  border-top: solid 1px var(--tooltip-hover);
  margin-top: 10px;
  padding-top: 10px; }

.tippy-box .menuList {
  display: block; }

:root {
  color-scheme: light dark; }

html {
  color-scheme: light; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

input, select {
  font-size: 14px;
  font-family: var(--font-base); }

html {
  scroll-behavior: smooth; }

body {
  font-family: var(--font-base);
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--text-color-1);
  background-color: var(--body-bg); }

a {
  color: var(--text-color-1);
  text-decoration: none; }

#app {
  height: 100dvh;
  display: grid;
  grid-template-rows: 1fr auto;
  row-gap: 20px; }

header {
  display: none;
  padding: 20px 0 0 20px;
  grid-template-columns: 55px 1fr; }
  header h1 {
    font-weight: 800;
    font-size: 2em; }
  header a {
    font-size: .8rem;
    background-color: var(--modal-bg-color);
    padding: 4px 6px;
    color: var(--text-color-3);
    margin-left: 10px;
    border-radius: 6px;
    font-weight: 500; }

#layout {
  background-color: var(--sidebar-bg);
  padding: 20px;
  display: grid;
  grid-template-columns: 1fr 380px;
  position: relative; }

#canvas {
  display: -webkit-box;
  display: flex;
  min-width: 0;
  width: 100%; }
  #canvas li {
    box-shadow: 0px 8px 16px 0px var(--tooltip-shadow-color);
    border: solid 1px var(--border-color-11);
    background-color: var(--body-bg);
    border-radius: 8px;
    -webkit-transition: all 0.1s;
    transition: all 0.1s;
    position: relative;
    cursor: pointer; }
    #canvas li::after {
      content: "";
      display: block;
      pointer-events: none;
      top: -1px;
      left: -1px;
      bottom: -1px;
      right: -1px;
      position: absolute;
      border: solid 0px var(--common-accent);
      border-radius: 8px; }
    #canvas li:hover::after {
      border: solid 2px var(--common-accent); }
    #canvas li .delete {
      position: absolute;
      top: 0;
      right: 0;
      display: block;
      height: 36px;
      width: 36px;
      cursor: pointer;
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: center;
              justify-content: center;
      -webkit-box-align: center;
              align-items: center;
      -webkit-transition: all 0.2s;
      transition: all 0.2s;
      pointer-events: none;
      opacity: 0; }
      #canvas li .delete svg {
        -webkit-transition: all 0.2s;
        transition: all 0.2s;
        -webkit-transform: scale(0.8);
                transform: scale(0.8);
        opacity: 0.4; }
      #canvas li .delete:hover svg {
        -webkit-transform: scale(1);
                transform: scale(1);
        opacity: 1; }
    #canvas li:hover .delete {
      pointer-events: all;
      opacity: 1; }
  #canvas strong {
    position: absolute;
    top: 10px;
    left: 10px;
    opacity: .4;
    font-size: .9em; }

aside {
  box-shadow: 0px 8px 16px 0px var(--tooltip-shadow-color), 0px 0px 1px 0px var(--tooltip-shadow-border);
  background-color: var(--body-bg);
  border-radius: 8px;
  margin-left: 20px;
  padding: 20px; }

.item {
  width: 80px;
  height: 80px; }

#actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  border-bottom: solid 1px var(--common-border);
  padding-bottom: 20px;
  margin-bottom: 20px;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center; }
  #actions a {
    display: -webkit-box;
    display: flex;
    height: 35px;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: start;
            justify-content: flex-start;
    padding: 0 10px;
    border-radius: 5px; }
    #actions a:hover {
      background-color: color-mix(in srgb, var(--common-accent) 10%, transparent);
      text-decoration: none; }
    #actions a:active {
      background-color: color-mix(in srgb, var(--common-accent) 20%, transparent); }
  #actions svg {
    margin-right: 6px; }
  #actions #new-item {
    background-color: var(--common-accent);
    color: var(--text-color-rev-1); }
    #actions #new-item:active {
      background-color: color-mix(in srgb, var(--common-accent) 90%, transparent); }

.toggleCont:has(input[type="checkbox"]) {
  display: -webkit-box;
  display: flex;
  position: relative;
  cursor: pointer; }
  .toggleCont:has(input[type="checkbox"]) input {
    position: absolute;
    top: -900em;
    left: -900em; }
  .toggleCont:has(input[type="checkbox"]):before {
    content: "";
    display: block;
    width: 32px;
    height: 18px;
    background-color: var(--input-bg);
    border-radius: 20px;
    margin-right: 8px; }
  .toggleCont:has(input[type="checkbox"]):after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-color: var(--input-bg-focus);
    border-radius: 20px;
    position: absolute;
    top: 3px;
    left: 3px; }

.toggleCont:has(input[type="checkbox"]:checked):before {
  background-color: var(--common-accent); }

.toggleCont:has(input[type="checkbox"]:checked):after {
  left: 17px;
  background-color: var(--body-bg); }

.toggleCont:has(input[type="checkbox"]:disabled) {
  opacity: 0.4;
  cursor: default; }

textarea {
  font-size: 10px;
  width: 100%;
  height: 100px;
  padding: 8px 10px;
  border-radius: 6px;
  border: solid 1px var(--input-bg);
  box-sizing: border-box;
  background-color: #00000000;
  color: var(--text-color-3); }
  textarea:focus {
    outline: none; }

.splitFieldset {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  .splitFieldset fieldset {
    width: 48%; }
    .splitFieldset fieldset input {
      width: 100%;
      box-sizing: border-box; }

fieldset {
  text-align: left;
  margin-bottom: 15px; }
  fieldset input {
    background-color: var(--input-bg);
    border: none;
    padding: 8px 10px;
    border-radius: 6px; }
    fieldset input:focus {
      background-color: var(--input-bg-focus);
      outline: none; }
  fieldset input[type=number] {
    -webkit-appearance: none;
            appearance: none;
    -moz-appearance: textfield; }
  fieldset h4 {
    font-size: .95em;
    margin-bottom: 5px; }
  fieldset select {
    -webkit-appearance: none;
            appearance: none;
    -moz-appearance: none;
    background-color: var(--input-bg);
    border: none;
    padding: 8px 10px;
    border-radius: 6px;
    width: 100%;
    cursor: pointer; }

.inlineFields {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }

.customSwitcher {
  display: -webkit-box;
  display: flex;
  width: 60%;
  background-color: var(--input-bg);
  border: solid 1px var(--common-border);
  padding: 3px;
  border-radius: 8px;
  margin-right: 15px; }
  .customSwitcher label {
    -webkit-box-flex: 1;
            flex-grow: 1;
    text-align: center;
    cursor: pointer;
    border: none;
    padding: 6px 8px;
    border-radius: 6px; }
    .customSwitcher label input {
      position: absolute;
      top: -900em;
      left: -900em; }
  .customSwitcher label:has(input:checked) {
    background-color: var(--common-accent);
    color: var(--text-color-rev-1); }

#dropdown-generator fieldset {
  display: -webkit-box;
  display: flex;
  gap: 15px;
  margin: 10px 5px; }
  #dropdown-generator fieldset input {
    width: 70px; }

.s10 #app {
  grid-template-rows: 60px 1fr; }

.s10 header {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  .s10 header h1 {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    margin-left: 20px; }
