/* app/javascript/stylesheets/application.scss */
:root {
  --toastify-color-light:#fff;
  --toastify-color-dark:#121212;
  --toastify-color-info:#3498db;
  --toastify-color-success:#07bc0c;
  --toastify-color-warning:#f1c40f;
  --toastify-color-error:#e74c3c;
  --toastify-color-transparent:hsla(0,0%,100%,.7);
  --toastify-icon-color-info:var(--toastify-color-info);
  --toastify-icon-color-success:var(--toastify-color-success);
  --toastify-icon-color-warning:var(--toastify-color-warning);
  --toastify-icon-color-error:var(--toastify-color-error);
  --toastify-toast-width:320px;
  --toastify-toast-background:#fff;
  --toastify-toast-min-height:64px;
  --toastify-toast-max-height:800px;
  --toastify-font-family:sans-serif;
  --toastify-z-index:9999;
  --toastify-text-color-light:#757575;
  --toastify-text-color-dark:#fff;
  --toastify-text-color-info:#fff;
  --toastify-text-color-success:#fff;
  --toastify-text-color-warning:#fff;
  --toastify-text-color-error:#fff;
  --toastify-spinner-color:#616161;
  --toastify-spinner-color-empty-area:#e0e0e0;
  --toastify-color-progress-light:linear-gradient(
      90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);
  --toastify-color-progress-dark:#bb86fc;
  --toastify-color-progress-info:var(--toastify-color-info);
  --toastify-color-progress-success:var(--toastify-color-success);
  --toastify-color-progress-warning:var(--toastify-color-warning);
  --toastify-color-progress-error:var(--toastify-color-error);
}
.Toastify__toast-container {
  z-index: 9999;
  z-index: var(--toastify-z-index);
  -webkit-transform: translateZ(9999);
  -webkit-transform: translateZ(var(--toastify-z-index));
  position: fixed;
  padding: 4px;
  width: 320px;
  width: var(--toastify-toast-width);
  box-sizing: border-box;
  color: #fff;
}
.Toastify__toast-container--top-left {
  top: 1em;
  left: 1em;
}
.Toastify__toast-container--top-center {
  top: 1em;
  left: 50%;
  transform: translateX(-50%);
}
.Toastify__toast-container--top-right {
  top: 1em;
  right: 1em;
}
.Toastify__toast-container--bottom-left {
  bottom: 1em;
  left: 1em;
}
.Toastify__toast-container--bottom-center {
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
}
.Toastify__toast-container--bottom-right {
  bottom: 1em;
  right: 1em;
}
@media only screen and (max-width:480px) {
  .Toastify__toast-container {
    width: 100vw;
    padding: 0;
    left: 0;
    margin: 0;
  }
  .Toastify__toast-container--top-center,
  .Toastify__toast-container--top-left,
  .Toastify__toast-container--top-right {
    top: 0;
    transform: translateX(0);
  }
  .Toastify__toast-container--bottom-center,
  .Toastify__toast-container--bottom-left,
  .Toastify__toast-container--bottom-right {
    bottom: 0;
    transform: translateX(0);
  }
  .Toastify__toast-container--rtl {
    right: 0;
    left: auto;
  }
}
.Toastify__toast {
  position: relative;
  min-height: 64px;
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  margin-bottom: 1rem;
  padding: 8px;
  border-radius: 4px;
  box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05);
  display: flex;
  justify-content: space-between;
  max-height: 800px;
  max-height: var(--toastify-toast-max-height);
  overflow: hidden;
  font-family: sans-serif;
  font-family: var(--toastify-font-family);
  cursor: pointer;
  direction: ltr;
}
.Toastify__toast--rtl {
  direction: rtl;
}
.Toastify__toast-body {
  margin: auto 0;
  flex: 1 1 auto;
  padding: 6px;
  display: flex;
  align-items: center;
}
.Toastify__toast-icon {
  -webkit-margin-end: 10px;
  margin-inline-end: 10px;
  width: 20px;
  flex-shrink: 0;
  display: flex;
}
.Toastify--animate {
  animation-fill-mode: both;
  animation-duration: .7s;
}
.Toastify--animate-icon {
  animation-fill-mode: both;
  animation-duration: .3s;
}
@media only screen and (max-width:480px) {
  .Toastify__toast {
    margin-bottom: 0;
    border-radius: 0;
  }
}
.Toastify__toast-theme--dark {
  background: #121212;
  background: var(--toastify-color-dark);
  color: #fff;
  color: var(--toastify-text-color-dark);
}
.Toastify__toast-theme--colored.Toastify__toast--default,
.Toastify__toast-theme--light {
  background: #fff;
  background: var(--toastify-color-light);
  color: #757575;
  color: var(--toastify-text-color-light);
}
.Toastify__toast-theme--colored.Toastify__toast--info {
  color: #fff;
  color: var(--toastify-text-color-info);
  background: #3498db;
  background: var(--toastify-color-info);
}
.Toastify__toast-theme--colored.Toastify__toast--success {
  color: #fff;
  color: var(--toastify-text-color-success);
  background: #07bc0c;
  background: var(--toastify-color-success);
}
.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: #fff;
  color: var(--toastify-text-color-warning);
  background: #f1c40f;
  background: var(--toastify-color-warning);
}
.Toastify__toast-theme--colored.Toastify__toast--error {
  color: #fff;
  color: var(--toastify-text-color-error);
  background: #e74c3c;
  background: var(--toastify-color-error);
}
.Toastify__progress-bar-theme--light {
  background:
    linear-gradient(
      90deg,
      #4cd964,
      #5ac8fa,
      #007aff,
      #34aadc,
      #5856d6,
      #ff2d55);
  background: var(--toastify-color-progress-light);
}
.Toastify__progress-bar-theme--dark {
  background: #bb86fc;
  background: var(--toastify-color-progress-dark);
}
.Toastify__progress-bar--info {
  background: #3498db;
  background: var(--toastify-color-progress-info);
}
.Toastify__progress-bar--success {
  background: #07bc0c;
  background: var(--toastify-color-progress-success);
}
.Toastify__progress-bar--warning {
  background: #f1c40f;
  background: var(--toastify-color-progress-warning);
}
.Toastify__progress-bar--error {
  background: #e74c3c;
  background: var(--toastify-color-progress-error);
}
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning {
  background: hsla(0, 0%, 100%, .7);
  background: var(--toastify-color-transparent);
}
.Toastify__close-button {
  color: #fff;
  background: transparent;
  outline: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: .7;
  transition: .3s ease;
  align-self: flex-start;
}
.Toastify__close-button--light {
  color: #000;
  opacity: .3;
}
.Toastify__close-button > svg {
  fill: currentColor;
  height: 16px;
  width: 14px;
}
.Toastify__close-button:focus,
.Toastify__close-button:hover {
  opacity: 1;
}
@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1);
  }
  to {
    transform: scaleX(0);
  }
}
.Toastify__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  z-index: 9999;
  z-index: var(--toastify-z-index);
  opacity: .7;
  transform-origin: left;
}
.Toastify__progress-bar--animated {
  animation: Toastify__trackProgress linear 1 forwards;
}
.Toastify__progress-bar--controlled {
  transition: transform .2s;
}
.Toastify__progress-bar--rtl {
  right: 0;
  left: auto;
  transform-origin: right;
}
.Toastify__spinner {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 2px solid;
  border-radius: 100%;
  border-color: #e0e0e0;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: #616161;
  border-right-color: var(--toastify-spinner-color);
  animation: Toastify__spin .65s linear infinite;
}
@keyframes Toastify__bounceInRight {
  0%, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: none;
  }
}
@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes Toastify__bounceInLeft {
  0%, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    transform: translate3d(5px, 0, 0);
  }
  to {
    transform: none;
  }
}
@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes Toastify__bounceInUp {
  0%, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    transform: translate3d(0, 10px, 0);
  }
  90% {
    transform: translate3d(0, -5px, 0);
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes Toastify__bounceInDown {
  0%, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    transform: translate3d(0, -10px, 0);
  }
  90% {
    transform: translate3d(0, 5px, 0);
  }
  to {
    transform: none;
  }
}
@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}
.Toastify__bounce-enter--bottom-left,
.Toastify__bounce-enter--top-left {
  animation-name: Toastify__bounceInLeft;
}
.Toastify__bounce-enter--bottom-right,
.Toastify__bounce-enter--top-right {
  animation-name: Toastify__bounceInRight;
}
.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown;
}
.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp;
}
.Toastify__bounce-exit--bottom-left,
.Toastify__bounce-exit--top-left {
  animation-name: Toastify__bounceOutLeft;
}
.Toastify__bounce-exit--bottom-right,
.Toastify__bounce-exit--top-right {
  animation-name: Toastify__bounceOutRight;
}
.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp;
}
.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown;
}
@keyframes Toastify__zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes Toastify__zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }
  to {
    opacity: 0;
  }
}
.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn;
}
.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut;
}
@keyframes Toastify__flipIn {
  0% {
    transform: perspective(400px) rotateX(90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotateX(10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotateX(-5deg);
  }
  to {
    transform: perspective(400px);
  }
}
@keyframes Toastify__flipOut {
  0% {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotateX(-20deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.Toastify__flip-enter {
  animation-name: Toastify__flipIn;
}
.Toastify__flip-exit {
  animation-name: Toastify__flipOut;
}
@keyframes Toastify__slideInRight {
  0% {
    transform: translate3d(110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes Toastify__slideInLeft {
  0% {
    transform: translate3d(-110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes Toastify__slideInUp {
  0% {
    transform: translate3d(0, 110%, 0);
    visibility: visible;
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes Toastify__slideInDown {
  0% {
    transform: translate3d(0, -110%, 0);
    visibility: visible;
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes Toastify__slideOutRight {
  0% {
    transform: translateZ(0);
  }
  to {
    visibility: hidden;
    transform: translate3d(110%, 0, 0);
  }
}
@keyframes Toastify__slideOutLeft {
  0% {
    transform: translateZ(0);
  }
  to {
    visibility: hidden;
    transform: translate3d(-110%, 0, 0);
  }
}
@keyframes Toastify__slideOutDown {
  0% {
    transform: translateZ(0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0);
  }
}
@keyframes Toastify__slideOutUp {
  0% {
    transform: translateZ(0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0);
  }
}
.Toastify__slide-enter--bottom-left,
.Toastify__slide-enter--top-left {
  animation-name: Toastify__slideInLeft;
}
.Toastify__slide-enter--bottom-right,
.Toastify__slide-enter--top-right {
  animation-name: Toastify__slideInRight;
}
.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown;
}
.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp;
}
.Toastify__slide-exit--bottom-left,
.Toastify__slide-exit--top-left {
  animation-name: Toastify__slideOutLeft;
}
.Toastify__slide-exit--bottom-right,
.Toastify__slide-exit--top-right {
  animation-name: Toastify__slideOutRight;
}
.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
}
.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
}
@keyframes Toastify__spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
*,
::before,
::after {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
::-ms-backdrop {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
::backdrop {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
*,
::before,
::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: #e5e7eb;
}
::before,
::after {
  --tw-content: "";
}
html,
:host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
    -o-tab-size: 4;
       tab-size: 4;
  font-family:
    "Inter",
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-family: var(--font-sans);
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp,
pre {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    "Liberation Mono",
    "Courier New",
    monospace;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  -webkit-font-feature-settings: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
dialog {
  padding: 0;
}
textarea {
  resize: vertical;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
button,
[role=button] {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden]:where(:not([hidden=until-found])) {
  display: none;
}
.\!container {
  width: 100% !important;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {
  .\!container {
    max-width: 640px !important;
  }
  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .\!container {
    max-width: 768px !important;
  }
  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .\!container {
    max-width: 1024px !important;
  }
  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .\!container {
    max-width: 1280px !important;
  }
  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .\!container {
    max-width: 1536px !important;
  }
  .container {
    max-width: 1536px;
  }
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border-width: 0 !important;
}
.pointer-events-none {
  pointer-events: none !important;
}
.visible {
  visibility: visible !important;
}
.collapse {
  visibility: collapse !important;
}
.fixed {
  position: fixed !important;
}
.absolute {
  position: absolute !important;
}
.relative {
  position: relative !important;
}
.sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}
.inset-0 {
  inset: 0px !important;
}
.inset-x-0 {
  left: 0px !important;
  right: 0px !important;
}
.inset-x-3 {
  left: 0.75rem !important;
  left: var(--space-3) !important;
  right: 0.75rem !important;
  right: var(--space-3) !important;
}
.inset-y-0 {
  top: 0px !important;
  bottom: 0px !important;
}
.-bottom-1 {
  bottom: calc(0.25rem * -1) !important;
  bottom: calc(var(--space-1) * -1) !important;
}
.-left-1\.5 {
  left: -0.375rem !important;
}
.-right-1 {
  right: calc(0.25rem * -1) !important;
  right: calc(var(--space-1) * -1) !important;
}
.-right-1\.5 {
  right: -0.375rem !important;
}
.-top-1\.5 {
  top: -0.375rem !important;
}
.bottom-0 {
  bottom: 0px !important;
}
.bottom-3 {
  bottom: 0.75rem !important;
  bottom: var(--space-3) !important;
}
.bottom-full {
  bottom: 100% !important;
}
.left-0 {
  left: 0px !important;
}
.left-0\.5 {
  left: 0.125rem !important;
}
.left-1\/2 {
  left: 50% !important;
}
.left-3 {
  left: 0.75rem !important;
  left: var(--space-3) !important;
}
.left-full {
  left: 100% !important;
}
.right-0 {
  right: 0px !important;
}
.right-3 {
  right: 0.75rem !important;
  right: var(--space-3) !important;
}
.right-4 {
  right: 1rem !important;
  right: var(--space-4) !important;
}
.right-full {
  right: 100% !important;
}
.top-0 {
  top: 0px !important;
}
.top-0\.5 {
  top: 0.125rem !important;
}
.top-1\.5 {
  top: 0.375rem !important;
}
.top-1\/2 {
  top: 50% !important;
}
.top-4 {
  top: 1rem !important;
  top: var(--space-4) !important;
}
.top-full {
  top: 100% !important;
}
.z-10 {
  z-index: 10 !important;
}
.z-20 {
  z-index: 20 !important;
}
.z-30 {
  z-index: 30 !important;
}
.z-50 {
  z-index: 50 !important;
}
.z-overlay {
  z-index: 50 !important;
}
.z-shell {
  z-index: 20 !important;
}
.z-toast {
  z-index: 60 !important;
}
.order-1 {
  order: 1 !important;
}
.order-2 {
  order: 2 !important;
}
.m-4 {
  margin: 1rem !important;
  margin: var(--space-4) !important;
}
.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}
.my-3 {
  margin-top: 0.75rem !important;
  margin-top: var(--space-3) !important;
  margin-bottom: 0.75rem !important;
  margin-bottom: var(--space-3) !important;
}
.-mb-px {
  margin-bottom: -1px !important;
}
.-mt-1 {
  margin-top: calc(0.25rem * -1) !important;
  margin-top: calc(var(--space-1) * -1) !important;
}
.-mt-4 {
  margin-top: calc(1rem * -1) !important;
  margin-top: calc(var(--space-4) * -1) !important;
}
.-mt-5 {
  margin-top: -1.25rem !important;
}
.-mt-7 {
  margin-top: -1.75rem !important;
}
.mb-1 {
  margin-bottom: 0.25rem !important;
  margin-bottom: var(--space-1) !important;
}
.mb-1\.5 {
  margin-bottom: 0.375rem !important;
}
.mb-10 {
  margin-bottom: 2.5rem !important;
}
.mb-2 {
  margin-bottom: 0.5rem !important;
  margin-bottom: var(--space-2) !important;
}
.mb-3 {
  margin-bottom: 0.75rem !important;
  margin-bottom: var(--space-3) !important;
}
.mb-4 {
  margin-bottom: 1rem !important;
  margin-bottom: var(--space-4) !important;
}
.mb-5 {
  margin-bottom: 1.25rem !important;
}
.mb-6 {
  margin-bottom: 1.5rem !important;
  margin-bottom: var(--space-6) !important;
}
.ml-1 {
  margin-left: 0.25rem !important;
  margin-left: var(--space-1) !important;
}
.ml-2 {
  margin-left: 0.5rem !important;
  margin-left: var(--space-2) !important;
}
.ml-4 {
  margin-left: 1rem !important;
  margin-left: var(--space-4) !important;
}
.ml-5 {
  margin-left: 1.25rem !important;
}
.ml-6 {
  margin-left: 1.5rem !important;
  margin-left: var(--space-6) !important;
}
.ml-\[calc\(50\%_-_50vw\)\] {
  margin-left: calc(50% - 50vw) !important;
}
.ml-auto {
  margin-left: auto !important;
}
.mr-1 {
  margin-right: 0.25rem !important;
  margin-right: var(--space-1) !important;
}
.mr-2 {
  margin-right: 0.5rem !important;
  margin-right: var(--space-2) !important;
}
.mr-4 {
  margin-right: 1rem !important;
  margin-right: var(--space-4) !important;
}
.mt-0\.5 {
  margin-top: 0.125rem !important;
}
.mt-1 {
  margin-top: 0.25rem !important;
  margin-top: var(--space-1) !important;
}
.mt-1\.5 {
  margin-top: 0.375rem !important;
}
.mt-10 {
  margin-top: 2.5rem !important;
}
.mt-16 {
  margin-top: 4rem !important;
}
.mt-2 {
  margin-top: 0.5rem !important;
  margin-top: var(--space-2) !important;
}
.mt-20 {
  margin-top: 5rem !important;
}
.mt-3 {
  margin-top: 0.75rem !important;
  margin-top: var(--space-3) !important;
}
.mt-4 {
  margin-top: 1rem !important;
  margin-top: var(--space-4) !important;
}
.mt-5 {
  margin-top: 1.25rem !important;
}
.mt-6 {
  margin-top: 1.5rem !important;
  margin-top: var(--space-6) !important;
}
.mt-8 {
  margin-top: 2rem !important;
  margin-top: var(--space-8) !important;
}
.mt-auto {
  margin-top: auto !important;
}
.line-clamp-1 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
}
.line-clamp-2 {
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}
.block {
  display: block !important;
}
.inline-block {
  display: inline-block !important;
}
.\!inline {
  display: inline !important;
}
.inline {
  display: inline !important;
}
.flex {
  display: flex !important;
}
.inline-flex {
  display: inline-flex !important;
}
.table {
  display: table !important;
}
.grid {
  display: grid !important;
}
.contents {
  display: contents !important;
}
.list-item {
  display: list-item !important;
}
.hidden {
  display: none !important;
}
.aspect-\[1\.586\/1\] {
  aspect-ratio: 1.586/1 !important;
}
.\!h-auto {
  height: auto !important;
}
.h-1 {
  height: 0.25rem !important;
  height: var(--space-1) !important;
}
.h-1\.5 {
  height: 0.375rem !important;
}
.h-10 {
  height: 2.5rem !important;
}
.h-11 {
  height: 2.75rem !important;
}
.h-12 {
  height: 3rem !important;
}
.h-14 {
  height: 3.5rem !important;
}
.h-16 {
  height: 4rem !important;
}
.h-2 {
  height: 0.5rem !important;
  height: var(--space-2) !important;
}
.h-2\.5 {
  height: 0.625rem !important;
}
.h-20 {
  height: 5rem !important;
}
.h-24 {
  height: 6rem !important;
}
.h-28 {
  height: 7rem !important;
}
.h-3 {
  height: 0.75rem !important;
  height: var(--space-3) !important;
}
.h-3\.5 {
  height: 0.875rem !important;
}
.h-36 {
  height: 9rem !important;
}
.h-4 {
  height: 1rem !important;
  height: var(--space-4) !important;
}
.h-44 {
  height: 11rem !important;
}
.h-5 {
  height: 1.25rem !important;
}
.h-6 {
  height: 1.5rem !important;
  height: var(--space-6) !important;
}
.h-64 {
  height: 16rem !important;
}
.h-7 {
  height: 1.75rem !important;
}
.h-8 {
  height: 2rem !important;
  height: var(--space-8) !important;
}
.h-9 {
  height: 2.25rem !important;
}
.h-\[18px\] {
  height: 18px !important;
}
.h-\[360px\] {
  height: 360px !important;
}
.h-\[54px\] {
  height: 54px !important;
}
.h-\[60vh\] {
  height: 60vh !important;
}
.h-\[620px\] {
  height: 620px !important;
}
.h-\[66px\] {
  height: 66px !important;
}
.h-auto {
  height: auto !important;
}
.h-fit {
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
}
.h-full {
  height: 100% !important;
}
.max-h-20 {
  max-height: 5rem !important;
}
.max-h-48 {
  max-height: 12rem !important;
}
.max-h-56 {
  max-height: 14rem !important;
}
.max-h-64 {
  max-height: 16rem !important;
}
.max-h-\[520px\] {
  max-height: 520px !important;
}
.max-h-\[60vh\] {
  max-height: 60vh !important;
}
.max-h-\[760px\] {
  max-height: 760px !important;
}
.max-h-full {
  max-height: 100% !important;
}
.min-h-0 {
  min-height: 0px !important;
}
.min-h-10 {
  min-height: 2.5rem !important;
}
.min-h-16 {
  min-height: 4rem !important;
}
.min-h-40 {
  min-height: 10rem !important;
}
.min-h-48 {
  min-height: 12rem !important;
}
.min-h-64 {
  min-height: 16rem !important;
}
.min-h-\[112px\] {
  min-height: 112px !important;
}
.min-h-\[120px\] {
  min-height: 120px !important;
}
.min-h-\[124px\] {
  min-height: 124px !important;
}
.min-h-\[148px\] {
  min-height: 148px !important;
}
.min-h-\[180px\] {
  min-height: 180px !important;
}
.min-h-\[184px\] {
  min-height: 184px !important;
}
.min-h-\[190px\] {
  min-height: 190px !important;
}
.min-h-\[220px\] {
  min-height: 220px !important;
}
.min-h-\[240px\] {
  min-height: 240px !important;
}
.min-h-\[260px\] {
  min-height: 260px !important;
}
.min-h-\[280px\] {
  min-height: 280px !important;
}
.min-h-\[320px\] {
  min-height: 320px !important;
}
.min-h-\[360px\] {
  min-height: 360px !important;
}
.min-h-\[36px\] {
  min-height: 36px !important;
}
.min-h-\[40px\] {
  min-height: 40px !important;
}
.min-h-\[420px\] {
  min-height: 420px !important;
}
.min-h-\[44px\] {
  min-height: 44px !important;
}
.min-h-\[54px\] {
  min-height: 54px !important;
}
.min-h-\[56px\] {
  min-height: 56px !important;
}
.min-h-\[60vh\] {
  min-height: 60vh !important;
}
.min-h-\[92px\] {
  min-height: 92px !important;
}
.min-h-screen {
  min-height: 100vh !important;
}
.w-1\.5 {
  width: 0.375rem !important;
}
.w-1\/3 {
  width: 33.333333% !important;
}
.w-10 {
  width: 2.5rem !important;
}
.w-11 {
  width: 2.75rem !important;
}
.w-12 {
  width: 3rem !important;
}
.w-14 {
  width: 3.5rem !important;
}
.w-2 {
  width: 0.5rem !important;
  width: var(--space-2) !important;
}
.w-2\.5 {
  width: 0.625rem !important;
}
.w-2\/3 {
  width: 66.666667% !important;
}
.w-24 {
  width: 6rem !important;
}
.w-28 {
  width: 7rem !important;
}
.w-3 {
  width: 0.75rem !important;
  width: var(--space-3) !important;
}
.w-3\.5 {
  width: 0.875rem !important;
}
.w-32 {
  width: 8rem !important;
}
.w-4 {
  width: 1rem !important;
  width: var(--space-4) !important;
}
.w-4\/5 {
  width: 80% !important;
}
.w-40 {
  width: 10rem !important;
}
.w-5 {
  width: 1.25rem !important;
}
.w-56 {
  width: 14rem !important;
}
.w-6 {
  width: 1.5rem !important;
  width: var(--space-6) !important;
}
.w-64 {
  width: 16rem !important;
}
.w-7 {
  width: 1.75rem !important;
}
.w-72 {
  width: 18rem !important;
}
.w-8 {
  width: 2rem !important;
  width: var(--space-8) !important;
}
.w-9 {
  width: 2.25rem !important;
}
.w-96 {
  width: 24rem !important;
}
.w-\[10\%\] {
  width: 10% !important;
}
.w-\[12\%\] {
  width: 12% !important;
}
.w-\[13\%\] {
  width: 13% !important;
}
.w-\[14\%\] {
  width: 14% !important;
}
.w-\[15\%\] {
  width: 15% !important;
}
.w-\[16\%\] {
  width: 16% !important;
}
.w-\[17\%\] {
  width: 17% !important;
}
.w-\[18\%\] {
  width: 18% !important;
}
.w-\[18px\] {
  width: 18px !important;
}
.w-\[20\%\] {
  width: 20% !important;
}
.w-\[21\%\] {
  width: 21% !important;
}
.w-\[22\%\] {
  width: 22% !important;
}
.w-\[240px\] {
  width: 240px !important;
}
.w-\[25\%\] {
  width: 25% !important;
}
.w-\[27\%\] {
  width: 27% !important;
}
.w-\[30\%\] {
  width: 30% !important;
}
.w-\[32\%\] {
  width: 32% !important;
}
.w-\[34\%\] {
  width: 34% !important;
}
.w-\[36\%\] {
  width: 36% !important;
}
.w-\[38\%\] {
  width: 38% !important;
}
.w-\[4\%\] {
  width: 4% !important;
}
.w-\[40\%\] {
  width: 40% !important;
}
.w-\[44\%\] {
  width: 44% !important;
}
.w-\[45\%\] {
  width: 45% !important;
}
.w-\[48\%\] {
  width: 48% !important;
}
.w-\[54px\] {
  width: 54px !important;
}
.w-\[58\%\] {
  width: 58% !important;
}
.w-\[66px\] {
  width: 66px !important;
}
.w-\[8\%\] {
  width: 8% !important;
}
.w-\[calc\(100vw-2rem\)\] {
  width: calc(100vw - 2rem) !important;
}
.w-auto {
  width: auto !important;
}
.w-fit {
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}
.w-full {
  width: 100% !important;
}
.w-screen {
  width: 100vw !important;
}
.w-sidebar {
  width: 15.5rem !important;
  width: var(--sidebar-width) !important;
}
.min-w-0 {
  min-width: 0px !important;
}
.min-w-5 {
  min-width: 1.25rem !important;
}
.min-w-\[1040px\] {
  min-width: 1040px !important;
}
.min-w-\[1160px\] {
  min-width: 1160px !important;
}
.min-w-\[120px\] {
  min-width: 120px !important;
}
.min-w-\[12rem\] {
  min-width: 12rem !important;
}
.min-w-\[180px\] {
  min-width: 180px !important;
}
.min-w-\[220px\] {
  min-width: 220px !important;
}
.min-w-\[240px\] {
  min-width: 240px !important;
}
.min-w-\[680px\] {
  min-width: 680px !important;
}
.min-w-\[720px\] {
  min-width: 720px !important;
}
.min-w-\[760px\] {
  min-width: 760px !important;
}
.min-w-\[820px\] {
  min-width: 820px !important;
}
.min-w-\[8rem\] {
  min-width: 8rem !important;
}
.min-w-\[900px\] {
  min-width: 900px !important;
}
.max-w-28 {
  max-width: 7rem !important;
}
.max-w-2xl {
  max-width: 42rem !important;
}
.max-w-3xl {
  max-width: 48rem !important;
}
.max-w-44 {
  max-width: 11rem !important;
}
.max-w-4xl {
  max-width: 56rem !important;
}
.max-w-5xl {
  max-width: 64rem !important;
}
.max-w-6xl {
  max-width: 72rem !important;
}
.max-w-\[180px\] {
  max-width: 180px !important;
}
.max-w-\[220px\] {
  max-width: 220px !important;
}
.max-w-\[22rem\] {
  max-width: 22rem !important;
}
.max-w-\[240px\] {
  max-width: 240px !important;
}
.max-w-\[280px\] {
  max-width: 280px !important;
}
.max-w-\[65\%\] {
  max-width: 65% !important;
}
.max-w-\[9rem\] {
  max-width: 9rem !important;
}
.max-w-\[calc\(100vw-2rem\)\] {
  max-width: calc(100vw - 2rem) !important;
}
.max-w-\[min\(42rem\,calc\(100\%-3\.5rem\)\)\] {
  max-width: min(42rem, calc(100% - 3.5rem)) !important;
}
.max-w-full {
  max-width: 100% !important;
}
.max-w-lg {
  max-width: 32rem !important;
}
.max-w-md {
  max-width: 28rem !important;
}
.max-w-page {
  max-width: 90rem !important;
  max-width: var(--content-max-width) !important;
}
.max-w-prose {
  max-width: 45rem !important;
}
.max-w-sm {
  max-width: 24rem !important;
}
.max-w-xl {
  max-width: 36rem !important;
}
.max-w-xs {
  max-width: 20rem !important;
}
.flex-1 {
  flex: 1 1 !important;
}
.flex-shrink-0 {
  flex-shrink: 0 !important;
}
.shrink-0 {
  flex-shrink: 0 !important;
}
.flex-grow {
  flex-grow: 1 !important;
}
.flex-grow-0 {
  flex-grow: 0 !important;
}
.table-fixed {
  table-layout: fixed !important;
}
.border-collapse {
  border-collapse: collapse !important;
}
.-translate-x-1\/2 {
  --tw-translate-x:-50% !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.-translate-y-1\/2 {
  --tw-translate-y:-50% !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.translate-x-0 {
  --tw-translate-x:0px !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.translate-x-4 {
  --tw-translate-x:var(--space-4) !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.-rotate-90 {
  --tw-rotate:-90deg !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.rotate-180 {
  --tw-rotate:180deg !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
@keyframes pulse {
  50% {
    opacity: .5;
  }
}
.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite !important;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.animate-spin {
  animation: spin 1s linear infinite !important;
}
.cursor-not-allowed {
  cursor: not-allowed !important;
}
.cursor-pointer {
  cursor: pointer !important;
}
.cursor-wait {
  cursor: wait !important;
}
.touch-none {
  touch-action: none !important;
}
.resize-none {
  resize: none !important;
}
.list-decimal {
  list-style-type: decimal !important;
}
.list-disc {
  list-style-type: disc !important;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
.grid-cols-\[1fr_90px\] {
  grid-template-columns: 1fr 90px !important;
}
.grid-cols-\[minmax\(0\,1fr\)_8rem\] {
  grid-template-columns: minmax(0, 1fr) 8rem !important;
}
.grid-cols-\[minmax\(0\,1fr\)_auto\] {
  grid-template-columns: minmax(0, 1fr) auto !important;
}
.grid-cols-\[minmax\(0\,1fr\)_minmax\(110px\,0\.45fr\)_40px\] {
  grid-template-columns: minmax(0, 1fr) minmax(110px, 0.45fr) 40px !important;
}
.flex-row {
  flex-direction: row !important;
}
.flex-row-reverse {
  flex-direction: row-reverse !important;
}
.flex-col {
  flex-direction: column !important;
}
.flex-col-reverse {
  flex-direction: column-reverse !important;
}
.flex-wrap {
  flex-wrap: wrap !important;
}
.items-start {
  align-items: flex-start !important;
}
.items-end {
  align-items: flex-end !important;
}
.items-center {
  align-items: center !important;
}
.items-baseline {
  align-items: baseline !important;
}
.items-stretch {
  align-items: stretch !important;
}
.justify-start {
  justify-content: flex-start !important;
}
.justify-end {
  justify-content: flex-end !important;
}
.justify-center {
  justify-content: center !important;
}
.justify-between {
  justify-content: space-between !important;
}
.gap-1 {
  gap: 0.25rem !important;
  gap: var(--space-1) !important;
}
.gap-1\.5 {
  gap: 0.375rem !important;
}
.gap-10 {
  gap: 2.5rem !important;
}
.gap-2 {
  gap: 0.5rem !important;
  gap: var(--space-2) !important;
}
.gap-3 {
  gap: 0.75rem !important;
  gap: var(--space-3) !important;
}
.gap-4 {
  gap: 1rem !important;
  gap: var(--space-4) !important;
}
.gap-5 {
  gap: 1.25rem !important;
}
.gap-6 {
  gap: 1.5rem !important;
  gap: var(--space-6) !important;
}
.gap-x-3 {
  -webkit-column-gap: 0.75rem !important;
  -moz-column-gap: 0.75rem !important;
       column-gap: 0.75rem !important;
  -webkit-column-gap: var(--space-3) !important;
  -moz-column-gap: var(--space-3) !important;
       column-gap: var(--space-3) !important;
}
.gap-x-4 {
  -webkit-column-gap: 1rem !important;
  -moz-column-gap: 1rem !important;
       column-gap: 1rem !important;
  -webkit-column-gap: var(--space-4) !important;
  -moz-column-gap: var(--space-4) !important;
       column-gap: var(--space-4) !important;
}
.gap-x-6 {
  -webkit-column-gap: 1.5rem !important;
  -moz-column-gap: 1.5rem !important;
       column-gap: 1.5rem !important;
  -webkit-column-gap: var(--space-6) !important;
  -moz-column-gap: var(--space-6) !important;
       column-gap: var(--space-6) !important;
}
.gap-y-1 {
  row-gap: 0.25rem !important;
  row-gap: var(--space-1) !important;
}
.gap-y-3 {
  row-gap: 0.75rem !important;
  row-gap: var(--space-3) !important;
}
.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse:0 !important;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse)) !important;
  margin-right: calc(var(--space-2) * var(--tw-space-x-reverse)) !important;
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))) !important;
  margin-left: calc(var(--space-2) * calc(1 - var(--tw-space-x-reverse))) !important;
}
.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse:0 !important;
  margin-right: calc(1rem * var(--tw-space-x-reverse)) !important;
  margin-right: calc(var(--space-4) * var(--tw-space-x-reverse)) !important;
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))) !important;
  margin-left: calc(var(--space-4) * calc(1 - var(--tw-space-x-reverse))) !important;
}
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(0.125rem * var(--tw-space-y-reverse)) !important;
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-1) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-1) * var(--tw-space-y-reverse)) !important;
}
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse)) !important;
}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-2) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-2) * var(--tw-space-y-reverse)) !important;
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-3) * var(--tw-space-y-reverse)) !important;
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-4) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(1rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-4) * var(--tw-space-y-reverse)) !important;
}
.space-y-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)) !important;
}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-6) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-6) * var(--tw-space-y-reverse)) !important;
}
.space-y-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0 !important;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-top: calc(var(--space-8) * calc(1 - var(--tw-space-y-reverse))) !important;
  margin-bottom: calc(2rem * var(--tw-space-y-reverse)) !important;
  margin-bottom: calc(var(--space-8) * var(--tw-space-y-reverse)) !important;
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse:0 !important;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse))) !important;
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse)) !important;
}
.divide-\[\#d5e8e0\] > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity:1 !important;
  border-color: rgb(213 232 224 / 1) !important;
  border-color: rgb(213 232 224 / var(--tw-divide-opacity, 1)) !important;
}
.divide-border > :not([hidden]) ~ :not([hidden]) {
  border-color: #d5e1de !important;
  border-color: var(--color-border) !important;
}
.divide-border-subtle > :not([hidden]) ~ :not([hidden]) {
  border-color: #e8efed !important;
  border-color: var(--color-border-subtle) !important;
}
.self-start {
  align-self: flex-start !important;
}
.self-end {
  align-self: flex-end !important;
}
.overflow-auto {
  overflow: auto !important;
}
.overflow-hidden {
  overflow: hidden !important;
}
.overflow-x-auto {
  overflow-x: auto !important;
}
.overflow-y-auto {
  overflow-y: auto !important;
}
.overflow-x-hidden {
  overflow-x: hidden !important;
}
.overflow-y-hidden {
  overflow-y: hidden !important;
}
.truncate {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.whitespace-nowrap {
  white-space: nowrap !important;
}
.whitespace-pre-line {
  white-space: pre-line !important;
}
.whitespace-pre-wrap {
  white-space: pre-wrap !important;
}
.break-words {
  overflow-wrap: break-word !important;
}
.break-all {
  word-break: break-all !important;
}
.rounded {
  border-radius: 0.25rem !important;
}
.rounded-2xl {
  border-radius: 1rem !important;
}
.rounded-full {
  border-radius: 9999px !important;
}
.rounded-lg {
  border-radius: 0.5rem !important;
}
.rounded-md {
  border-radius: 0.375rem !important;
}
.rounded-none {
  border-radius: 0px !important;
}
.rounded-sm {
  border-radius: 0.125rem !important;
}
.rounded-ui {
  border-radius: 0.75rem !important;
  border-radius: var(--radius-md) !important;
}
.rounded-ui-full {
  border-radius: 9999px !important;
  border-radius: var(--radius-full) !important;
}
.rounded-ui-lg {
  border-radius: 1rem !important;
  border-radius: var(--radius-lg) !important;
}
.rounded-ui-sm {
  border-radius: 0.5rem !important;
  border-radius: var(--radius-sm) !important;
}
.rounded-xl {
  border-radius: 0.75rem !important;
}
.rounded-t {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}
.rounded-tl-md {
  border-top-left-radius: 0.375rem !important;
}
.rounded-tr-md {
  border-top-right-radius: 0.375rem !important;
}
.\!border-0 {
  border-width: 0px !important;
}
.border {
  border-width: 1px !important;
}
.border-0 {
  border-width: 0px !important;
}
.border-2 {
  border-width: 2px !important;
}
.border-\[3px\] {
  border-width: 3px !important;
}
.border-y-0 {
  border-top-width: 0px !important;
  border-bottom-width: 0px !important;
}
.border-b {
  border-bottom-width: 1px !important;
}
.border-b-2 {
  border-bottom-width: 2px !important;
}
.border-l {
  border-left-width: 1px !important;
}
.border-l-2 {
  border-left-width: 2px !important;
}
.border-r {
  border-right-width: 1px !important;
}
.border-r-0 {
  border-right-width: 0px !important;
}
.border-t {
  border-top-width: 1px !important;
}
.border-dashed {
  border-style: dashed !important;
}
.border-\[\#126b63\] {
  --tw-border-opacity:1 !important;
  border-color: rgb(18 107 99 / 1) !important;
  border-color: rgb(18 107 99 / var(--tw-border-opacity, 1)) !important;
}
.border-\[\#c9e5d9\] {
  --tw-border-opacity:1 !important;
  border-color: rgb(201 229 217 / 1) !important;
  border-color: rgb(201 229 217 / var(--tw-border-opacity, 1)) !important;
}
.border-\[\#d5e1de\] {
  --tw-border-opacity:1 !important;
  border-color: rgb(213 225 222 / 1) !important;
  border-color: rgb(213 225 222 / var(--tw-border-opacity, 1)) !important;
}
.border-\[\#d9e0dc\] {
  --tw-border-opacity:1 !important;
  border-color: rgb(217 224 220 / 1) !important;
  border-color: rgb(217 224 220 / var(--tw-border-opacity, 1)) !important;
}
.border-accent {
  border-color: #126b63 !important;
  border-color: var(--color-accent) !important;
}
.border-accent-subtle {
  border-color: #e2f5f1 !important;
  border-color: var(--color-accent-subtle) !important;
}
.border-border {
  border-color: #d5e1de !important;
  border-color: var(--color-border) !important;
}
.border-border-strong {
  border-color: #aec4c0 !important;
  border-color: var(--color-border-strong) !important;
}
.border-border-subtle {
  border-color: #e8efed !important;
  border-color: var(--color-border-subtle) !important;
}
.border-current {
  border-color: currentColor !important;
}
.border-danger {
  border-color: #a84f4b !important;
  border-color: var(--color-danger) !important;
}
.border-danger-border {
  border-color: #ebc3c0 !important;
  border-color: var(--color-danger-border) !important;
}
.border-gray-400 {
  --tw-border-opacity:1 !important;
  border-color: rgb(156 163 175 / 1) !important;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1)) !important;
}
.border-green-800 {
  --tw-border-opacity:1 !important;
  border-color: rgb(22 101 52 / 1) !important;
  border-color: rgb(22 101 52 / var(--tw-border-opacity, 1)) !important;
}
.border-info-border {
  border-color: #bad9e6 !important;
  border-color: var(--color-info-border) !important;
}
.border-red-200 {
  --tw-border-opacity:1 !important;
  border-color: rgb(254 202 202 / 1) !important;
  border-color: rgb(254 202 202 / var(--tw-border-opacity, 1)) !important;
}
.border-red-600 {
  --tw-border-opacity:1 !important;
  border-color: rgb(220 38 38 / 1) !important;
  border-color: rgb(220 38 38 / var(--tw-border-opacity, 1)) !important;
}
.border-success-border {
  border-color: #b6dac5 !important;
  border-color: var(--color-success-border) !important;
}
.border-surface-1 {
  border-color: #ffffff !important;
  border-color: var(--color-surface-1) !important;
}
.border-teal-600 {
  --tw-border-opacity:1 !important;
  border-color: rgb(13 148 136 / 1) !important;
  border-color: rgb(13 148 136 / var(--tw-border-opacity, 1)) !important;
}
.border-transparent {
  border-color: transparent !important;
}
.border-warning-border {
  border-color: #e8d5a9 !important;
  border-color: var(--color-warning-border) !important;
}
.border-r-transparent {
  border-right-color: transparent !important;
}
.border-t-accent {
  border-top-color: #126b63 !important;
  border-top-color: var(--color-accent) !important;
}
.\!bg-transparent {
  background-color: transparent !important;
}
.bg-\[\#126b63\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(18 107 99 / 1) !important;
  background-color: rgb(18 107 99 / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#17352c\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(23 53 44 / 1) !important;
  background-color: rgb(23 53 44 / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#2d7a64\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(45 122 100 / 1) !important;
  background-color: rgb(45 122 100 / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#e3f4ed\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(227 244 237 / 1) !important;
  background-color: rgb(227 244 237 / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#edf6f2\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(237 246 242 / 1) !important;
  background-color: rgb(237 246 242 / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#f7f5ef\] {
  --tw-bg-opacity:1 !important;
  background-color: rgb(247 245 239 / 1) !important;
  background-color: rgb(247 245 239 / var(--tw-bg-opacity, 1)) !important;
}
.bg-accent {
  background-color: #126b63 !important;
  background-color: var(--color-accent) !important;
}
.bg-accent-subtle {
  background-color: #e2f5f1 !important;
  background-color: var(--color-accent-subtle) !important;
}
.bg-border-strong {
  background-color: #aec4c0 !important;
  background-color: var(--color-border-strong) !important;
}
.bg-canvas {
  background-color: #f4f8f7 !important;
  background-color: var(--color-canvas) !important;
}
.bg-danger {
  background-color: #a84f4b !important;
  background-color: var(--color-danger) !important;
}
.bg-danger-surface {
  background-color: #fff0ef !important;
  background-color: var(--color-danger-surface) !important;
}
.bg-fg {
  background-color: #14211f !important;
  background-color: var(--color-fg) !important;
}
.bg-fg-inverse {
  background-color: #ffffff !important;
  background-color: var(--color-fg-inverse) !important;
}
.bg-fg-subtle {
  background-color: #82928f !important;
  background-color: var(--color-fg-subtle) !important;
}
.bg-green-200 {
  --tw-bg-opacity:1 !important;
  background-color: rgb(187 247 208 / 1) !important;
  background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1)) !important;
}
.bg-green-800 {
  --tw-bg-opacity:1 !important;
  background-color: rgb(22 101 52 / 1) !important;
  background-color: rgb(22 101 52 / var(--tw-bg-opacity, 1)) !important;
}
.bg-info {
  background-color: #246987 !important;
  background-color: var(--color-info) !important;
}
.bg-info-surface {
  background-color: #eaf7fc !important;
  background-color: var(--color-info-surface) !important;
}
.bg-overlay {
  background-color: rgba(11, 27, 25, 0.48) !important;
  background-color: var(--color-overlay) !important;
}
.bg-red-200 {
  --tw-bg-opacity:1 !important;
  background-color: rgb(254 202 202 / 1) !important;
  background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1)) !important;
}
.bg-red-50 {
  --tw-bg-opacity:1 !important;
  background-color: rgb(254 242 242 / 1) !important;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1)) !important;
}
.bg-shell {
  background-color: rgba(249, 252, 251, 0.88) !important;
  background-color: var(--color-shell) !important;
}
.bg-success {
  background-color: #276b4a !important;
  background-color: var(--color-success) !important;
}
.bg-success-surface {
  background-color: #e9f6ef !important;
  background-color: var(--color-success-surface) !important;
}
.bg-surface-1 {
  background-color: #ffffff !important;
  background-color: var(--color-surface-1) !important;
}
.bg-surface-2 {
  background-color: #f7faf9 !important;
  background-color: var(--color-surface-2) !important;
}
.bg-surface-3 {
  background-color: #edf4f2 !important;
  background-color: var(--color-surface-3) !important;
}
.bg-surface-glass {
  background-color: rgba(255, 255, 255, 0.76) !important;
  background-color: var(--color-surface-glass) !important;
}
.bg-teal-600 {
  --tw-bg-opacity:1 !important;
  background-color: rgb(13 148 136 / 1) !important;
  background-color: rgb(13 148 136 / var(--tw-bg-opacity, 1)) !important;
}
.bg-transparent {
  background-color: transparent !important;
}
.bg-warning {
  background-color: #8a5a13 !important;
  background-color: var(--color-warning) !important;
}
.bg-warning-surface {
  background-color: #fff5df !important;
  background-color: var(--color-warning-surface) !important;
}
.bg-white {
  --tw-bg-opacity:1 !important;
  background-color: rgb(255 255 255 / 1) !important;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)) !important;
}
.from-accent-subtle {
  --tw-gradient-from:var(--color-accent-subtle) var(--tw-gradient-from-position) !important;
  --tw-gradient-to:rgb(255 255 255 / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to) !important;
}
.via-surface-1 {
  --tw-gradient-to:rgb(255 255 255 / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops:var(--tw-gradient-from),
    var(--color-surface-1) var(--tw-gradient-via-position),
    var(--tw-gradient-to) !important;
}
.to-surface-2 {
  --tw-gradient-to:var(--color-surface-2) var(--tw-gradient-to-position) !important;
}
.fill-current {
  fill: currentColor !important;
}
.stroke-accent {
  stroke: #126b63 !important;
  stroke: var(--color-accent) !important;
}
.stroke-border-strong {
  stroke: #aec4c0 !important;
  stroke: var(--color-border-strong) !important;
}
.stroke-danger {
  stroke: #a84f4b !important;
  stroke: var(--color-danger) !important;
}
.stroke-fg-subtle {
  stroke: #82928f !important;
  stroke: var(--color-fg-subtle) !important;
}
.stroke-info {
  stroke: #246987 !important;
  stroke: var(--color-info) !important;
}
.stroke-success {
  stroke: #276b4a !important;
  stroke: var(--color-success) !important;
}
.stroke-warning {
  stroke: #8a5a13 !important;
  stroke: var(--color-warning) !important;
}
.object-contain {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}
.object-cover {
  -o-object-fit: cover !important;
     object-fit: cover !important;
}
.p-0 {
  padding: 0px !important;
}
.p-0\.5 {
  padding: 0.125rem !important;
}
.p-1 {
  padding: 0.25rem !important;
  padding: var(--space-1) !important;
}
.p-1\.5 {
  padding: 0.375rem !important;
}
.p-10 {
  padding: 2.5rem !important;
}
.p-2 {
  padding: 0.5rem !important;
  padding: var(--space-2) !important;
}
.p-3 {
  padding: 0.75rem !important;
  padding: var(--space-3) !important;
}
.p-4 {
  padding: 1rem !important;
  padding: var(--space-4) !important;
}
.p-5 {
  padding: 1.25rem !important;
}
.p-6 {
  padding: 1.5rem !important;
  padding: var(--space-6) !important;
}
.p-8 {
  padding: 2rem !important;
  padding: var(--space-8) !important;
}
.px-0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}
.px-1 {
  padding-left: 0.25rem !important;
  padding-left: var(--space-1) !important;
  padding-right: 0.25rem !important;
  padding-right: var(--space-1) !important;
}
.px-1\.5 {
  padding-left: 0.375rem !important;
  padding-right: 0.375rem !important;
}
.px-10 {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}
.px-2 {
  padding-left: 0.5rem !important;
  padding-left: var(--space-2) !important;
  padding-right: 0.5rem !important;
  padding-right: var(--space-2) !important;
}
.px-2\.5 {
  padding-left: 0.625rem !important;
  padding-right: 0.625rem !important;
}
.px-3 {
  padding-left: 0.75rem !important;
  padding-left: var(--space-3) !important;
  padding-right: 0.75rem !important;
  padding-right: var(--space-3) !important;
}
.px-4 {
  padding-left: 1rem !important;
  padding-left: var(--space-4) !important;
  padding-right: 1rem !important;
  padding-right: var(--space-4) !important;
}
.px-5 {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}
.px-6 {
  padding-left: 1.5rem !important;
  padding-left: var(--space-6) !important;
  padding-right: 1.5rem !important;
  padding-right: var(--space-6) !important;
}
.py-0\.5 {
  padding-top: 0.125rem !important;
  padding-bottom: 0.125rem !important;
}
.py-1 {
  padding-top: 0.25rem !important;
  padding-top: var(--space-1) !important;
  padding-bottom: 0.25rem !important;
  padding-bottom: var(--space-1) !important;
}
.py-1\.5 {
  padding-top: 0.375rem !important;
  padding-bottom: 0.375rem !important;
}
.py-10 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
.py-2 {
  padding-top: 0.5rem !important;
  padding-top: var(--space-2) !important;
  padding-bottom: 0.5rem !important;
  padding-bottom: var(--space-2) !important;
}
.py-2\.5 {
  padding-top: 0.625rem !important;
  padding-bottom: 0.625rem !important;
}
.py-20 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}
.py-3 {
  padding-top: 0.75rem !important;
  padding-top: var(--space-3) !important;
  padding-bottom: 0.75rem !important;
  padding-bottom: var(--space-3) !important;
}
.py-4 {
  padding-top: 1rem !important;
  padding-top: var(--space-4) !important;
  padding-bottom: 1rem !important;
  padding-bottom: var(--space-4) !important;
}
.py-5 {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
.py-6 {
  padding-top: 1.5rem !important;
  padding-top: var(--space-6) !important;
  padding-bottom: 1.5rem !important;
  padding-bottom: var(--space-6) !important;
}
.py-8 {
  padding-top: 2rem !important;
  padding-top: var(--space-8) !important;
  padding-bottom: 2rem !important;
  padding-bottom: var(--space-8) !important;
}
.pb-1 {
  padding-bottom: 0.25rem !important;
  padding-bottom: var(--space-1) !important;
}
.pb-2 {
  padding-bottom: 0.5rem !important;
  padding-bottom: var(--space-2) !important;
}
.pb-24 {
  padding-bottom: 6rem !important;
}
.pb-3 {
  padding-bottom: 0.75rem !important;
  padding-bottom: var(--space-3) !important;
}
.pb-4 {
  padding-bottom: 1rem !important;
  padding-bottom: var(--space-4) !important;
}
.pb-5 {
  padding-bottom: 1.25rem !important;
}
.pb-6 {
  padding-bottom: 1.5rem !important;
  padding-bottom: var(--space-6) !important;
}
.pb-px {
  padding-bottom: 1px !important;
}
.pl-10 {
  padding-left: 2.5rem !important;
}
.pl-16 {
  padding-left: 4rem !important;
}
.pl-2 {
  padding-left: 0.5rem !important;
  padding-left: var(--space-2) !important;
}
.pl-5 {
  padding-left: 1.25rem !important;
}
.pl-6 {
  padding-left: 1.5rem !important;
  padding-left: var(--space-6) !important;
}
.pr-1 {
  padding-right: 0.25rem !important;
  padding-right: var(--space-1) !important;
}
.pr-16 {
  padding-right: 4rem !important;
}
.pr-20 {
  padding-right: 5rem !important;
}
.pt-0 {
  padding-top: 0px !important;
}
.pt-1 {
  padding-top: 0.25rem !important;
  padding-top: var(--space-1) !important;
}
.pt-2 {
  padding-top: 0.5rem !important;
  padding-top: var(--space-2) !important;
}
.pt-3 {
  padding-top: 0.75rem !important;
  padding-top: var(--space-3) !important;
}
.pt-4 {
  padding-top: 1rem !important;
  padding-top: var(--space-4) !important;
}
.pt-5 {
  padding-top: 1.25rem !important;
}
.text-left {
  text-align: left !important;
}
.text-center {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}
.text-2xl {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}
.text-3xl {
  font-size: 1.875rem !important;
  line-height: 2.25rem !important;
}
.text-4xl {
  font-size: 2.25rem !important;
  line-height: 2.5rem !important;
}
.text-\[10px\] {
  font-size: 10px !important;
}
.text-\[11px\] {
  font-size: 11px !important;
}
.text-\[9px\] {
  font-size: 9px !important;
}
.text-base {
  font-size: 1rem !important;
  line-height: 1.5rem !important;
}
.text-lg {
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
}
.text-page-title {
  font-size: 2.25rem !important;
  font-size: var(--font-size-page-title) !important;
  line-height: 1.2 !important;
  line-height: var(--line-height-tight) !important;
  letter-spacing: -0.025em !important;
  letter-spacing: var(--tracking-tight) !important;
  font-weight: 600 !important;
  font-weight: var(--font-weight-semibold) !important;
}
.text-sm {
  font-size: 0.875rem !important;
  line-height: 1.25rem !important;
}
.text-xl {
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
}
.text-xs {
  font-size: 0.75rem !important;
  line-height: 1rem !important;
}
.font-black {
  font-weight: 900 !important;
}
.font-bold {
  font-weight: 700 !important;
  font-weight: var(--font-weight-bold) !important;
}
.font-medium {
  font-weight: 500 !important;
  font-weight: var(--font-weight-medium) !important;
}
.font-normal {
  font-weight: 400 !important;
  font-weight: var(--font-weight-regular) !important;
}
.font-semibold {
  font-weight: 600 !important;
  font-weight: var(--font-weight-semibold) !important;
}
.uppercase {
  text-transform: uppercase !important;
}
.capitalize {
  text-transform: capitalize !important;
}
.italic {
  font-style: italic !important;
}
.tabular-nums {
  --tw-numeric-spacing:tabular-nums !important;
  -webkit-font-feature-settings: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction) !important;
  font-feature-settings: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction) !important;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction) !important;
}
.leading-4 {
  line-height: 1rem !important;
}
.leading-5 {
  line-height: 1.25rem !important;
}
.leading-6 {
  line-height: 1.5rem !important;
}
.leading-7 {
  line-height: 1.75rem !important;
}
.leading-8 {
  line-height: 2rem !important;
}
.leading-none {
  line-height: 1 !important;
}
.leading-tight {
  line-height: 1.25 !important;
}
.tracking-tight {
  letter-spacing: -0.025em !important;
}
.tracking-ui-wide {
  letter-spacing: 0.025em !important;
  letter-spacing: var(--tracking-wide) !important;
}
.tracking-wide {
  letter-spacing: 0.025em !important;
}
.tracking-wider {
  letter-spacing: 0.05em !important;
}
.text-\[\#14211f\] {
  --tw-text-opacity:1 !important;
  color: rgb(20 33 31 / 1) !important;
  color: rgb(20 33 31 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#17352c\] {
  --tw-text-opacity:1 !important;
  color: rgb(23 53 44 / 1) !important;
  color: rgb(23 53 44 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#18211f\] {
  --tw-text-opacity:1 !important;
  color: rgb(24 33 31 / 1) !important;
  color: rgb(24 33 31 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#23624f\] {
  --tw-text-opacity:1 !important;
  color: rgb(35 98 79 / 1) !important;
  color: rgb(35 98 79 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#2d7a64\] {
  --tw-text-opacity:1 !important;
  color: rgb(45 122 100 / 1) !important;
  color: rgb(45 122 100 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#3f7a60\] {
  --tw-text-opacity:1 !important;
  color: rgb(63 122 96 / 1) !important;
  color: rgb(63 122 96 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#41504b\] {
  --tw-text-opacity:1 !important;
  color: rgb(65 80 75 / 1) !important;
  color: rgb(65 80 75 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#52615c\] {
  --tw-text-opacity:1 !important;
  color: rgb(82 97 92 / 1) !important;
  color: rgb(82 97 92 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#61706b\] {
  --tw-text-opacity:1 !important;
  color: rgb(97 112 107 / 1) !important;
  color: rgb(97 112 107 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#cfe8de\] {
  --tw-text-opacity:1 !important;
  color: rgb(207 232 222 / 1) !important;
  color: rgb(207 232 222 / var(--tw-text-opacity, 1)) !important;
}
.text-\[\#e7f5f0\] {
  --tw-text-opacity:1 !important;
  color: rgb(231 245 240 / 1) !important;
  color: rgb(231 245 240 / var(--tw-text-opacity, 1)) !important;
}
.text-accent {
  color: #126b63 !important;
  color: var(--color-accent) !important;
}
.text-accent-contrast {
  color: #074d47 !important;
  color: var(--color-accent-contrast) !important;
}
.text-danger {
  color: #a84f4b !important;
  color: var(--color-danger) !important;
}
.text-fg {
  color: #14211f !important;
  color: var(--color-fg) !important;
}
.text-fg-inverse {
  color: #ffffff !important;
  color: var(--color-fg-inverse) !important;
}
.text-fg-muted {
  color: #60736f !important;
  color: var(--color-fg-muted) !important;
}
.text-fg-secondary {
  color: #354a47 !important;
  color: var(--color-fg-secondary) !important;
}
.text-fg-subtle {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.text-gray-600 {
  --tw-text-opacity:1 !important;
  color: rgb(75 85 99 / 1) !important;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1)) !important;
}
.text-gray-700 {
  --tw-text-opacity:1 !important;
  color: rgb(55 65 81 / 1) !important;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1)) !important;
}
.text-gray-800 {
  --tw-text-opacity:1 !important;
  color: rgb(31 41 55 / 1) !important;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1)) !important;
}
.text-green-800 {
  --tw-text-opacity:1 !important;
  color: rgb(22 101 52 / 1) !important;
  color: rgb(22 101 52 / var(--tw-text-opacity, 1)) !important;
}
.text-info {
  color: #246987 !important;
  color: var(--color-info) !important;
}
.text-red-600 {
  --tw-text-opacity:1 !important;
  color: rgb(220 38 38 / 1) !important;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1)) !important;
}
.text-red-700 {
  --tw-text-opacity:1 !important;
  color: rgb(185 28 28 / 1) !important;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1)) !important;
}
.text-success {
  color: #276b4a !important;
  color: var(--color-success) !important;
}
.text-teal-600 {
  --tw-text-opacity:1 !important;
  color: rgb(13 148 136 / 1) !important;
  color: rgb(13 148 136 / var(--tw-text-opacity, 1)) !important;
}
.text-transparent {
  color: transparent !important;
}
.text-warning {
  color: #8a5a13 !important;
  color: var(--color-warning) !important;
}
.text-white {
  --tw-text-opacity:1 !important;
  color: rgb(255 255 255 / 1) !important;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
}
.underline {
  -webkit-text-decoration-line: underline !important;
  text-decoration-line: underline !important;
}
.line-through {
  -webkit-text-decoration-line: line-through !important;
  text-decoration-line: line-through !important;
}
.accent-accent {
  accent-color: #126b63 !important;
  accent-color: var(--color-accent) !important;
}
.opacity-0 {
  opacity: 0 !important;
}
.opacity-100 {
  opacity: 1 !important;
}
.opacity-60 {
  opacity: 0.6 !important;
}
.opacity-70 {
  opacity: 0.7 !important;
}
.opacity-75 {
  opacity: 0.75 !important;
}
.shadow-card {
  --tw-shadow:var(--shadow-card) !important;
  --tw-shadow-colored:var(--shadow-card) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-floating {
  --tw-shadow:var(--shadow-floating) !important;
  --tw-shadow-colored:var(--shadow-floating) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-lg {
  --tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
  --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-md {
  --tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1) !important;
  --tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-none {
  --tw-shadow:0 0 #0000 !important;
  --tw-shadow-colored:0 0 #0000 !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-sm {
  --tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05) !important;
  --tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.shadow-xl {
  --tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1) !important;
  --tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.outline-none {
  outline: 2px solid transparent !important;
  outline-offset: 2px !important;
}
.outline {
  outline-style: solid !important;
}
.ring-1 {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.ring-2 {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.ring-accent {
  --tw-ring-color:var(--color-accent) !important;
}
.ring-focus {
  --tw-ring-color:var(--color-focus) !important;
}
.ring-surface-1 {
  --tw-ring-color:var(--color-surface-1) !important;
}
.ring-offset-2 {
  --tw-ring-offset-width:2px !important;
}
.ring-offset-canvas {
  --tw-ring-offset-color:var(--color-canvas) !important;
}
.blur {
  --tw-blur:blur(8px) !important;
  -webkit-filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
.filter {
  -webkit-filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
.backdrop-blur-sm {
  --tw-backdrop-blur:blur(4px) !important;
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) !important;
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) !important;
}
.backdrop-blur-xl {
  --tw-backdrop-blur:blur(24px) !important;
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) !important;
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) !important;
}
.transition {
  transition-property:
    color,
    background-color,
    border-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    -webkit-text-decoration-color,
    -webkit-filter,
    -webkit-backdrop-filter !important;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    backdrop-filter !important;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    backdrop-filter,
    -webkit-text-decoration-color,
    -webkit-filter,
    -webkit-backdrop-filter !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 150ms !important;
}
.transition-all {
  transition-property: all !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 150ms !important;
}
.transition-colors {
  transition-property:
    color,
    background-color,
    border-color,
    fill,
    stroke,
    -webkit-text-decoration-color !important;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke !important;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    -webkit-text-decoration-color !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 150ms !important;
}
.transition-shadow {
  transition-property: box-shadow !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 150ms !important;
}
.transition-transform {
  transition-property: transform !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  transition-duration: 150ms !important;
}
.duration-200 {
  transition-duration: 200ms !important;
}
.duration-ui {
  transition-duration: 180ms !important;
  transition-duration: var(--motion-ui) !important;
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
}
:root {
  color-scheme: light;
  --color-canvas: #f4f8f7;
  --color-shell: rgba(249, 252, 251, 0.88);
  --color-surface-1: #ffffff;
  --color-surface-2: #f7faf9;
  --color-surface-3: #edf4f2;
  --color-surface-glass: rgba(255, 255, 255, 0.76);
  --color-fg: #14211f;
  --color-fg-secondary: #354a47;
  --color-fg-muted: #60736f;
  --color-fg-subtle: #82928f;
  --color-fg-inverse: #ffffff;
  --color-border: #d5e1de;
  --color-border-strong: #aec4c0;
  --color-border-subtle: #e8efed;
  --color-accent: #126b63;
  --color-accent-hover: #0d574f;
  --color-accent-subtle: #e2f5f1;
  --color-accent-contrast: #074d47;
  --chart-1: #126b63;
  --chart-2: #3c8f86;
  --chart-3: #69b9ae;
  --chart-4: #7d6ba8;
  --chart-5: #c48a52;
  --color-focus: #24a99b;
  --color-overlay: rgba(11, 27, 25, 0.48);
  --color-inverse-muted: rgba(255, 255, 255, 0.12);
  --shadow-card: 0 10px 30px rgba(36, 72, 69, 0.07);
  --shadow-floating: 0 22px 60px rgba(21, 47, 44, 0.18);
  --shadow-shell: 0 18px 48px rgba(31, 70, 67, 0.1);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      
      circle at 10% 4%,
      color-mix(in srgb, var(--color-accent-subtle) 74%, transparent),
      transparent 34rem );
}
.dark {
  color-scheme: dark;
  --color-canvas: #091311;
  --color-shell: rgba(12, 25, 23, 0.9);
  --color-surface-1: #11201e;
  --color-surface-2: #172825;
  --color-surface-3: #203330;
  --color-surface-glass: rgba(17, 32, 30, 0.82);
  --color-fg: #f2faf8;
  --color-fg-secondary: #d1e2de;
  --color-fg-muted: #a4b8b4;
  --color-fg-subtle: #819792;
  --color-fg-inverse: #07110f;
  --color-border: #36504b;
  --color-border-strong: #56726c;
  --color-border-subtle: #273d39;
  --color-accent: #69d8c9;
  --color-accent-hover: #8be6da;
  --color-accent-subtle: #173e39;
  --color-accent-contrast: #cffff8;
  --chart-1: #69d8c9;
  --chart-2: #8be6da;
  --chart-3: #43998f;
  --chart-4: #b9a6e8;
  --chart-5: #e0aa70;
  --color-focus: #7be0d3;
  --color-overlay: rgba(1, 7, 6, 0.76);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 14px 36px rgba(0, 0, 0, 0.25);
  --shadow-floating: 0 26px 72px rgba(0, 0, 0, 0.48);
  --shadow-shell: 0 22px 60px rgba(0, 0, 0, 0.36);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      
      circle at 10% 4%,
      color-mix(in srgb, var(--color-accent-subtle) 74%, transparent),
      transparent 34rem );
}
:root,
[data-color-scheme=light] {
  --color-info: #246987;
  --color-info-surface: #eaf7fc;
  --color-info-border: #bad9e6;
  --color-recurring: #6d28d9;
  --color-success: #276b4a;
  --color-success-surface: #e9f6ef;
  --color-success-border: #b6dac5;
  --color-warning: #8a5a13;
  --color-warning-surface: #fff5df;
  --color-warning-border: #e8d5a9;
  --color-danger: #a84f4b;
  --color-danger-hover: #8f403c;
  --color-danger-surface: #fff0ef;
  --color-danger-border: #ebc3c0;
}
.dark,
[data-color-scheme=dark] {
  --color-info: #a8e4fb;
  --color-info-surface: #102c36;
  --color-info-border: #2c5b6c;
  --color-recurring: #c4b5fd;
  --color-success: #a9e8c5;
  --color-success-surface: #153526;
  --color-success-border: #37644b;
  --color-warning: #ffe2a1;
  --color-warning-surface: #392b12;
  --color-warning-border: #644c23;
  --color-danger: #ffb2ad;
  --color-danger-hover: #ffc9c5;
  --color-danger-surface: #3b201f;
  --color-danger-border: #71413e;
}
[data-theme=family_capital][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #eef3fa;
  --color-shell: rgba(248, 251, 255, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f6f8fc;
  --color-surface-3: #dfe8f4;
  --color-surface-glass: rgba(255, 255, 255, 0.78);
  --color-fg: #151821;
  --color-fg-secondary: #374151;
  --color-fg-muted: #5e6878;
  --color-fg-subtle: #626d7d;
  --color-fg-inverse: #ffffff;
  --color-border: #ced9e8;
  --color-border-strong: #9fb1c7;
  --color-border-subtle: #e3eaf3;
  --color-accent: #4f59cf;
  --color-accent-hover: #3f48b8;
  --color-accent-subtle: #e2e6ff;
  --color-accent-contrast: #343ea7;
  --chart-1: #4f59cf;
  --chart-2: #347fc4;
  --chart-3: #55a4c8;
  --chart-4: #8b6dca;
  --chart-5: #d08b59;
  --color-focus: #4150d0;
  --color-overlay: rgba(15, 23, 42, 0.52);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 12px 32px rgba(43, 59, 106, 0.09);
  --shadow-floating: 0 24px 68px rgba(34, 45, 89, 0.2);
  --shadow-shell: 0 18px 52px rgba(53, 73, 124, 0.12);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(91, 102, 232, 0.17),
      transparent 32rem),
    radial-gradient(
      circle at 88% 8%,
      rgba(102, 167, 232, 0.15),
      transparent 28rem);
}
[data-theme=family_capital][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #111725;
  --color-shell: rgba(20, 28, 44, 0.92);
  --color-surface-1: #1a2232;
  --color-surface-2: #202a3c;
  --color-surface-3: #253047;
  --color-surface-glass: rgba(26, 34, 50, 0.82);
  --color-fg: #f7f9fd;
  --color-fg-secondary: #cbd5e5;
  --color-fg-muted: #a6b2c5;
  --color-fg-subtle: #8795aa;
  --color-fg-inverse: #101525;
  --color-border: #34415a;
  --color-border-strong: #52617b;
  --color-border-subtle: #28344a;
  --color-accent: #8b8ef7;
  --color-accent-hover: #a7a9ff;
  --color-accent-subtle: #292e63;
  --color-accent-contrast: #d9daff;
  --chart-1: #8b8ef7;
  --chart-2: #5e9ee5;
  --chart-3: #72c4d9;
  --chart-4: #b99af4;
  --chart-5: #e4a878;
  --color-focus: #a6a8ff;
  --color-overlay: rgba(3, 7, 18, 0.78);
  --color-inverse-muted: rgba(255, 255, 255, 0.11);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.28);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.5);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.4);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(127, 130, 244, 0.2),
      transparent 32rem),
    radial-gradient(
      circle at 88% 8%,
      rgba(94, 158, 229, 0.16),
      transparent 28rem);
}
[data-theme=evergreen][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f4f8f7;
  --color-shell: rgba(249, 252, 251, 0.88);
  --color-surface-1: #ffffff;
  --color-surface-2: #f7faf9;
  --color-surface-3: #edf4f2;
  --color-surface-glass: rgba(255, 255, 255, 0.76);
  --color-fg: #14211f;
  --color-fg-secondary: #354a47;
  --color-fg-muted: #60736f;
  --color-fg-subtle: #61746f;
  --color-fg-inverse: #ffffff;
  --color-border: #d5e1de;
  --color-border-strong: #aec4c0;
  --color-border-subtle: #e8efed;
  --color-accent: #126b63;
  --color-accent-hover: #0d574f;
  --color-accent-subtle: #e2f5f1;
  --color-accent-contrast: #074d47;
  --chart-1: #126b63;
  --chart-2: #3c8f86;
  --chart-3: #69b9ae;
  --chart-4: #6b78a8;
  --chart-5: #bc874f;
  --color-focus: #167d72;
  --color-overlay: rgba(11, 27, 25, 0.48);
  --color-inverse-muted: rgba(255, 255, 255, 0.12);
  --shadow-card: 0 10px 30px rgba(36, 72, 69, 0.07);
  --shadow-floating: 0 22px 60px rgba(21, 47, 44, 0.18);
  --shadow-shell: 0 18px 48px rgba(31, 70, 67, 0.1);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 4%,
      rgba(105, 185, 174, 0.2),
      transparent 34rem);
}
[data-theme=evergreen][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #091311;
  --color-shell: rgba(12, 25, 23, 0.9);
  --color-surface-1: #11201e;
  --color-surface-2: #172825;
  --color-surface-3: #203330;
  --color-surface-glass: rgba(17, 32, 30, 0.82);
  --color-fg: #f2faf8;
  --color-fg-secondary: #d1e2de;
  --color-fg-muted: #a4b8b4;
  --color-fg-subtle: #819792;
  --color-fg-inverse: #07110f;
  --color-border: #36504b;
  --color-border-strong: #56726c;
  --color-border-subtle: #273d39;
  --color-accent: #69d8c9;
  --color-accent-hover: #8be6da;
  --color-accent-subtle: #173e39;
  --color-accent-contrast: #cffff8;
  --chart-1: #69d8c9;
  --chart-2: #8be6da;
  --chart-3: #43998f;
  --chart-4: #aab9ec;
  --chart-5: #e0aa70;
  --color-focus: #7be0d3;
  --color-overlay: rgba(1, 7, 6, 0.76);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 14px 36px rgba(0, 0, 0, 0.25);
  --shadow-floating: 0 26px 72px rgba(0, 0, 0, 0.48);
  --shadow-shell: 0 22px 60px rgba(0, 0, 0, 0.36);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 4%,
      rgba(46, 115, 106, 0.28),
      transparent 34rem);
}
[data-theme=cobalt][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f3f7fc;
  --color-shell: rgba(248, 251, 255, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f6f9fd;
  --color-surface-3: #e5eef8;
  --color-surface-glass: rgba(255, 255, 255, 0.78);
  --color-fg: #142334;
  --color-fg-secondary: #354a61;
  --color-fg-muted: #5b7087;
  --color-fg-subtle: #5d7288;
  --color-fg-inverse: #ffffff;
  --color-border: #cfdeed;
  --color-border-strong: #9db6cf;
  --color-border-subtle: #e5edf6;
  --color-accent: #245e9d;
  --color-accent-hover: #1a4b82;
  --color-accent-subtle: #dfeefb;
  --color-accent-contrast: #174c7f;
  --chart-1: #245e9d;
  --chart-2: #3f78b7;
  --chart-3: #62a0cc;
  --chart-4: #6474b9;
  --chart-5: #bd8053;
  --color-focus: #3177bc;
  --color-overlay: rgba(8, 29, 51, 0.54);
  --color-inverse-muted: rgba(255, 255, 255, 0.13);
  --shadow-card: 0 11px 32px rgba(31, 73, 116, 0.09);
  --shadow-floating: 0 24px 68px rgba(17, 51, 87, 0.21);
  --shadow-shell: 0 18px 52px rgba(40, 85, 130, 0.12);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 12% 0%,
      rgba(108, 155, 208, 0.22),
      transparent 34rem),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.22),
      transparent 48%);
}
[data-theme=cobalt][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #111d2c;
  --color-shell: rgba(21, 36, 54, 0.92);
  --color-surface-1: #192a40;
  --color-surface-2: #1e324b;
  --color-surface-3: #263d58;
  --color-surface-glass: rgba(25, 42, 64, 0.82);
  --color-fg: #f5f9ff;
  --color-fg-secondary: #ccdaea;
  --color-fg-muted: #a4b7ca;
  --color-fg-subtle: #899fb5;
  --color-fg-inverse: #091521;
  --color-border: #35516d;
  --color-border-strong: #52718f;
  --color-border-subtle: #29435d;
  --color-accent: #71b4f2;
  --color-accent-hover: #94c9fa;
  --color-accent-subtle: #193b5e;
  --color-accent-contrast: #c5e3ff;
  --chart-1: #71b4f2;
  --chart-2: #4c8fd0;
  --chart-3: #7ac8dc;
  --chart-4: #a5b0f2;
  --chart-5: #e6ac7b;
  --color-focus: #8ec7fa;
  --color-overlay: rgba(2, 9, 18, 0.78);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.28);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.5);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.4);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 12% 0%,
      rgba(63, 120, 183, 0.3),
      transparent 34rem);
}
[data-theme=iris][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f7f3fb;
  --color-shell: rgba(253, 250, 255, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #fbf8fd;
  --color-surface-3: #f1eaf8;
  --color-surface-glass: rgba(255, 255, 255, 0.78);
  --color-fg: #241d2e;
  --color-fg-secondary: #4b4058;
  --color-fg-muted: #6e637a;
  --color-fg-subtle: #746980;
  --color-fg-inverse: #ffffff;
  --color-border: #e3d8ed;
  --color-border-strong: #bea9d1;
  --color-border-subtle: #efe7f5;
  --color-accent: #6842b8;
  --color-accent-hover: #55339d;
  --color-accent-subtle: #eee4fb;
  --color-accent-contrast: #59359f;
  --chart-1: #6842b8;
  --chart-2: #8d5fc4;
  --chart-3: #9a78d0;
  --chart-4: #5e8c72;
  --chart-5: #c38361;
  --color-focus: #7951c9;
  --color-overlay: rgba(31, 18, 45, 0.5);
  --color-inverse-muted: rgba(255, 255, 255, 0.13);
  --shadow-card: 0 12px 32px rgba(77, 49, 103, 0.09);
  --shadow-floating: 0 24px 68px rgba(55, 32, 76, 0.21);
  --shadow-shell: 0 18px 52px rgba(83, 56, 108, 0.13);
  --radius-sm: 0.75rem;
  --radius-md: 1rem;
  --radius-lg: 1.375rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 2%,
      rgba(154, 120, 208, 0.22),
      transparent 32rem),
    radial-gradient(
      circle at 92% 10%,
      rgba(116, 158, 117, 0.12),
      transparent 26rem);
}
[data-theme=iris][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #17111f;
  --color-shell: rgba(31, 23, 42, 0.92);
  --color-surface-1: #241a31;
  --color-surface-2: #2b203a;
  --color-surface-3: #352747;
  --color-surface-glass: rgba(36, 26, 49, 0.82);
  --color-fg: #fbf7ff;
  --color-fg-secondary: #ddcfe9;
  --color-fg-muted: #b8a8c6;
  --color-fg-subtle: #9886a8;
  --color-fg-inverse: #190f24;
  --color-border: #49375d;
  --color-border-strong: #6b547f;
  --color-border-subtle: #392b4a;
  --color-accent: #b99af4;
  --color-accent-hover: #ceb6fa;
  --color-accent-subtle: #3b2753;
  --color-accent-contrast: #eadcff;
  --chart-1: #b99af4;
  --chart-2: #9670d4;
  --chart-3: #d6a4ed;
  --chart-4: #8bc19b;
  --chart-5: #e7a786;
  --color-focus: #cfb6ff;
  --color-overlay: rgba(6, 3, 10, 0.78);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 16px 40px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 30px 78px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 24px 64px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.75rem;
  --radius-md: 1rem;
  --radius-lg: 1.375rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 2%,
      rgba(118, 83, 179, 0.3),
      transparent 32rem),
    radial-gradient(
      circle at 92% 10%,
      rgba(78, 116, 81, 0.14),
      transparent 26rem);
}
[data-theme=pulse_atlas][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #fff8f2;
  --color-shell: rgba(255, 252, 248, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #fbf1ea;
  --color-surface-3: #f7e8dd;
  --color-surface-glass: rgba(255, 255, 255, 0.78);
  --color-fg: #102b4f;
  --color-fg-secondary: #3d4f66;
  --color-fg-muted: #61707f;
  --color-fg-subtle: #627080;
  --color-fg-inverse: #ffffff;
  --color-border: #e9d9d0;
  --color-border-strong: #cbb7ac;
  --color-border-subtle: #f2e8e1;
  --color-accent: #173b78;
  --color-accent-hover: #102d5e;
  --color-accent-subtle: #e5ecf6;
  --color-accent-contrast: #173b78;
  --chart-1: #173b78;
  --chart-2: #3f6d9f;
  --chart-3: #8db9d8;
  --chart-4: #d66f52;
  --chart-5: #dca45e;
  --color-focus: #28589d;
  --color-overlay: rgba(9, 25, 49, 0.54);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 12px 34px rgba(52, 49, 64, 0.09);
  --shadow-floating: 0 26px 70px rgba(25, 39, 65, 0.21);
  --shadow-shell: 0 19px 54px rgba(38, 54, 79, 0.13);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(240, 140, 106, 0.2),
      transparent 31rem),
    radial-gradient(
      circle at 88% 4%,
      rgba(141, 185, 216, 0.2),
      transparent 28rem);
}
[data-theme=pulse_atlas][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #111f3b;
  --color-shell: rgba(21, 37, 68, 0.92);
  --color-surface-1: #182a4d;
  --color-surface-2: #1d3156;
  --color-surface-3: #20375f;
  --color-surface-glass: rgba(24, 42, 77, 0.82);
  --color-fg: #f6f2ee;
  --color-fg-secondary: #d9deea;
  --color-fg-muted: #a9b9d1;
  --color-fg-subtle: #869abb;
  --color-fg-inverse: #24120c;
  --color-border: #2c4772;
  --color-border-strong: #4c6790;
  --color-border-subtle: #233c65;
  --color-accent: #f19170;
  --color-accent-hover: #f6b096;
  --color-accent-subtle: #4b2d2a;
  --color-accent-contrast: #ffd5c7;
  --chart-1: #f19170;
  --chart-2: #f6b59c;
  --chart-3: #91bdda;
  --chart-4: #7295d1;
  --chart-5: #e3c06e;
  --color-focus: #f5a48a;
  --color-overlay: rgba(2, 7, 18, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 16px 40px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 30px 80px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 24px 66px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(241, 145, 112, 0.22),
      transparent 31rem),
    radial-gradient(
      circle at 88% 4%,
      rgba(80, 132, 183, 0.2),
      transparent 28rem);
}
[data-theme=amber_protocol][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #fbf6ed;
  --color-shell: rgba(255, 252, 246, 0.9);
  --color-surface-1: #fffcf6;
  --color-surface-2: #f9f0e2;
  --color-surface-3: #f4e8d4;
  --color-surface-glass: rgba(255, 252, 246, 0.8);
  --color-fg: #35251f;
  --color-fg-secondary: #57483f;
  --color-fg-muted: #756457;
  --color-fg-subtle: #79685b;
  --color-fg-inverse: #ffffff;
  --color-border: #e6d7c4;
  --color-border-strong: #c6ad92;
  --color-border-subtle: #f0e5d5;
  --color-accent: #865322;
  --color-accent-hover: #6c4018;
  --color-accent-subtle: #f4e3c7;
  --color-accent-contrast: #704313;
  --chart-1: #865322;
  --chart-2: #b66837;
  --chart-3: #c49a4c;
  --chart-4: #718653;
  --chart-5: #8c6aa1;
  --color-focus: #986126;
  --color-overlay: rgba(48, 28, 17, 0.52);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 11px 32px rgba(86, 59, 36, 0.09);
  --shadow-floating: 0 24px 68px rgba(62, 39, 22, 0.2);
  --shadow-shell: 0 18px 52px rgba(91, 61, 35, 0.12);
  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 0.875rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 3%,
      rgba(196, 154, 76, 0.2),
      transparent 32rem),
    radial-gradient(
      circle at 90% 6%,
      rgba(198, 106, 60, 0.14),
      transparent 27rem);
}
[data-theme=amber_protocol][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #2a1510;
  --color-shell: rgba(52, 28, 21, 0.92);
  --color-surface-1: #3a2018;
  --color-surface-2: #42251a;
  --color-surface-3: #4a2a1d;
  --color-surface-glass: rgba(58, 32, 24, 0.84);
  --color-fg: #fff4e8;
  --color-fg-secondary: #ead6c5;
  --color-fg-muted: #c9a992;
  --color-fg-subtle: #ab8e7c;
  --color-fg-inverse: #25150c;
  --color-border: #5b3628;
  --color-border-strong: #7c543f;
  --color-border-subtle: #4b2c22;
  --color-accent: #d7a84d;
  --color-accent-hover: #e8bf6c;
  --color-accent-subtle: #513918;
  --color-accent-contrast: #ffe1a5;
  --chart-1: #d7a84d;
  --chart-2: #e27645;
  --chart-3: #91a96b;
  --chart-4: #c58fc9;
  --chart-5: #e4c58b;
  --color-focus: #e8bd69;
  --color-overlay: rgba(12, 4, 2, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 0.875rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 3%,
      rgba(215, 168, 77, 0.18),
      transparent 32rem),
    radial-gradient(
      circle at 90% 6%,
      rgba(226, 118, 69, 0.16),
      transparent 27rem);
}
[data-theme=night_bloom][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f3f6f8;
  --color-shell: rgba(249, 251, 252, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f7f9fb;
  --color-surface-3: #e8eef3;
  --color-surface-glass: rgba(255, 255, 255, 0.78);
  --color-fg: #22303a;
  --color-fg-secondary: #445560;
  --color-fg-muted: #5f717d;
  --color-fg-subtle: #60737f;
  --color-fg-inverse: #ffffff;
  --color-border: #d8e0e6;
  --color-border-strong: #adbcc7;
  --color-border-subtle: #e8edf1;
  --color-accent: #3e688b;
  --color-accent-hover: #315675;
  --color-accent-subtle: #dde7ef;
  --color-accent-contrast: #315a7c;
  --chart-1: #3e688b;
  --chart-2: #668da9;
  --chart-3: #789ab6;
  --chart-4: #c86449;
  --chart-5: #7f819d;
  --color-focus: #4b789d;
  --color-overlay: rgba(19, 30, 40, 0.54);
  --color-inverse-muted: rgba(255, 255, 255, 0.13);
  --shadow-card: 0 10px 30px rgba(55, 70, 82, 0.08);
  --shadow-floating: 0 22px 64px rgba(34, 47, 58, 0.2);
  --shadow-shell: 0 17px 50px rgba(52, 68, 81, 0.11);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 2%,
      rgba(120, 154, 182, 0.2),
      transparent 32rem),
    radial-gradient(
      circle at 90% 8%,
      rgba(216, 116, 88, 0.12),
      transparent 26rem);
}
[data-theme=night_bloom][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #141b24;
  --color-shell: rgba(24, 33, 43, 0.92);
  --color-surface-1: #1d2733;
  --color-surface-2: #222e3b;
  --color-surface-3: #283442;
  --color-surface-glass: rgba(29, 39, 51, 0.84);
  --color-fg: #f5f7fa;
  --color-fg-secondary: #d4dde5;
  --color-fg-muted: #a5b5c3;
  --color-fg-subtle: #8496a5;
  --color-fg-inverse: #101820;
  --color-border: #344353;
  --color-border-strong: #526476;
  --color-border-subtle: #2a3745;
  --color-accent: #88a8c0;
  --color-accent-hover: #a2bed2;
  --color-accent-subtle: #263e52;
  --color-accent-contrast: #c6e0f2;
  --chart-1: #88a8c0;
  --chart-2: #577e9f;
  --chart-3: #72afba;
  --chart-4: #f08061;
  --chart-5: #b09ac7;
  --color-focus: #a0c1d8;
  --color-overlay: rgba(3, 7, 12, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 10% 2%,
      rgba(87, 126, 159, 0.23),
      transparent 32rem),
    radial-gradient(
      circle at 90% 8%,
      rgba(240, 128, 97, 0.13),
      transparent 26rem);
}
[data-theme=flux_metrics][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f7f6f8;
  --color-shell: rgba(252, 251, 253, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f8f8fa;
  --color-surface-3: #eeeff3;
  --color-surface-glass: rgba(255, 255, 255, 0.8);
  --color-fg: #241f2b;
  --color-fg-secondary: #4a4354;
  --color-fg-muted: #6f6779;
  --color-fg-subtle: #746d7e;
  --color-fg-inverse: #ffffff;
  --color-border: #e3dfe7;
  --color-border-strong: #bdb5c7;
  --color-border-subtle: #eeeaf1;
  --color-accent: #6344cd;
  --color-accent-hover: #5032b8;
  --color-accent-subtle: #ebe6ff;
  --color-accent-contrast: #5333bd;
  --chart-1: #6344cd;
  --chart-2: #8e6de5;
  --chart-3: #d44767;
  --chart-4: #d85b35;
  --chart-5: #4894a4;
  --color-focus: #7656db;
  --color-overlay: rgba(27, 21, 36, 0.54);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 12px 34px rgba(70, 55, 88, 0.09);
  --shadow-floating: 0 26px 72px rgba(46, 32, 65, 0.22);
  --shadow-shell: 0 20px 56px rgba(71, 55, 91, 0.13);
  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 0.875rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 9% 1%,
      rgba(114, 87, 232, 0.2),
      transparent 31rem),
    radial-gradient(
      circle at 91% 7%,
      rgba(238, 106, 67, 0.13),
      transparent 27rem);
}
[data-theme=flux_metrics][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #0c0d13;
  --color-shell: rgba(18, 19, 27, 0.93);
  --color-surface-1: #15161e;
  --color-surface-2: #191b24;
  --color-surface-3: #1e2029;
  --color-surface-glass: rgba(21, 22, 30, 0.86);
  --color-fg: #fafafc;
  --color-fg-secondary: #d5d5dc;
  --color-fg-muted: #a5a5b1;
  --color-fg-subtle: #83838f;
  --color-fg-inverse: #111018;
  --color-border: #292b35;
  --color-border-strong: #454753;
  --color-border-subtle: #22242d;
  --color-accent: #9b86ff;
  --color-accent-hover: #b4a4ff;
  --color-accent-subtle: #30265d;
  --color-accent-contrast: #e0d9ff;
  --chart-1: #9b86ff;
  --chart-2: #c19bff;
  --chart-3: #e2647f;
  --chart-4: #f27b57;
  --chart-5: #65c2cf;
  --color-focus: #b5a6ff;
  --color-overlay: rgba(0, 0, 4, 0.82);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 16px 40px rgba(0, 0, 0, 0.34);
  --shadow-floating: 0 30px 82px rgba(0, 0, 0, 0.58);
  --shadow-shell: 0 24px 68px rgba(0, 0, 0, 0.46);
  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 0.875rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 9% 1%,
      rgba(133, 104, 242, 0.24),
      transparent 31rem),
    radial-gradient(
      circle at 91% 7%,
      rgba(240, 108, 67, 0.14),
      transparent 27rem);
}
[data-theme=three_steps][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f7f9fc;
  --color-shell: rgba(251, 253, 255, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f8fafc;
  --color-surface-3: #edf3f9;
  --color-surface-glass: rgba(255, 255, 255, 0.8);
  --color-fg: #111923;
  --color-fg-secondary: #394655;
  --color-fg-muted: #637181;
  --color-fg-subtle: #657383;
  --color-fg-inverse: #ffffff;
  --color-border: #dae3ec;
  --color-border-strong: #aabccc;
  --color-border-subtle: #e9eef4;
  --color-accent: #326fb8;
  --color-accent-hover: #285d9d;
  --color-accent-subtle: #e2effb;
  --color-accent-contrast: #245c9c;
  --chart-1: #326fb8;
  --chart-2: #5d94cc;
  --chart-3: #8db8e3;
  --chart-4: #4a9b8a;
  --chart-5: #c37b55;
  --color-focus: #3d7ec5;
  --color-overlay: rgba(11, 25, 39, 0.52);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 10px 30px rgba(45, 74, 104, 0.08);
  --shadow-floating: 0 22px 64px rgba(29, 53, 78, 0.2);
  --shadow-shell: 0 17px 50px rgba(47, 78, 109, 0.11);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    linear-gradient(
      135deg,
      rgba(50, 111, 184, 0.12),
      transparent 35%),
    radial-gradient(
      circle at 90% 6%,
      rgba(141, 184, 227, 0.18),
      transparent 28rem);
}
[data-theme=three_steps][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #0e2032;
  --color-shell: rgba(17, 39, 60, 0.92);
  --color-surface-1: #142b42;
  --color-surface-2: #17334e;
  --color-surface-3: #183a58;
  --color-surface-glass: rgba(20, 43, 66, 0.84);
  --color-fg: #f7fafd;
  --color-fg-secondary: #d1deea;
  --color-fg-muted: #a4bbce;
  --color-fg-subtle: #809cb3;
  --color-fg-inverse: #0d1b27;
  --color-border: #294a65;
  --color-border-strong: #486985;
  --color-border-subtle: #203e58;
  --color-accent: #6fb1f0;
  --color-accent-hover: #91c5f5;
  --color-accent-subtle: #1b476d;
  --color-accent-contrast: #cbe8ff;
  --chart-1: #6fb1f0;
  --chart-2: #4f8cc6;
  --chart-3: #87c7d4;
  --chart-4: #80c3ac;
  --chart-5: #e3a17d;
  --color-focus: #8fc8fb;
  --color-overlay: rgba(2, 8, 14, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --theme-atmosphere:
    linear-gradient(
      135deg,
      rgba(61, 115, 159, 0.2),
      transparent 35%),
    radial-gradient(
      circle at 90% 6%,
      rgba(111, 177, 240, 0.15),
      transparent 28rem);
}
[data-theme=lavender][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f7f3ff;
  --color-shell: rgba(252, 249, 255, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #faf7ff;
  --color-surface-3: #efe8fa;
  --color-surface-glass: rgba(255, 255, 255, 0.8);
  --color-fg: #2c2440;
  --color-fg-secondary: #514565;
  --color-fg-muted: #706481;
  --color-fg-subtle: #756987;
  --color-fg-inverse: #ffffff;
  --color-border: #e5ddf1;
  --color-border-strong: #c0b0d4;
  --color-border-subtle: #f0eaf7;
  --color-accent: #7458c8;
  --color-accent-hover: #5f45ae;
  --color-accent-subtle: #eee6ff;
  --color-accent-contrast: #6043b2;
  --chart-1: #7458c8;
  --chart-2: #9a70d9;
  --chart-3: #b681f0;
  --chart-4: #5f9582;
  --chart-5: #c77c66;
  --color-focus: #8568d5;
  --color-overlay: rgba(31, 21, 49, 0.52);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 12px 34px rgba(77, 58, 105, 0.09);
  --shadow-floating: 0 26px 72px rgba(52, 37, 75, 0.21);
  --shadow-shell: 0 20px 56px rgba(81, 61, 111, 0.13);
  --radius-sm: 0.875rem;
  --radius-md: 1.125rem;
  --radius-lg: 1.5rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(182, 129, 240, 0.2),
      transparent 32rem),
    radial-gradient(
      circle at 92% 9%,
      rgba(116, 88, 200, 0.12),
      transparent 27rem);
}
[data-theme=lavender][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #171225;
  --color-shell: rgba(29, 23, 45, 0.92);
  --color-surface-1: #211a32;
  --color-surface-2: #271e3a;
  --color-surface-3: #2b2140;
  --color-surface-glass: rgba(33, 26, 50, 0.84);
  --color-fg: #fbf8ff;
  --color-fg-secondary: #ded5e9;
  --color-fg-muted: #b5aac3;
  --color-fg-subtle: #9386a3;
  --color-fg-inverse: #190f25;
  --color-border: #3a2e52;
  --color-border-strong: #5b4974;
  --color-border-subtle: #302544;
  --color-accent: #b69af5;
  --color-accent-hover: #cdb9fa;
  --color-accent-subtle: #3c2b62;
  --color-accent-contrast: #eadfff;
  --chart-1: #b69af5;
  --chart-2: #d58df0;
  --chart-3: #9674d9;
  --chart-4: #8bc6b2;
  --chart-5: #e5a08c;
  --color-focus: #cdb7ff;
  --color-overlay: rgba(5, 2, 10, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 16px 40px rgba(0, 0, 0, 0.32);
  --shadow-floating: 0 30px 80px rgba(0, 0, 0, 0.54);
  --shadow-shell: 0 24px 66px rgba(0, 0, 0, 0.44);
  --radius-sm: 0.875rem;
  --radius-md: 1.125rem;
  --radius-lg: 1.5rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 8% 2%,
      rgba(169, 135, 240, 0.22),
      transparent 32rem),
    radial-gradient(
      circle at 92% 9%,
      rgba(98, 68, 150, 0.16),
      transparent 27rem);
}
[data-theme=weekscape][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f4f6f4;
  --color-shell: rgba(250, 252, 250, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f8faf8;
  --color-surface-3: #e8efea;
  --color-surface-glass: rgba(255, 255, 255, 0.8);
  --color-fg: #17221f;
  --color-fg-secondary: #3d4e49;
  --color-fg-muted: #63726d;
  --color-fg-subtle: #65746f;
  --color-fg-inverse: #ffffff;
  --color-border: #d9e2dd;
  --color-border-strong: #afc0b8;
  --color-border-subtle: #e8eeeb;
  --color-accent: #3e7d6c;
  --color-accent-hover: #326655;
  --color-accent-subtle: #dfeee8;
  --color-accent-contrast: #2d6657;
  --chart-1: #3e7d6c;
  --chart-2: #6ca1ba;
  --chart-3: #8fb2bc;
  --chart-4: #8c792b;
  --chart-5: #a56d78;
  --color-focus: #4b8d7a;
  --color-overlay: rgba(15, 32, 27, 0.52);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 10px 30px rgba(48, 72, 64, 0.08);
  --shadow-floating: 0 22px 64px rgba(29, 52, 44, 0.2);
  --shadow-shell: 0 17px 50px rgba(49, 76, 67, 0.11);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 9% 3%,
      rgba(108, 161, 186, 0.19),
      transparent 32rem),
    radial-gradient(
      circle at 90% 6%,
      rgba(213, 189, 82, 0.12),
      transparent 27rem);
}
[data-theme=weekscape][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #12211e;
  --color-shell: rgba(23, 40, 36, 0.92);
  --color-surface-1: #1b2d29;
  --color-surface-2: #20342f;
  --color-surface-3: #243a35;
  --color-surface-glass: rgba(27, 45, 41, 0.84);
  --color-fg: #f6faf8;
  --color-fg-secondary: #d3dfdb;
  --color-fg-muted: #a7b8b2;
  --color-fg-subtle: #859c94;
  --color-fg-inverse: #0d1a17;
  --color-border: #314941;
  --color-border-strong: #50695f;
  --color-border-subtle: #273e37;
  --color-accent: #75b09a;
  --color-accent-hover: #94c5b3;
  --color-accent-subtle: #21483c;
  --color-accent-contrast: #c6eadc;
  --chart-1: #75b09a;
  --chart-2: #79afc8;
  --chart-3: #9dc6d0;
  --chart-4: #dccb63;
  --chart-5: #d29aa5;
  --color-focus: #91c8b4;
  --color-overlay: rgba(2, 9, 7, 0.8);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.3);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.52);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.42);
  --radius-sm: 0.625rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.125rem;
  --theme-atmosphere:
    radial-gradient(
      circle at 9% 3%,
      rgba(41, 79, 92, 0.3),
      transparent 32rem),
    radial-gradient(
      circle at 90% 6%,
      rgba(220, 203, 99, 0.1),
      transparent 27rem);
}
[data-theme=record_flow][data-color-scheme=light] {
  color-scheme: light;
  --color-canvas: #f1f3f6;
  --color-shell: rgba(248, 249, 251, 0.9);
  --color-surface-1: #ffffff;
  --color-surface-2: #f7f8fa;
  --color-surface-3: #e7eaf0;
  --color-surface-glass: rgba(255, 255, 255, 0.82);
  --color-fg: #242832;
  --color-fg-secondary: #4b5260;
  --color-fg-muted: #65707e;
  --color-fg-subtle: #66707f;
  --color-fg-inverse: #ffffff;
  --color-border: #d8dde5;
  --color-border-strong: #adb5c1;
  --color-border-subtle: #e8ebef;
  --color-accent: #282c34;
  --color-accent-hover: #171a20;
  --color-accent-subtle: #e8e5f8;
  --color-accent-contrast: #554b96;
  --chart-1: #282c34;
  --chart-2: #5a6170;
  --chart-3: #6d60ba;
  --chart-4: #4e8790;
  --chart-5: #ad7458;
  --color-focus: #5c50a6;
  --color-overlay: rgba(18, 21, 27, 0.56);
  --color-inverse-muted: rgba(255, 255, 255, 0.14);
  --shadow-card: 0 9px 28px rgba(43, 48, 58, 0.08);
  --shadow-floating: 0 21px 60px rgba(27, 31, 38, 0.2);
  --shadow-shell: 0 16px 48px rgba(45, 50, 61, 0.11);
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --theme-atmosphere:
    linear-gradient(
      140deg,
      rgba(154, 141, 235, 0.16),
      transparent 32%),
    radial-gradient(
      circle at 90% 4%,
      rgba(40, 44, 52, 0.08),
      transparent 26rem);
}
[data-theme=record_flow][data-color-scheme=dark] {
  color-scheme: dark;
  --color-canvas: #17191f;
  --color-shell: rgba(28, 30, 37, 0.93);
  --color-surface-1: #20232b;
  --color-surface-2: #252831;
  --color-surface-3: #292d37;
  --color-surface-glass: rgba(32, 35, 43, 0.86);
  --color-fg: #f7f8fa;
  --color-fg-secondary: #d7dae0;
  --color-fg-muted: #a8aeb8;
  --color-fg-subtle: #88909c;
  --color-fg-inverse: #17191f;
  --color-border: #343945;
  --color-border-strong: #505763;
  --color-border-subtle: #2b303a;
  --color-accent: #f4f5f7;
  --color-accent-hover: #ffffff;
  --color-accent-subtle: #343341;
  --color-accent-contrast: #dcd7ff;
  --chart-1: #f4f5f7;
  --chart-2: #a899f2;
  --chart-3: #7d83a8;
  --chart-4: #72b4bb;
  --chart-5: #dfa387;
  --color-focus: #b7aaff;
  --color-overlay: rgba(1, 2, 4, 0.82);
  --color-inverse-muted: rgba(255, 255, 255, 0.1);
  --shadow-card: 0 15px 38px rgba(0, 0, 0, 0.32);
  --shadow-floating: 0 28px 76px rgba(0, 0, 0, 0.54);
  --shadow-shell: 0 22px 62px rgba(0, 0, 0, 0.44);
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --theme-atmosphere:
    linear-gradient(
      140deg,
      rgba(168, 153, 242, 0.16),
      transparent 32%),
    radial-gradient(
      circle at 90% 4%,
      rgba(244, 245, 247, 0.06),
      transparent 26rem);
}
.famlib-book-cover {
  position: relative;
  width: var(--book-cover-width);
  height: var(--book-cover-height);
  min-width: 0;
  aspect-ratio: 2/3;
  container-type: inline-size;
  perspective: 1500px;
  transform-style: preserve-3d;
  transition: transform 0.3s ease;
}
.famlib-book-cover:hover {
  transform: rotateY(-5deg);
}
.famlib-book-cover__front {
  position: absolute;
  inset: 0;
  isolation: isolate;
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
  gap: clamp(6px, 6cqi, 18px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.38);
  border-radius: 7px 12px 12px 7px;
  background: var(--book-cover-bg);
  background-size:
    auto,
    auto,
    18px 18px,
    auto;
  box-shadow:
    0 12px 28px rgba(24, 33, 31, 0.18),
    inset 9px 0 18px rgba(255, 255, 255, 0.22),
    inset -12px 0 24px rgba(24, 33, 31, 0.1);
  color: var(--book-cover-ink);
  padding: clamp(8px, 9cqi, 22px);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
.famlib-book-cover__front::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(
      105deg,
      rgba(255, 255, 255, 0.28) 0%,
      transparent 24%,
      transparent 68%,
      rgba(255, 255, 255, 0.16) 100%);
  content: "";
}
.famlib-book-cover__spine {
  position: absolute;
  width: 12%;
  height: 100%;
  border-radius: 7px 0 0 7px;
  background: var(--book-cover-spine);
  box-shadow: inset -5px 0 12px rgba(0, 0, 0, 0.18);
  transform: translateZ(-12px) translateX(-16%);
}
.famlib-book-cover__compact {
  display: none;
}
.famlib-book-cover__compact-icon {
  width: clamp(24px, 48cqi, 38px);
  height: clamp(24px, 48cqi, 38px);
  color: var(--book-cover-accent);
  -webkit-filter: drop-shadow(0 1px 1px rgba(255, 255, 255, 0.2));
  filter: drop-shadow(0 1px 1px rgba(255, 255, 255, 0.2));
  opacity: 0.82;
}
.famlib-book-cover__compact-mark {
  display: flex;
  max-width: 100%;
  min-width: clamp(24px, 45cqi, 36px);
  height: clamp(18px, 32cqi, 26px);
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.36);
  color: var(--book-cover-accent);
  font-family:
    ui-sans-serif,
    system-ui,
    sans-serif;
  font-size: clamp(0.62rem, 17cqi, 0.86rem);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  padding: 0 6px;
  text-overflow: ellipsis;
}
.famlib-book-cover__top,
.famlib-book-cover__footer {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(5px, 5cqi, 12px);
}
.famlib-book-cover__mark {
  display: flex;
  width: clamp(18px, 20cqi, 44px);
  height: clamp(18px, 20cqi, 44px);
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.44);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.34);
  color: var(--book-cover-accent);
  font-family:
    ui-sans-serif,
    system-ui,
    sans-serif;
  font-size: clamp(0.45rem, 8cqi, 0.95rem);
  font-weight: 900;
  letter-spacing: 0;
}
.famlib-book-cover__rule,
.famlib-book-cover__footer-rule {
  height: 1px;
  min-width: 0;
  flex: 1 1;
  background: var(--book-cover-accent);
}
.famlib-book-cover__rule {
  opacity: 0.34;
}
.famlib-book-cover__footer-rule {
  opacity: 0.24;
}
.famlib-book-cover__content {
  display: flex;
  min-height: 0;
  flex: 1 1;
  flex-direction: column;
  justify-content: center;
  gap: clamp(5px, 5cqi, 14px);
}
.famlib-book-cover__title {
  display: -webkit-box;
  min-width: 0;
  margin: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  overflow-wrap: anywhere;
  font-family:
    ui-serif,
    Georgia,
    Cambria,
    "Times New Roman",
    serif;
  font-size: clamp(0.62rem, 13cqi, 1.62rem);
  font-weight: 850;
  letter-spacing: 0;
  line-height: 1.08;
  text-align: left;
  text-overflow: ellipsis;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.18);
  text-wrap: balance;
}
.famlib-book-cover__author {
  display: -webkit-box;
  min-width: 0;
  margin: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
  color: currentColor;
  font-family:
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: clamp(0.48rem, 6.8cqi, 0.92rem);
  font-weight: 760;
  letter-spacing: 0;
  line-height: 1.25;
  opacity: 0.76;
  text-overflow: ellipsis;
}
.famlib-book-cover__imprint {
  flex: 0 0 auto;
  font-family:
    ui-sans-serif,
    system-ui,
    sans-serif;
  font-size: clamp(0.42rem, 5.2cqi, 0.66rem);
  font-weight: 900;
  letter-spacing: 0;
  opacity: 0.55;
  text-transform: uppercase;
}
.famlib-book-cover__image {
  width: 100%;
  height: 100%;
  border-radius: 7px 12px 12px 7px;
  background: #edf4f2;
  background: var(--color-surface-3);
  box-shadow: 0 12px 28px rgba(24, 33, 31, 0.18);
  -o-object-fit: cover;
     object-fit: cover;
}
@container (max-width: 86px) {
  .famlib-book-cover__front {
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: clamp(6px, 11cqi, 10px);
  }
  .famlib-book-cover__compact {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: clamp(4px, 8cqi, 8px);
  }
  .famlib-book-cover__top,
  .famlib-book-cover__content,
  .famlib-book-cover__footer,
  .famlib-book-cover__imprint {
    display: none;
  }
  .famlib-book-cover__image {
    border-radius: 5px 8px 8px 5px;
  }
}
.notes-table-height {
  height: calc(100vh - 160px);
}
:root {
  --font-sans:
    "Inter",
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --font-size-caption: 0.75rem;
  --font-size-body: 0.875rem;
  --font-size-lead: 1rem;
  --font-size-section-title: 1.25rem;
  --font-size-page-title: 2.25rem;
  --line-height-tight: 1.2;
  --line-height-body: 1.5;
  --line-height-relaxed: 1.65;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --tracking-tight: -0.025em;
  --tracking-wide: 0.025em;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --radius-full: 9999px;
  --motion-fast: 120ms;
  --motion-ui: 180ms;
  --motion-slow: 240ms;
  --sidebar-width: 15.5rem;
  --content-max-width: 90rem;
}
html,
body,
.root-container {
  min-height: 100%;
  background: #f4f8f7;
  background: var(--color-canvas);
  color: #14211f;
  color: var(--color-fg);
}
body {
  font-family:
    "Inter",
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-family: var(--font-sans);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  transition: background-color 180ms ease, color 180ms ease;
  transition: background-color var(--motion-ui) ease, color var(--motion-ui) ease;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #24a99b;
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.famlib-app-shell {
  background:
    radial-gradient(
      circle at 10% 4%,
      color-mix(in srgb, #e2f5f1 74%, transparent),
      transparent 34rem),
    #f4f8f7;
  background: var(--theme-atmosphere), var(--color-canvas);
  color: #14211f;
  color: var(--color-fg);
}
.famlib-glass-panel {
  background: rgba(249, 252, 251, 0.88);
  background: var(--color-shell);
  border-color: #d5e1de;
  border-color: var(--color-border);
  box-shadow: 0 18px 48px rgba(31, 70, 67, 0.1);
  box-shadow: var(--shadow-shell);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.famlib-content-shell {
  position: relative;
  z-index: 1;
}
.famlib-skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 70;
  transform: translateY(-200%);
}
.famlib-skip-link:focus {
  transform: translateY(0);
}
.app-toast-viewport.Toastify__toast-container--bottom-right {
  right: 1rem;
  right: var(--space-4);
  bottom: 1rem;
  bottom: var(--space-4);
  width: min(24rem, 100vw - 2 * 1rem);
  width: min(24rem, 100vw - 2 * var(--space-4));
  padding: 0;
  pointer-events: none;
}
.app-toast {
  min-height: 3.5rem;
  margin-bottom: 0.5rem;
  margin-bottom: var(--space-2);
  padding: 0 0.5rem 0 0.75rem;
  padding: 0 var(--space-2) 0 var(--space-3);
  color: #14211f;
  color: var(--color-fg);
  background: #ffffff;
  background: var(--color-surface-1);
  border: 1px solid #d5e1de;
  border: 1px solid var(--color-border);
  border-left-width: 4px;
  border-radius: 0.75rem;
  border-radius: var(--radius-md);
  box-shadow: 0 22px 60px rgba(21, 47, 44, 0.18);
  box-shadow: var(--shadow-floating);
  cursor: default;
  pointer-events: auto;
}
.app-toast .Toastify__toast-body {
  min-width: 0;
  margin: 0;
  padding: 0.75rem 0;
  padding: var(--space-3) 0;
  line-height: 1.5;
  line-height: var(--line-height-body);
}
.app-toast .Toastify__toast-icon {
  width: 1.125rem;
  -webkit-margin-end: 0.5rem;
  margin-inline-end: 0.5rem;
  -webkit-margin-end: var(--space-2);
  margin-inline-end: var(--space-2);
}
.app-toast__timer {
  visibility: hidden;
}
.app-toast--success,
.Toastify__toast--success.app-toast {
  --toastify-icon-color-success: var(--color-success);
  border-color: #b6dac5;
  border-color: var(--color-success-border);
  border-left-color: #276b4a;
  border-left-color: var(--color-success);
}
.app-toast--info,
.Toastify__toast--info.app-toast {
  --toastify-icon-color-info: var(--color-info);
  border-color: #bad9e6;
  border-color: var(--color-info-border);
  border-left-color: #246987;
  border-left-color: var(--color-info);
}
.app-toast--warning,
.Toastify__toast--warning.app-toast {
  --toastify-icon-color-warning: var(--color-warning);
  border-color: #e8d5a9;
  border-color: var(--color-warning-border);
  border-left-color: #8a5a13;
  border-left-color: var(--color-warning);
}
.app-toast--error,
.Toastify__toast--error.app-toast {
  --toastify-icon-color-error: var(--color-danger);
  border-color: #ebc3c0;
  border-color: var(--color-danger-border);
  border-left-color: #a84f4b;
  border-left-color: var(--color-danger);
}
.app-toast__close {
  display: inline-flex;
  width: 2.75rem;
  min-width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  align-self: center;
  justify-content: center;
  color: #60736f;
  color: var(--color-fg-muted);
  background: transparent;
  border: 0;
  border-radius: 0.5rem;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: color 180ms ease, background-color 180ms ease;
  transition: color var(--motion-ui) ease, background-color var(--motion-ui) ease;
}
.app-toast__close:hover {
  color: #14211f;
  color: var(--color-fg);
  background: #f7faf9;
  background: var(--color-surface-2);
}
button.checklist-item-composer-submit {
  border-radius: 0 !important;
  cursor: pointer;
  transition: color 180ms ease, background-color 180ms ease;
  transition: color var(--motion-ui) ease, background-color var(--motion-ui) ease;
}
button.checklist-item-composer-submit:not(:disabled):hover {
  color: #074d47 !important;
  color: var(--color-accent-contrast) !important;
  background-color: #e2f5f1 !important;
  background-color: var(--color-accent-subtle) !important;
}
button.checklist-item-composer-submit:not(:disabled):active {
  color: #ffffff !important;
  color: var(--color-fg-inverse) !important;
  background-color: #126b63 !important;
  background-color: var(--color-accent) !important;
}
button.checklist-item-composer-submit:disabled {
  pointer-events: auto !important;
  cursor: not-allowed;
  opacity: 1 !important;
}
button.checklist-item-composer-submit:disabled:hover {
  color: #60736f !important;
  color: var(--color-fg-muted) !important;
  background-color: #edf4f2 !important;
  background-color: var(--color-surface-3) !important;
}
textarea.checklist-item-composer-input {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
textarea.checklist-item-composer-input:focus {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
@media only screen and (max-width: 480px) {
  .app-toast-viewport.Toastify__toast-container--bottom-right {
    right: 0;
    bottom: calc(5.75rem + env(safe-area-inset-bottom));
    left: 0;
    width: auto;
    padding: 0 1rem;
    padding: 0 var(--space-4);
  }
  .app-toast {
    margin-bottom: 0.5rem;
    margin-bottom: var(--space-2);
    border-radius: 0.75rem;
    border-radius: var(--radius-md);
  }
}
.file\:mr-3::-webkit-file-upload-button {
  margin-right: 0.75rem !important;
  margin-right: var(--space-3) !important;
}
.file\:mr-3::file-selector-button {
  margin-right: 0.75rem !important;
  margin-right: var(--space-3) !important;
}
.file\:rounded-ui-sm::-webkit-file-upload-button {
  border-radius: 0.5rem !important;
  border-radius: var(--radius-sm) !important;
}
.file\:rounded-ui-sm::file-selector-button {
  border-radius: 0.5rem !important;
  border-radius: var(--radius-sm) !important;
}
.file\:border-0::-webkit-file-upload-button {
  border-width: 0px !important;
}
.file\:border-0::file-selector-button {
  border-width: 0px !important;
}
.file\:bg-surface-2::-webkit-file-upload-button {
  background-color: #f7faf9 !important;
  background-color: var(--color-surface-2) !important;
}
.file\:bg-surface-2::file-selector-button {
  background-color: #f7faf9 !important;
  background-color: var(--color-surface-2) !important;
}
.file\:px-3::-webkit-file-upload-button {
  padding-left: 0.75rem !important;
  padding-left: var(--space-3) !important;
  padding-right: 0.75rem !important;
  padding-right: var(--space-3) !important;
}
.file\:px-3::file-selector-button {
  padding-left: 0.75rem !important;
  padding-left: var(--space-3) !important;
  padding-right: 0.75rem !important;
  padding-right: var(--space-3) !important;
}
.file\:py-1\.5::-webkit-file-upload-button {
  padding-top: 0.375rem !important;
  padding-bottom: 0.375rem !important;
}
.file\:py-1\.5::file-selector-button {
  padding-top: 0.375rem !important;
  padding-bottom: 0.375rem !important;
}
.file\:font-semibold::-webkit-file-upload-button {
  font-weight: 600 !important;
  font-weight: var(--font-weight-semibold) !important;
}
.file\:font-semibold::file-selector-button {
  font-weight: 600 !important;
  font-weight: var(--font-weight-semibold) !important;
}
.placeholder\:text-fg-subtle::-webkit-input-placeholder {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.placeholder\:text-fg-subtle:-ms-input-placeholder {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.placeholder\:text-fg-subtle::-moz-placeholder {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.placeholder\:text-fg-subtle::placeholder {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.first\:rounded-t-lg:first-child {
  border-top-left-radius: 0.5rem !important;
  border-top-right-radius: 0.5rem !important;
}
.first\:pt-0:first-child {
  padding-top: 0px !important;
}
.last\:rounded-b-lg:last-child {
  border-bottom-right-radius: 0.5rem !important;
  border-bottom-left-radius: 0.5rem !important;
}
.last\:border-b-0:last-child {
  border-bottom-width: 0px !important;
}
.last\:pb-0:last-child {
  padding-bottom: 0px !important;
}
.focus-within\:border-accent:focus-within {
  border-color: #126b63 !important;
  border-color: var(--color-accent) !important;
}
.focus-within\:ring-2:focus-within {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.focus-within\:ring-focus:focus-within {
  --tw-ring-color:var(--color-focus) !important;
}
.hover\:-translate-y-0\.5:hover {
  --tw-translate-y:-0.125rem !important;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
}
.hover\:border-\[\#126b63\]:hover {
  --tw-border-opacity:1 !important;
  border-color: rgb(18 107 99 / 1) !important;
  border-color: rgb(18 107 99 / var(--tw-border-opacity, 1)) !important;
}
.hover\:border-accent:hover {
  border-color: #126b63 !important;
  border-color: var(--color-accent) !important;
}
.hover\:border-border:hover {
  border-color: #d5e1de !important;
  border-color: var(--color-border) !important;
}
.hover\:border-border-strong:hover {
  border-color: #aec4c0 !important;
  border-color: var(--color-border-strong) !important;
}
.hover\:border-gray-600:hover {
  --tw-border-opacity:1 !important;
  border-color: rgb(75 85 99 / 1) !important;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1)) !important;
}
.hover\:bg-\[\#0d574f\]:hover {
  --tw-bg-opacity:1 !important;
  background-color: rgb(13 87 79 / 1) !important;
  background-color: rgb(13 87 79 / var(--tw-bg-opacity, 1)) !important;
}
.hover\:bg-\[\#e2f5f1\]:hover {
  --tw-bg-opacity:1 !important;
  background-color: rgb(226 245 241 / 1) !important;
  background-color: rgb(226 245 241 / var(--tw-bg-opacity, 1)) !important;
}
.hover\:bg-accent-hover:hover {
  background-color: #0d574f !important;
  background-color: var(--color-accent-hover) !important;
}
.hover\:bg-accent-subtle:hover {
  background-color: #e2f5f1 !important;
  background-color: var(--color-accent-subtle) !important;
}
.hover\:bg-danger-hover:hover {
  background-color: #8f403c !important;
  background-color: var(--color-danger-hover) !important;
}
.hover\:bg-danger-surface:hover {
  background-color: #fff0ef !important;
  background-color: var(--color-danger-surface) !important;
}
.hover\:bg-gray-200:hover {
  --tw-bg-opacity:1 !important;
  background-color: rgb(229 231 235 / 1) !important;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1)) !important;
}
.hover\:bg-surface-1:hover {
  background-color: #ffffff !important;
  background-color: var(--color-surface-1) !important;
}
.hover\:bg-surface-2:hover {
  background-color: #f7faf9 !important;
  background-color: var(--color-surface-2) !important;
}
.hover\:bg-surface-3:hover {
  background-color: #edf4f2 !important;
  background-color: var(--color-surface-3) !important;
}
.hover\:text-accent:hover {
  color: #126b63 !important;
  color: var(--color-accent) !important;
}
.hover\:text-accent-contrast:hover {
  color: #074d47 !important;
  color: var(--color-accent-contrast) !important;
}
.hover\:text-accent-hover:hover {
  color: #0d574f !important;
  color: var(--color-accent-hover) !important;
}
.hover\:text-black:hover {
  --tw-text-opacity:1 !important;
  color: rgb(0 0 0 / 1) !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}
.hover\:text-fg:hover {
  color: #14211f !important;
  color: var(--color-fg) !important;
}
.hover\:text-gray-800:hover {
  --tw-text-opacity:1 !important;
  color: rgb(31 41 55 / 1) !important;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1)) !important;
}
.hover\:text-teal-600:hover {
  --tw-text-opacity:1 !important;
  color: rgb(13 148 136 / 1) !important;
  color: rgb(13 148 136 / var(--tw-text-opacity, 1)) !important;
}
.hover\:underline:hover {
  -webkit-text-decoration-line: underline !important;
  text-decoration-line: underline !important;
}
.hover\:opacity-75:hover {
  opacity: 0.75 !important;
}
.hover\:opacity-90:hover {
  opacity: 0.9 !important;
}
.hover\:shadow-floating:hover {
  --tw-shadow:var(--shadow-floating) !important;
  --tw-shadow-colored:var(--shadow-floating) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.hover\:shadow-md:hover {
  --tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1) !important;
  --tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.hover\:shadow-sm:hover {
  --tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05) !important;
  --tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color) !important;
  box-shadow:
    0 0 #0000,
    0 0 #0000,
    var(--tw-shadow) !important;
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow) !important;
}
.focus\:\!border-transparent:focus {
  border-color: transparent !important;
}
.focus\:border-\[\#2d7a64\]:focus {
  --tw-border-opacity:1 !important;
  border-color: rgb(45 122 100 / 1) !important;
  border-color: rgb(45 122 100 / var(--tw-border-opacity, 1)) !important;
}
.focus\:border-accent:focus {
  border-color: #126b63 !important;
  border-color: var(--color-accent) !important;
}
.focus\:border-gray-600:focus {
  --tw-border-opacity:1 !important;
  border-color: rgb(75 85 99 / 1) !important;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1)) !important;
}
.focus\:border-warning:focus {
  border-color: #8a5a13 !important;
  border-color: var(--color-warning) !important;
}
.focus\:text-black:focus {
  --tw-text-opacity:1 !important;
  color: rgb(0 0 0 / 1) !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}
.focus\:outline-none:focus {
  outline: 2px solid transparent !important;
  outline-offset: 2px !important;
}
.focus\:\!ring-0:focus {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.focus\:ring-focus:focus {
  --tw-ring-color:var(--color-focus) !important;
}
.focus-visible\:outline-none:focus-visible {
  outline: 2px solid transparent !important;
  outline-offset: 2px !important;
}
.focus-visible\:outline:focus-visible {
  outline-style: solid !important;
}
.focus-visible\:outline-2:focus-visible {
  outline-width: 2px !important;
}
.focus-visible\:outline-offset-2:focus-visible {
  outline-offset: 2px !important;
}
.focus-visible\:outline-\[\#24a99b\]:focus-visible {
  outline-color: #24a99b !important;
}
.focus-visible\:ring-0:focus-visible {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.focus-visible\:ring-inset:focus-visible {
  --tw-ring-inset:inset !important;
}
.focus-visible\:ring-accent:focus-visible {
  --tw-ring-color:var(--color-accent) !important;
}
.focus-visible\:ring-danger:focus-visible {
  --tw-ring-color:var(--color-danger) !important;
}
.focus-visible\:ring-focus:focus-visible {
  --tw-ring-color:var(--color-focus) !important;
}
.focus-visible\:ring-offset-0:focus-visible {
  --tw-ring-offset-width:0px !important;
}
.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width:2px !important;
}
.focus-visible\:ring-offset-canvas:focus-visible {
  --tw-ring-offset-color:var(--color-canvas) !important;
}
.disabled\:pointer-events-none:disabled {
  pointer-events: none !important;
}
.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed !important;
}
.disabled\:\!bg-surface-2:disabled {
  background-color: #f7faf9 !important;
  background-color: var(--color-surface-2) !important;
}
.disabled\:bg-surface-3:disabled {
  background-color: #edf4f2 !important;
  background-color: var(--color-surface-3) !important;
}
.disabled\:\!text-fg-subtle:disabled {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.disabled\:text-fg-subtle:disabled {
  color: #82928f !important;
  color: var(--color-fg-subtle) !important;
}
.disabled\:opacity-50:disabled {
  opacity: 0.5 !important;
}
.group:focus-within .group-focus-within\:block {
  display: block !important;
}
.group:hover .group-hover\:block {
  display: block !important;
}
.group\/list:hover .group-hover\/list\:text-accent {
  color: #126b63 !important;
  color: var(--color-accent) !important;
}
.group\/root:hover .group-hover\/root\:text-accent {
  color: #126b63 !important;
  color: var(--color-accent) !important;
}
.group:hover .group-hover\:text-accent-contrast {
  color: #074d47 !important;
  color: var(--color-accent-contrast) !important;
}
.group:focus-visible .group-focus-visible\:ring-2 {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    0 0 #0000 !important;
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000) !important;
}
.group:focus-visible .group-focus-visible\:ring-focus {
  --tw-ring-color:var(--color-focus) !important;
}
.group:focus-visible .group-focus-visible\:ring-offset-2 {
  --tw-ring-offset-width:2px !important;
}
.group:focus-visible .group-focus-visible\:ring-offset-canvas {
  --tw-ring-offset-color:var(--color-canvas) !important;
}
.aria-\[invalid\=true\]\:border-danger-border[aria-invalid=true] {
  border-color: #ebc3c0 !important;
  border-color: var(--color-danger-border) !important;
}
.aria-\[invalid\=true\]\:focus\:border-danger:focus[aria-invalid=true] {
  border-color: #a84f4b !important;
  border-color: var(--color-danger) !important;
}
.aria-\[invalid\=true\]\:focus\:ring-danger:focus[aria-invalid=true] {
  --tw-ring-color:var(--color-danger) !important;
}
@media (min-width: 640px) {
  .sm\:col-span-2 {
    grid-column: span 2 / span 2 !important;
  }
  .sm\:block {
    display: block !important;
  }
  .sm\:flex {
    display: flex !important;
  }
  .sm\:inline-flex {
    display: inline-flex !important;
  }
  .sm\:hidden {
    display: none !important;
  }
  .sm\:h-\[460px\] {
    height: 460px !important;
  }
  .sm\:w-52 {
    width: 13rem !important;
  }
  .sm\:w-\[240px\] {
    width: 240px !important;
  }
  .sm\:w-\[280px\] {
    width: 280px !important;
  }
  .sm\:w-auto {
    width: auto !important;
  }
  .sm\:w-fit {
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
  }
  .sm\:min-w-\[280px\] {
    min-width: 280px !important;
  }
  .sm\:min-w-\[320px\] {
    min-width: 320px !important;
  }
  .sm\:max-w-\[300px\] {
    max-width: 300px !important;
  }
  .sm\:max-w-\[340px\] {
    max-width: 340px !important;
  }
  .sm\:max-w-xs {
    max-width: 20rem !important;
  }
  .sm\:flex-none {
    flex: none !important;
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .sm\:grid-cols-\[140px_minmax\(0\,1fr\)\] {
    grid-template-columns: 140px minmax(0, 1fr) !important;
  }
  .sm\:grid-cols-\[1fr_150px_90px_auto\] {
    grid-template-columns: 1fr 150px 90px auto !important;
  }
  .sm\:grid-cols-\[1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr auto !important;
  }
  .sm\:grid-cols-\[minmax\(0\,1fr\)_160px_auto\] {
    grid-template-columns: minmax(0, 1fr) 160px auto !important;
  }
  .sm\:grid-cols-\[minmax\(0\,1fr\)_170px_auto\] {
    grid-template-columns: minmax(0, 1fr) 170px auto !important;
  }
  .sm\:grid-cols-\[minmax\(0\,1fr\)_auto\] {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .sm\:grid-cols-\[minmax\(220px\,320px\)_180px\] {
    grid-template-columns: minmax(220px, 320px) 180px !important;
  }
  .sm\:flex-row {
    flex-direction: row !important;
  }
  .sm\:flex-wrap {
    flex-wrap: wrap !important;
  }
  .sm\:items-start {
    align-items: flex-start !important;
  }
  .sm\:items-end {
    align-items: flex-end !important;
  }
  .sm\:items-center {
    align-items: center !important;
  }
  .sm\:justify-end {
    justify-content: flex-end !important;
  }
  .sm\:justify-between {
    justify-content: space-between !important;
  }
  .sm\:gap-5 {
    gap: 1.25rem !important;
  }
  .sm\:p-10 {
    padding: 2.5rem !important;
  }
  .sm\:p-5 {
    padding: 1.25rem !important;
  }
  .sm\:p-6 {
    padding: 1.5rem !important;
    padding: var(--space-6) !important;
  }
  .sm\:p-8 {
    padding: 2rem !important;
    padding: var(--space-8) !important;
  }
  .sm\:px-6 {
    padding-left: 1.5rem !important;
    padding-left: var(--space-6) !important;
    padding-right: 1.5rem !important;
    padding-right: var(--space-6) !important;
  }
  .sm\:px-8 {
    padding-left: 2rem !important;
    padding-left: var(--space-8) !important;
    padding-right: 2rem !important;
    padding-right: var(--space-8) !important;
  }
  .sm\:text-right {
    text-align: right !important;
  }
  .sm\:text-3xl {
    font-size: 1.875rem !important;
    line-height: 2.25rem !important;
  }
  .sm\:text-4xl {
    font-size: 2.25rem !important;
    line-height: 2.5rem !important;
  }
  .sm\:text-5xl {
    font-size: 3rem !important;
    line-height: 1 !important;
  }
  .sm\:text-base {
    font-size: 1rem !important;
    line-height: 1.5rem !important;
  }
  .sm\:text-lg {
    font-size: 1.125rem !important;
    line-height: 1.75rem !important;
  }
  .sm\:text-xl {
    font-size: 1.25rem !important;
    line-height: 1.75rem !important;
  }
  .sm\:opacity-0 {
    opacity: 0 !important;
  }
  .group\/folder:focus-within .sm\:group-focus-within\/folder\:opacity-100 {
    opacity: 1 !important;
  }
  .group\/list:focus-within .sm\:group-focus-within\/list\:opacity-100 {
    opacity: 1 !important;
  }
  .group\/root:focus-within .sm\:group-focus-within\/root\:opacity-100 {
    opacity: 1 !important;
  }
  .group\/folder:hover .sm\:group-hover\/folder\:opacity-100 {
    opacity: 1 !important;
  }
  .group\/list:hover .sm\:group-hover\/list\:opacity-100 {
    opacity: 1 !important;
  }
  .group\/root:hover .sm\:group-hover\/root\:opacity-100 {
    opacity: 1 !important;
  }
}
@media (min-width: 768px) {
  .md\:col-span-2 {
    grid-column: span 2 / span 2 !important;
  }
  .md\:col-span-3 {
    grid-column: span 3 / span 3 !important;
  }
  .md\:ml-\[calc\(50\%_-_50vw_\+_var\(--sidebar-width\)_\/_2\)\] {
    margin-left: calc(50% - 50vw + 15.5rem / 2) !important;
    margin-left: calc(50% - 50vw + var(--sidebar-width) / 2) !important;
  }
  .md\:block {
    display: block !important;
  }
  .md\:flex {
    display: flex !important;
  }
  .md\:hidden {
    display: none !important;
  }
  .md\:h-\[124px\] {
    height: 124px !important;
  }
  .md\:h-full {
    height: 100% !important;
  }
  .md\:min-h-0 {
    min-height: 0px !important;
  }
  .md\:w-1\/3 {
    width: 33.333333% !important;
  }
  .md\:w-\[calc\(100vw-var\(--sidebar-width\)\)\] {
    width: calc(100vw - 15.5rem) !important;
    width: calc(100vw - var(--sidebar-width)) !important;
  }
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .md\:grid-cols-\[1fr_160px_auto\] {
    grid-template-columns: 1fr 160px auto !important;
  }
  .md\:grid-cols-\[minmax\(0\,1fr\)_220px\] {
    grid-template-columns: minmax(0, 1fr) 220px !important;
  }
  .md\:flex-row {
    flex-direction: row !important;
  }
  .md\:items-end {
    align-items: flex-end !important;
  }
  .md\:items-center {
    align-items: center !important;
  }
  .md\:justify-between {
    justify-content: space-between !important;
  }
  .md\:self-end {
    align-self: flex-end !important;
  }
  .md\:py-0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .md\:pb-0 {
    padding-bottom: 0px !important;
  }
  .md\:pl-sidebar {
    padding-left: 15.5rem !important;
    padding-left: var(--sidebar-width) !important;
  }
  .md\:opacity-0 {
    opacity: 0 !important;
  }
  .md\:transition {
    transition-property:
      color,
      background-color,
      border-color,
      fill,
      stroke,
      opacity,
      box-shadow,
      transform,
      -webkit-text-decoration-color,
      -webkit-filter,
      -webkit-backdrop-filter !important;
    transition-property:
      color,
      background-color,
      border-color,
      text-decoration-color,
      fill,
      stroke,
      opacity,
      box-shadow,
      transform,
      filter,
      backdrop-filter !important;
    transition-property:
      color,
      background-color,
      border-color,
      text-decoration-color,
      fill,
      stroke,
      opacity,
      box-shadow,
      transform,
      filter,
      backdrop-filter,
      -webkit-text-decoration-color,
      -webkit-filter,
      -webkit-backdrop-filter !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
  }
  .group:hover .md\:group-hover\:opacity-100 {
    opacity: 1 !important;
  }
}
@media (min-width: 1024px) {
  .lg\:order-1 {
    order: 1 !important;
  }
  .lg\:order-2 {
    order: 2 !important;
  }
  .lg\:mx-0 {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .lg\:-mt-7 {
    margin-top: -1.75rem !important;
  }
  .lg\:mt-0 {
    margin-top: 0px !important;
  }
  .lg\:block {
    display: block !important;
  }
  .lg\:flex {
    display: flex !important;
  }
  .lg\:grid {
    display: grid !important;
  }
  .lg\:contents {
    display: contents !important;
  }
  .lg\:hidden {
    display: none !important;
  }
  .lg\:h-\[620px\] {
    height: 620px !important;
  }
  .lg\:min-h-\[620px\] {
    min-height: 620px !important;
  }
  .lg\:w-5\/12 {
    width: 41.666667% !important;
  }
  .lg\:w-auto {
    width: auto !important;
  }
  .lg\:max-w-sm {
    max-width: 24rem !important;
  }
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .lg\:grid-cols-\[0\.95fr_1\.05fr\] {
    grid-template-columns: 0.95fr 1.05fr !important;
  }
  .lg\:grid-cols-\[0\.9fr_1\.1fr\] {
    grid-template-columns: 0.9fr 1.1fr !important;
  }
  .lg\:grid-cols-\[1\.2fr_0\.8fr\] {
    grid-template-columns: 1.2fr 0.8fr !important;
  }
  .lg\:grid-cols-\[1\.5fr_repeat\(5\,1fr\)\] {
    grid-template-columns: 1.5fr repeat(5, 1fr) !important;
  }
  .lg\:grid-cols-\[19rem_minmax\(0\,1fr\)\] {
    grid-template-columns: 19rem minmax(0, 1fr) !important;
  }
  .lg\:grid-cols-\[1fr_auto\] {
    grid-template-columns: 1fr auto !important;
  }
  .lg\:grid-cols-\[260px_minmax\(0\,1fr\)\] {
    grid-template-columns: 260px minmax(0, 1fr) !important;
  }
  .lg\:grid-cols-\[minmax\(0\,1\.2fr\)_minmax\(360px\,0\.8fr\)\] {
    grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr) !important;
  }
  .lg\:grid-cols-\[minmax\(0\,1\.4fr\)_repeat\(3\,minmax\(130px\,0\.7fr\)\)\] {
    grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(130px, 0.7fr)) !important;
  }
  .lg\:grid-cols-\[minmax\(0\,1fr\)_280px\] {
    grid-template-columns: minmax(0, 1fr) 280px !important;
  }
  .lg\:grid-cols-\[minmax\(0\,1fr\)_280px_auto\] {
    grid-template-columns: minmax(0, 1fr) 280px auto !important;
  }
  .lg\:flex-row {
    flex-direction: row !important;
  }
  .lg\:flex-col {
    flex-direction: column !important;
  }
  .lg\:items-start {
    align-items: flex-start !important;
  }
  .lg\:items-end {
    align-items: flex-end !important;
  }
  .lg\:items-center {
    align-items: center !important;
  }
  .lg\:justify-end {
    justify-content: flex-end !important;
  }
  .lg\:justify-between {
    justify-content: space-between !important;
  }
  .lg\:self-start {
    align-self: flex-start !important;
  }
  .lg\:p-8 {
    padding: 2rem !important;
    padding: var(--space-8) !important;
  }
  .lg\:px-10 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .lg\:px-8 {
    padding-left: 2rem !important;
    padding-left: var(--space-8) !important;
    padding-right: 2rem !important;
    padding-right: var(--space-8) !important;
  }
  .lg\:py-7 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
  .lg\:text-left {
    text-align: left !important;
  }
}
@media (min-width: 1280px) {
  .xl\:sticky {
    position: -webkit-sticky !important;
    position: sticky !important;
  }
  .xl\:top-\[148px\] {
    top: 148px !important;
  }
  .xl\:order-1 {
    order: 1 !important;
  }
  .xl\:order-2 {
    order: 2 !important;
  }
  .xl\:col-span-2 {
    grid-column: span 2 / span 2 !important;
  }
  .xl\:col-span-3 {
    grid-column: span 3 / span 3 !important;
  }
  .xl\:block {
    display: block !important;
  }
  .xl\:hidden {
    display: none !important;
  }
  .xl\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .xl\:grid-cols-\[0\.85fr_1\.15fr\] {
    grid-template-columns: 0.85fr 1.15fr !important;
  }
  .xl\:grid-cols-\[1\.2fr_0\.8fr\] {
    grid-template-columns: 1.2fr 0.8fr !important;
  }
  .xl\:grid-cols-\[1fr_0\.9fr\] {
    grid-template-columns: 1fr 0.9fr !important;
  }
  .xl\:grid-cols-\[minmax\(0\,1\.4fr\)_minmax\(300px\,0\.8fr\)\] {
    grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.8fr) !important;
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_340px\] {
    grid-template-columns: minmax(0, 1fr) 340px !important;
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_360px\] {
    grid-template-columns: minmax(0, 1fr) 360px !important;
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_384px\] {
    grid-template-columns: minmax(0, 1fr) 384px !important;
  }
  .xl\:grid-cols-\[minmax\(240px\,1fr\)_220px_220px_220px\] {
    grid-template-columns: minmax(240px, 1fr) 220px 220px 220px !important;
  }
  .xl\:grid-cols-\[minmax\(320px\,0\.8fr\)_minmax\(0\,1\.35fr\)\] {
    grid-template-columns: minmax(320px, 0.8fr) minmax(0, 1.35fr) !important;
  }
}
@media (min-width: 1536px) {
  .\32xl\:table-cell {
    display: table-cell !important;
  }
  .\32xl\:w-auto {
    width: auto !important;
  }
  .\32xl\:min-w-\[1180px\] {
    min-width: 1180px !important;
  }
  .\32xl\:table-auto {
    table-layout: auto !important;
  }
  .\32xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  .\32xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .\32xl\:overflow-x-auto {
    overflow-x: auto !important;
  }
  .\32xl\:text-2xl {
    font-size: 1.5rem !important;
    line-height: 2rem !important;
  }
}
.\[\&\>\*\]\:h-\[54px\] > * {
  height: 54px !important;
}
.\[\&\>\*\]\:min-h-\[54px\] > * {
  min-height: 54px !important;
}

/* app/javascript/src/components/Dashboard/Calendar/calendar.css */
.calendar-card .fc {
  --fc-border-color: var(--color-border);
  --fc-button-bg-color: var(--color-surface-1);
  --fc-button-border-color: var(--color-border);
  --fc-button-hover-bg-color: var(--color-surface-2);
  --fc-button-hover-border-color: var(--color-accent);
  --fc-button-active-bg-color: var(--color-accent);
  --fc-button-active-border-color: var(--color-accent);
  --fc-event-border-color: var(--color-accent);
  --fc-list-event-hover-bg-color: var(--color-surface-2);
  --fc-neutral-bg-color: var(--color-surface-2);
  --fc-page-bg-color: var(--color-surface-1);
  color: var(--color-fg);
  font-family: inherit;
}
.calendar-card .fc .fc-button {
  border-radius: var(--radius-sm);
  box-shadow: none;
  color: var(--color-fg);
  font-size: 0.75rem;
  font-weight: 700;
}
.calendar-card .fc .fc-button-primary:not(:disabled).fc-button-active,
.calendar-card .fc .fc-button-primary:not(:disabled):active {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-fg-inverse);
}
.calendar-card .fc .fc-scrollgrid,
.calendar-card .fc .fc-scrollgrid-section > td,
.calendar-card .fc .fc-scrollgrid-section > th {
  background: var(--color-surface-1);
}
.calendar-card .fc .fc-toolbar {
  align-items: flex-start;
  gap: 0.75rem;
}
.calendar-card .fc .fc-toolbar-title {
  font-size: 1.25rem;
  font-weight: 700;
}
.calendar-card .fc .fc-col-header-cell-cushion,
.calendar-card .fc .fc-daygrid-day-number {
  color: var(--color-fg-secondary);
  padding: 0.5rem;
}
.calendar-card .fc .fc-event {
  border-radius: 0.375rem;
  cursor: pointer;
  overflow: hidden;
  padding: 0.125rem 0.25rem;
}
.calendar-legend {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  color: var(--color-fg-secondary);
  display: flex;
  flex-wrap: wrap;
  font-size: 0.75rem;
  gap: 0.5rem 0.875rem;
  margin: -0.25rem 0 1rem;
  padding: 0.25rem 0 0.875rem;
}
.calendar-legend-heading {
  color: var(--color-fg);
  font-weight: 800;
}
.calendar-legend-item {
  align-items: center;
  display: inline-flex;
  font-weight: 700;
  gap: 0.35rem;
}
.calendar-legend-item svg {
  color: var(--color-fg-muted);
  height: 0.9rem;
  width: 0.9rem;
}
.calendar-legend-swatch {
  border-radius: var(--radius-full);
  display: inline-block;
  height: 0.65rem;
  width: 0.65rem;
}
.calendar-legend-swatch-recurring {
  background: var(--color-recurring);
}
.calendar-legend-swatch-one-time {
  background: var(--color-info);
}
.calendar-legend-divider {
  background: var(--color-border);
  height: 1rem;
  width: 1px;
}
.calendar-event-content {
  align-items: center;
  display: flex;
  gap: 0.25rem;
  min-width: 0;
  overflow: hidden;
}
.calendar-event-scope-icon {
  flex: 0 0 0.8rem;
  height: 0.8rem;
  width: 0.8rem;
}
.calendar-event-content-copy {
  align-items: baseline;
  display: flex;
  gap: 0.25rem;
  min-width: 0;
  overflow: hidden;
}
.calendar-event-time {
  flex: 0 0 auto;
  font-weight: 800;
}
.calendar-event-title {
  font-weight: 700;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calendar-event-preview {
  background: var(--color-surface-1);
  border: 1px solid var(--color-border-strong);
  border-top: 0.25rem solid var(--color-info);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-floating);
  color: var(--color-fg);
  max-width: calc(100vw - 1.5rem);
  overflow-y: auto;
  -ms-scroll-chaining: none;
  overscroll-behavior: contain;
  position: fixed;
  z-index: 70;
}
.calendar-event-preview[data-calendar-recurring=true] {
  border-top-color: var(--color-recurring);
}
.calendar-event-preview-header {
  border-bottom: 1px solid var(--color-border);
  display: grid;
  grid-gap: 0.5rem;
  gap: 0.5rem;
  padding: 0.75rem 0.875rem 0.625rem;
}
.calendar-event-preview-header h3 {
  font-size: 0.9375rem;
  font-weight: 800;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.calendar-event-preview-badges {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}
.calendar-event-preview-badge {
  align-items: center;
  background: var(--color-surface-2);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  color: var(--color-fg-secondary);
  display: inline-flex;
  font-size: 0.625rem;
  font-weight: 800;
  gap: 0.25rem;
  line-height: 1;
  padding: 0.3rem 0.45rem;
  text-transform: capitalize;
}
.calendar-event-preview-badge svg {
  height: 0.7rem;
  width: 0.7rem;
}
.calendar-event-preview-badge-recurring {
  background: color-mix(in srgb, var(--color-recurring) 14%, var(--color-surface-1));
  border-color: color-mix(in srgb, var(--color-recurring) 38%, var(--color-border));
  color: var(--color-recurring);
}
.calendar-event-preview-badge-one-time {
  background: var(--color-info-surface);
  border-color: var(--color-info-border);
  color: var(--color-info);
}
.calendar-event-preview-badge-warning {
  background: var(--color-warning-surface);
  border-color: var(--color-warning-border);
  color: var(--color-warning);
}
.calendar-event-preview-body {
  display: grid;
  grid-gap: 0.65rem;
  gap: 0.65rem;
  padding: 0.75rem 0.875rem 0.875rem;
}
.calendar-event-preview-primary-detail,
.calendar-event-preview-reminders {
  align-items: flex-start;
  color: var(--color-fg-secondary);
  display: flex;
  font-size: 0.75rem;
  gap: 0.5rem;
  line-height: 1.4;
}
.calendar-event-preview-primary-detail > svg,
.calendar-event-preview-reminders > svg {
  color: var(--color-fg-muted);
  flex: 0 0 0.9rem;
  height: 0.9rem;
  margin-top: 0.1rem;
  width: 0.9rem;
}
.calendar-event-preview-primary-detail > span,
.calendar-event-preview-reminders > span {
  display: grid;
  grid-gap: 0.1rem;
  gap: 0.1rem;
  min-width: 0;
}
.calendar-event-preview-primary-detail strong,
.calendar-event-preview-reminders strong {
  color: var(--color-fg);
  font-weight: 800;
}
.calendar-event-preview-description {
  background: var(--color-surface-2);
  border: 1px solid var(--color-border-subtle);
  border-radius: var(--radius-sm);
  color: var(--color-fg-secondary);
  font-size: 0.75rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
  padding: 0.55rem 0.65rem;
  white-space: pre-wrap;
}
.calendar-event-preview-metadata {
  display: grid;
  grid-gap: 0.45rem;
  gap: 0.45rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.calendar-event-preview-metadata > div {
  min-width: 0;
}
.calendar-event-preview-metadata dt {
  color: var(--color-fg-muted);
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.calendar-event-preview-metadata dd {
  color: var(--color-fg-secondary);
  font-size: 0.75rem;
  font-weight: 700;
  overflow-wrap: anywhere;
  text-transform: capitalize;
}
.calendar-event-preview-reminders {
  border-top: 1px solid var(--color-border-subtle);
  padding-top: 0.6rem;
}
.calendar-card .fc .fc-timegrid-event .calendar-event-content {
  align-items: flex-start;
}
.calendar-card .fc .fc-timegrid-event .calendar-event-content-copy {
  align-items: flex-start;
  display: grid;
  grid-gap: 0.1rem;
  gap: 0.1rem;
}
.calendar-card .fc .fc-timegrid-event-short .calendar-event-content-copy {
  align-items: baseline;
  display: flex;
  gap: 0.25rem;
}
.calendar-card .fc .fc-daygrid-more-link {
  align-items: center;
  background:
    linear-gradient(
      90deg,
      var(--color-accent-subtle),
      color-mix(in srgb, var(--color-accent-subtle) 42%, var(--color-surface-1)));
  border: 1px solid color-mix(in srgb, var(--color-accent) 42%, var(--color-border));
  border-radius: var(--radius-sm);
  color: var(--color-accent-contrast);
  display: flex;
  float: none;
  font-weight: 800;
  justify-content: center;
  line-height: 1.25;
  margin: 0.25rem 0.125rem 0;
  padding: 0.35rem 0.5rem;
  transition: background-color var(--motion-ui) ease, border-color var(--motion-ui) ease;
}
.calendar-card .fc .fc-daygrid-more-link:hover,
.calendar-card .fc .fc-daygrid-more-link:focus-visible {
  background: var(--color-accent-subtle);
  border-color: var(--color-accent);
  outline: none;
}
.calendar-card .fc .fc-more-popover {
  background: var(--color-surface-1);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}
.calendar-card .fc .fc-more-popover .fc-popover-header {
  background: var(--color-surface-2);
  color: var(--color-fg);
  font-weight: 800;
  padding: 0.75rem;
}
.calendar-card .fc .fc-more-popover .fc-popover-body {
  max-width: calc(100vw - 2rem);
  min-width: min(18rem, calc(100vw - 2rem));
  padding: 0.75rem;
}
.calendar-card .fc .fc-more-popover .fc-daygrid-event-harness + .fc-daygrid-event-harness {
  margin-top: 0.25rem;
}
.calendar-card .fc .fc-timegrid-axis,
.calendar-card .fc .fc-timegrid-slot-label {
  background:
    linear-gradient(
      90deg,
      var(--color-surface-2),
      color-mix(in srgb, var(--color-accent-subtle) 52%, var(--color-surface-1)));
  border-right: 2px solid color-mix(in srgb, var(--color-accent) 38%, var(--color-border));
}
.calendar-card .fc .fc-timegrid-slot-label-frame {
  padding: 0.2rem 0.5rem;
}
.calendar-card .fc .fc-timegrid-slot-label-cushion {
  background: var(--color-surface-1);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  box-shadow: 0 1px 2px color-mix(in srgb, var(--color-fg) 12%, transparent);
  color: var(--color-fg-secondary);
  font-size: 0.6875rem;
  -webkit-font-feature-settings: "tnum";
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  letter-spacing: 0.02em;
  min-width: 4.5rem;
  padding: 0.25rem 0.5rem;
  text-align: center;
}
.calendar-card .fc .fc-timegrid-axis-cushion {
  color: var(--color-accent-contrast);
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  max-width: none;
  min-width: 4.5rem;
  padding-inline: 0.5rem;
  text-align: center;
  text-transform: uppercase;
}
.calendar-card-list .fc-view-harness {
  display: none;
}
.calendar-list-weeks {
  display: grid;
  grid-gap: 1.25rem;
  gap: 1.25rem;
  margin-top: 1.25rem;
}
.calendar-list-week-card {
  background: var(--color-surface-1);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}
.calendar-list-week-header {
  background: var(--color-surface-2);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-fg-secondary);
  padding: 0.75rem 1rem;
}
.calendar-list-week-header h2 {
  font-size: 0.875rem;
  font-weight: 800;
}
.calendar-list-month-banner {
  --calendar-month-border: var(--color-accent);
  --calendar-month-color: var(--color-accent-contrast);
  --calendar-month-surface: var(--color-accent-subtle);
  align-items: center;
  background:
    linear-gradient(
      110deg,
      var(--calendar-month-surface),
      color-mix(in srgb, var(--calendar-month-surface) 34%, var(--color-surface-1)));
  border-block: 1px solid var(--calendar-month-border);
  border-left: 0.4rem solid var(--calendar-month-border);
  color: var(--calendar-month-color);
  display: flex;
  gap: 0.875rem;
  min-height: 5rem;
  overflow: hidden;
  padding: 0.9rem 1.25rem;
  position: relative;
}
.calendar-list-month-banner:is([data-month="1"], [data-month="2"], [data-month="12"]) {
  --calendar-month-border: var(--color-info-border);
  --calendar-month-color: var(--color-info);
  --calendar-month-surface: var(--color-info-surface);
}
.calendar-list-month-banner:is([data-month="3"], [data-month="4"], [data-month="5"]) {
  --calendar-month-border: var(--color-success-border);
  --calendar-month-color: var(--color-success);
  --calendar-month-surface: var(--color-success-surface);
}
.calendar-list-month-banner:is([data-month="6"], [data-month="7"], [data-month="8"]) {
  --calendar-month-border: var(--color-warning-border);
  --calendar-month-color: var(--color-warning);
  --calendar-month-surface: var(--color-warning-surface);
}
.calendar-list-month-icon {
  align-items: center;
  background: var(--color-surface-1);
  border: 1px solid var(--calendar-month-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  display: inline-flex;
  flex: 0 0 2.75rem;
  height: 2.75rem;
  justify-content: center;
}
.calendar-list-month-icon svg {
  height: 1.35rem;
  width: 1.35rem;
}
.calendar-list-month-copy {
  display: grid;
  grid-gap: 0.15rem;
  gap: 0.15rem;
  position: relative;
  z-index: 1;
}
.calendar-list-month-eyebrow {
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.calendar-list-month-name {
  color: var(--color-fg);
  font-size: 1.125rem;
  font-weight: 800;
  letter-spacing: -0.015em;
}
.calendar-list-month-number {
  color: color-mix(in srgb, var(--calendar-month-color) 14%, transparent);
  font-size: 4.75rem;
  font-weight: 900;
  line-height: 1;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.calendar-list-event {
  align-items: flex-start;
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  text-align: left;
  transition: background-color var(--motion-ui) ease;
  width: 100%;
}
.calendar-list-event:hover {
  background: var(--color-surface-2);
}
.calendar-list-event:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: -2px;
}
.calendar-list-event-date {
  color: var(--color-fg-secondary);
  display: grid;
  flex: 0 0 8rem;
  font-size: 0.75rem;
  font-weight: 700;
  grid-gap: 0.2rem;
  gap: 0.2rem;
}
.calendar-list-event-date span:last-child,
.calendar-list-event-location {
  color: var(--color-fg-muted);
  font-weight: 500;
}
.calendar-list-event-marker {
  background: var(--color-info);
  border-radius: 9999px;
  flex: 0 0 0.625rem;
  height: 0.625rem;
  margin-top: 0.25rem;
  width: 0.625rem;
}
.calendar-list-event[data-calendar-recurring=true] .calendar-list-event-marker {
  background: var(--color-recurring);
}
.calendar-list-event[data-verification-status=needs_review] .calendar-list-event-marker {
  background: var(--color-warning);
}
.calendar-list-event-details {
  display: grid;
  grid-gap: 0.2rem;
  gap: 0.2rem;
  min-width: 0;
}
.calendar-list-event-title {
  align-items: center;
  color: var(--color-fg);
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  gap: 0.4rem;
}
.calendar-list-event-title svg {
  color: var(--color-fg-muted);
  flex: 0 0 0.95rem;
  height: 0.95rem;
  width: 0.95rem;
}
.calendar-list-event-location {
  font-size: 0.75rem;
}
.calendar-list-status {
  color: var(--color-fg-muted);
  padding: 4rem 1rem;
  text-align: center;
}
@media (max-width: 767px) {
  .calendar-card .fc .fc-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .calendar-card .fc .fc-toolbar-chunk:nth-child(2) {
    order: -1;
  }
  .calendar-card .fc .fc-button {
    padding-inline: 0.55rem;
  }
  .calendar-legend {
    align-items: flex-start;
  }
  .calendar-legend-heading {
    flex-basis: 100%;
  }
  .calendar-card .fc .fc-timegrid-slot-label-frame {
    padding-inline: 0.25rem;
  }
  .calendar-card .fc .fc-timegrid-axis-cushion,
  .calendar-card .fc .fc-timegrid-slot-label-cushion {
    min-width: 3.75rem;
  }
  .calendar-card .fc .fc-timegrid-slot-label-cushion {
    font-size: 0.625rem;
    padding-inline: 0.35rem;
  }
  .calendar-list-event-date {
    flex-basis: 6.5rem;
  }
}
