/* Main CSS - Carré Pelouse */
:root {
  --background: #ffffff;
  --foreground: #1b422d;
  --primary: #1b422d;
  --primary-foreground: #f8fafc;
  --secondary: #f1f5f9;
  --secondary-foreground: #1b422d;
  --muted: #f1f5f9;
  --muted-foreground: #64748b;
  --accent: #f1f5f9;
  --accent-foreground: #1b422d;
  --destructive: #ef4444;
  --destructive-foreground: #f8fafc;
  --border: #e2e8f0;
  --input: #e2e8f0;
  --ring: #1b422d;
  --radius: 0.5rem;
}

.text-gold {
  color: #d1a802;
}

.bg-gold {
  background-color: #d1a802;
}

.text-primary-dark {
  color: #172620;
}

.bg-primary-dark {
  background-color: #172620;
}

.fill-gold {
  fill: #d1a802;
}

.bg-emerald-custom {
  background-color: #26631d;
}

.text-emerald-custom {
  color: #26631d;
}

.border-emerald-custom {
  border-color: #26631d;
}

.border-gold {
  border-color: #d1a802;
}

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
  height: auto;
}

.portrait-image-container {
  width: 100%;
  max-width: 400px;
  /* Adjust as needed */
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 1rem;
  /* Corresponds to rounded-2xl */
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  /* Corresponds to shadow-lg */
}

.portrait-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Fix Leaflet images */
.leaflet-control-layers-toggle {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC");
  width: 36px;
  height: 36px;
}

/* Source: assets/index.css */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane>svg,
.leaflet-pane>canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0
}

.leaflet-container {
  overflow: hidden
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none
}

.leaflet-tile::-moz-selection {
  background: transparent
}

.leaflet-tile::selection {
  background: transparent
}

.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast
}

.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block
}

.leaflet-container .leaflet-overlay-pane svg {
  max-width: none !important;
  max-height: none !important
}

.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
  width: auto;
  padding: 0
}

.leaflet-container img.leaflet-tile {
  mix-blend-mode: plus-lighter
}

.leaflet-container.leaflet-touch-zoom {
  touch-action: pan-x pan-y
}

.leaflet-container.leaflet-touch-drag {
  touch-action: none;
  touch-action: pinch-zoom
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  touch-action: none
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, .4)
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden
}

.leaflet-tile-loaded {
  visibility: inherit
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  box-sizing: border-box;
  z-index: 800
}

.leaflet-overlay-pane svg {
  -moz-user-select: none
}

.leaflet-pane {
  z-index: 400
}

.leaflet-tile-pane {
  z-index: 200
}

.leaflet-overlay-pane {
  z-index: 400
}

.leaflet-shadow-pane {
  z-index: 500
}

.leaflet-marker-pane {
  z-index: 600
}

.leaflet-tooltip-pane {
  z-index: 650
}

.leaflet-popup-pane {
  z-index: 700
}

.leaflet-map-pane canvas {
  z-index: 100
}

.leaflet-map-pane svg {
  z-index: 200
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute
}

.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted;
  pointer-events: auto
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none
}

.leaflet-top {
  top: 0
}

.leaflet-right {
  right: 0
}

.leaflet-bottom {
  bottom: 0
}

.leaflet-left {
  left: 0
}

.leaflet-control {
  float: left;
  clear: both
}

.leaflet-right .leaflet-control {
  float: right
}

.leaflet-top .leaflet-control {
  margin-top: 10px
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px
}

.leaflet-left .leaflet-control {
  margin-left: 10px
}

.leaflet-right .leaflet-control {
  margin-right: 10px
}

.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  transition: opacity .2s linear
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1
}

.leaflet-zoom-animated {
  transform-origin: 0 0
}

svg.leaflet-zoom-animated {
  will-change: transform
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  transition: transform .25s cubic-bezier(0, 0, .25, 1)
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  transition: none
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden
}

.leaflet-interactive {
  cursor: pointer
}

.leaflet-grab {
  cursor: grab
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: grabbing
}

.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane>svg path,
.leaflet-tile-container {
  pointer-events: none
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane>svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
  pointer-events: visiblePainted;
  pointer-events: auto
}

.leaflet-container {
  background: #ddd;
  outline-offset: 1px
}

.leaflet-container a {
  color: #0078a8
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: #ffffff80
}

.leaflet-container {
  font-family: Helvetica Neue, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-size: .75rem;
  line-height: 1.5
}

.leaflet-bar {
  box-shadow: 0 1px 5px #000000a6;
  border-radius: 4px
}

.leaflet-bar a {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: #000
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block
}

.leaflet-bar a:hover,
.leaflet-bar a:focus {
  background-color: #f4f4f4
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px
}

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: 700 18px Lucida Console, Monaco, monospace;
  text-indent: 1px
}

.leaflet-touch .leaflet-control-zoom-in,
.leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px
}

.leaflet-control-layers {
  box-shadow: 0 1px 5px #0006;
  background: #fff;
  border-radius: 5px
}

.leaflet-control-layers-toggle {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);
  width: 36px;
  height: 36px
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);
  background-size: 26px 26px
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px
}

.leaflet-control-layers label {
  display: block;
  font-size: 13px;
  font-size: 1.08333em
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px
}

.leaflet-default-icon-path {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)
}

.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: #fffc;
  margin: 0
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
  line-height: 1.4
}

.leaflet-control-attribution a {
  text-decoration: none
}

.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
  text-decoration: underline
}

.leaflet-attribution-flag {
  display: inline !important;
  vertical-align: baseline !important;
  width: 1em;
  height: .6669em
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  white-space: nowrap;
  box-sizing: border-box;
  background: #fffc;
  text-shadow: 1px 1px #fff
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, .2);
  background-clip: padding-box
}

.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px
}

.leaflet-popup-content {
  margin: 13px 24px 13px 20px;
  line-height: 1.3;
  font-size: 13px;
  font-size: 1.08333em;
  min-height: 1px
}

.leaflet-popup-content p {
  margin: 1.3em 0
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-top: -1px;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  pointer-events: auto;
  transform: rotate(45deg)
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: #fff;
  color: #333;
  box-shadow: 0 3px 14px #0006
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  width: 24px;
  height: 24px;
  font: 16px/24px Tahoma, Verdana, sans-serif;
  color: #757575;
  text-decoration: none;
  background: transparent
}

.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
  color: #585858
}

.leaflet-popup-scrolled {
  overflow: auto
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  -ms-zoom: 1
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=.70710678, M12=.70710678, M21=-.70710678, M22=.70710678)
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999
}

.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666
}

.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px #0006
}

.leaflet-tooltip.leaflet-interactive {
  cursor: pointer;
  pointer-events: auto
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: ""
}

.leaflet-tooltip-bottom {
  margin-top: 6px
}

.leaflet-tooltip-top {
  margin-top: -6px
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff
}

.leaflet-tooltip-left {
  margin-left: -6px
}

.leaflet-tooltip-right {
  margin-left: 6px
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff
}

@media print {
  .leaflet-control {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
  }
}

*,
: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 / .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 / .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: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";
  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;
  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: -.25em
}

sup {
  top: -.5em
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea {
  font-family: 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::-moz-placeholder,
textarea::-moz-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
}

:root {
  --background: 0 0% 98%;
  --foreground: 155 25% 12%;
  --card: 0 0% 100%;
  --card-foreground: 155 25% 12%;
  --popover: 0 0% 100%;
  --popover-foreground: 155 25% 15%;
  --primary: 112 55% 25%;
  --primary-foreground: 0 0% 98%;
  --primary-glow: 142 60% 55%;
  --secondary: 147 20% 95%;
  --secondary-foreground: 155 25% 15%;
  --muted: 147 15% 94%;
  --muted-foreground: 155 15% 45%;
  --accent: 155 25% 14%;
  --accent-foreground: 0 0% 98%;
  --accent-glow: 155 20% 20%;
  --tech-dark: 155 25% 14%;
  --tech-dark-light: 155 20% 20%;
  --success: 142 76% 36%;
  --success-foreground: 0 0% 98%;
  --destructive: 0 84.2% 60.2%;
  --destructive-foreground: 0 0% 98%;
  --border: 147 25% 88%;
  --input: 147 25% 88%;
  --ring: 142 76% 36%;
  --gradient-hero: hsl(112 55% 25%);
  --gradient-card: linear-gradient(145deg, hsl(0 0% 100%), hsl(147 20% 98%));
  --gradient-tech: linear-gradient(125deg, hsl(155 25% 14%), hsl(155 20% 20%));
  --gradient-subtle: linear-gradient(180deg, hsl(147 15% 97%), hsl(147 20% 94%));
  --shadow-card: 0 4px 25px -2px hsl(0 0% 0% / .08), 0 2px 10px -2px hsl(0 0% 0% / .04);
  --shadow-hero: 0 25px 50px -10px hsl(0 0% 0% / .15), 0 10px 30px -5px hsl(142 76% 36% / .2);
  --shadow-tech: 0 8px 25px -5px hsl(155 25% 14% / .2);
  --transition-smooth: all .5s cubic-bezier(.4, 0, .2, 1);
  --transition-bounce: all .4s cubic-bezier(.175, .885, .32, 1.275);
  --radius: .5rem;
  --sidebar-background: 0 0% 98%;
  --sidebar-foreground: 240 5.3% 26.1%;
  --sidebar-primary: 240 5.9% 10%;
  --sidebar-primary-foreground: 0 0% 98%;
  --sidebar-accent: 240 4.8% 95.9%;
  --sidebar-accent-foreground: 240 5.9% 10%;
  --sidebar-border: 220 13% 91%;
  --sidebar-ring: 217.2 91.2% 59.8%
}

.dark {
  --background: 155 25% 8%;
  --foreground: 147 20% 95%;
  --card: 155 20% 10%;
  --card-foreground: 147 20% 95%;
  --popover: 155 20% 10%;
  --popover-foreground: 147 20% 95%;
  --primary: 142 60% 55%;
  --primary-foreground: 155 25% 8%;
  --primary-glow: 142 76% 36%;
  --secondary: 155 15% 15%;
  --secondary-foreground: 147 20% 95%;
  --muted: 155 10% 18%;
  --muted-foreground: 155 5% 65%;
  --accent: 155 20% 18%;
  --accent-foreground: 155 25% 8%;
  --accent-glow: 155 15% 25%;
  --tech-dark: 155 20% 18%;
  --tech-dark-light: 155 15% 25%;
  --success: 142 60% 55%;
  --success-foreground: 155 25% 8%;
  --destructive: 0 75% 55%;
  --destructive-foreground: 147 20% 95%;
  --border: 155 15% 20%;
  --input: 155 15% 20%;
  --ring: 142 60% 55%;
  --gradient-hero: linear-gradient(135deg, hsl(142 60% 55%), hsl(142 76% 36%));
  --gradient-card: linear-gradient(145deg, hsl(155 20% 10%), hsl(155 15% 15%));
  --gradient-tech: linear-gradient(125deg, hsl(155 20% 18%), hsl(155 15% 25%));
  --gradient-subtle: linear-gradient(180deg, hsl(155 15% 12%), hsl(155 10% 18%));
  --shadow-card: 0 4px 20px -2px hsl(0 0% 0% / .3);
  --shadow-hero: 0 20px 40px -10px hsl(0 0% 0% / .4);
  --shadow-tech: 0 8px 25px -5px hsl(155 20% 18% / .15);
  --sidebar-background: 240 5.9% 10%;
  --sidebar-foreground: 240 4.8% 95.9%;
  --sidebar-primary: 224.3 76.3% 48%;
  --sidebar-primary-foreground: 0 0% 100%;
  --sidebar-accent: 240 3.7% 15.9%;
  --sidebar-accent-foreground: 240 4.8% 95.9%;
  --sidebar-border: 240 3.7% 15.9%;
  --sidebar-ring: 217.2 91.2% 59.8%
}

* {
  border-color: hsl(var(--border))
}

body {
  background-color: hsl(var(--background));
  color: hsl(var(--foreground));
  line-height: 1
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  line-height: 1
}

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 2rem;
  padding-left: 2rem
}

@media (min-width: 1400px) {
  .container {
    max-width: 1400px
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0
}

.pointer-events-none {
  pointer-events: none
}

.pointer-events-auto {
  pointer-events: auto
}

.visible {
  visibility: visible
}

.invisible {
  visibility: hidden
}

.fixed {
  position: fixed
}

.absolute {
  position: absolute
}

.relative {
  position: relative
}

.inset-0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.inset-x-0 {
  left: 0;
  right: 0
}

.inset-y-0 {
  top: 0;
  bottom: 0
}

.-bottom-12 {
  bottom: -3rem
}

.-bottom-4 {
  bottom: -1rem
}

.-left-12 {
  left: -3rem
}

.-right-12 {
  right: -3rem
}

.-right-4 {
  right: -1rem
}

.-top-12 {
  top: -3rem
}

.bottom-0 {
  bottom: 0
}

.bottom-4 {
  bottom: 1rem
}

.bottom-8 {
  bottom: 2rem
}

.left-0 {
  left: 0
}

.left-1 {
  left: .25rem
}

.left-1\/2 {
  left: 50%
}

.left-2 {
  left: .5rem
}

.left-4 {
  left: 1rem
}

.left-8 {
  left: 2rem
}

.left-\[50\%\] {
  left: 50%
}

.right-0 {
  right: 0
}

.right-1 {
  right: .25rem
}

.right-2 {
  right: .5rem
}

.right-3 {
  right: .75rem
}

.right-4 {
  right: 1rem
}

.right-8 {
  right: 2rem
}

.top-0 {
  top: 0
}

.top-1\.5 {
  top: .375rem
}

.top-1\/2 {
  top: 50%
}

.top-2 {
  top: .5rem
}

.top-3\.5 {
  top: .875rem
}

.top-4 {
  top: 1rem
}

.top-8 {
  top: 2rem
}

.top-\[1px\] {
  top: 1px
}

.top-\[50\%\] {
  top: 50%
}

.top-\[60\%\] {
  top: 60%
}

.top-full {
  top: 100%
}

.z-0 {
  z-index: 0
}

.z-10 {
  z-index: 10
}

.z-20 {
  z-index: 20
}

.z-50 {
  z-index: 50
}

.z-\[100\] {
  z-index: 100
}

.z-\[1\] {
  z-index: 1
}

.-mx-1 {
  margin-left: -.25rem;
  margin-right: -.25rem
}

.mx-2 {
  margin-left: .5rem;
  margin-right: .5rem
}

.mx-3\.5 {
  margin-left: .875rem;
  margin-right: .875rem
}

.mx-auto {
  margin-left: auto;
  margin-right: auto
}

.my-0\.5 {
  margin-top: .125rem;
  margin-bottom: .125rem
}

.my-1 {
  margin-top: .25rem;
  margin-bottom: .25rem
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem
}

.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem
}

.-ml-2 {
  margin-left: -.5rem
}

.-ml-4 {
  margin-left: -1rem
}

.-mt-4 {
  margin-top: -1rem
}

.mb-1 {
  margin-bottom: .25rem
}

.mb-12 {
  margin-bottom: 3rem
}

.mb-16 {
  margin-bottom: 4rem
}

.mb-2 {
  margin-bottom: .5rem
}

.mb-20 {
  margin-bottom: 5rem
}

.mb-3 {
  margin-bottom: .75rem
}

.mb-4 {
  margin-bottom: 1rem
}

.mb-6 {
  margin-bottom: 1.5rem
}

.mb-8 {
  margin-bottom: 2rem
}

.ml-1 {
  margin-left: .25rem
}

.ml-auto {
  margin-left: auto
}

.mr-2 {
  margin-right: .5rem
}

.mr-3 {
  margin-right: .75rem
}

.mt-0\.5 {
  margin-top: .125rem
}

.mt-1 {
  margin-top: .25rem
}

.mt-1\.5 {
  margin-top: .375rem
}

.mt-16 {
  margin-top: 4rem
}

.mt-2 {
  margin-top: .5rem
}

.mt-20 {
  margin-top: 5rem
}

.mt-24 {
  margin-top: 6rem
}

.mt-4 {
  margin-top: 1rem
}

.mt-8 {
  margin-top: 2rem
}

.mt-auto {
  margin-top: auto
}

.block {
  display: block
}

.flex {
  display: flex
}

.inline-flex {
  display: inline-flex
}

.table {
  display: table
}

.grid {
  display: grid
}

.hidden {
  display: none
}

.aspect-square {
  aspect-ratio: 1 / 1
}

.aspect-video {
  aspect-ratio: 16 / 9
}

.size-4 {
  width: 1rem;
  height: 1rem
}

.h-1\.5 {
  height: .375rem
}

.h-10 {
  height: 2.5rem
}

.h-11 {
  height: 2.75rem
}

.h-12 {
  height: 3rem
}

.h-14 {
  height: 3.5rem
}

.h-16 {
  height: 4rem
}

.h-2 {
  height: .5rem
}

.h-2\.5 {
  height: .625rem
}

.h-24 {
  height: 6rem
}

.h-3 {
  height: .75rem
}

.h-3\.5 {
  height: .875rem
}

.h-32 {
  height: 8rem
}

.h-4 {
  height: 1rem
}

.h-48 {
  height: 12rem
}

.h-5 {
  height: 1.25rem
}

.h-6 {
  height: 1.5rem
}

.h-7 {
  height: 1.75rem
}

.h-72 {
  height: 18rem
}

.h-8 {
  height: 2rem
}

.h-80 {
  height: 20rem
}

.h-9 {
  height: 2.25rem
}

.h-96 {
  height: 24rem
}

.h-\[1px\] {
  height: 1px
}

.h-\[280px\] {
  height: 280px
}

.h-\[var\(--radix-navigation-menu-viewport-height\)\] {
  height: var(--radix-navigation-menu-viewport-height)
}

.h-\[var\(--radix-select-trigger-height\)\] {
  height: var(--radix-select-trigger-height)
}

.h-auto {
  height: auto
}

.h-full {
  height: 100%
}

.h-px {
  height: 1px
}

.h-svh {
  height: 100svh
}

.max-h-0 {
  max-height: 0px
}

.max-h-96 {
  max-height: 24rem
}

.max-h-\[300px\] {
  max-height: 300px
}

.max-h-screen {
  max-height: 100vh
}

.min-h-0 {
  min-height: 0px
}

.min-h-\[200px\] {
  min-height: 200px
}

.min-h-\[80px\] {
  min-height: 80px
}

.min-h-screen {
  min-height: 100vh
}

.min-h-svh {
  min-height: 100svh
}

.w-0 {
  width: 0px
}

.w-1 {
  width: .25rem
}

.w-10 {
  width: 2.5rem
}

.w-11 {
  width: 2.75rem
}

.w-12 {
  width: 3rem
}

.w-2 {
  width: .5rem
}

.w-2\.5 {
  width: .625rem
}

.w-3 {
  width: .75rem
}

.w-3\.5 {
  width: .875rem
}

.w-3\/4 {
  width: 75%
}

.w-32 {
  width: 8rem
}

.w-4 {
  width: 1rem
}

.w-5 {
  width: 1.25rem
}

.w-6 {
  width: 1.5rem
}

.w-64 {
  width: 16rem
}

.w-7 {
  width: 1.75rem
}

.w-72 {
  width: 18rem
}

.w-8 {
  width: 2rem
}

.w-80 {
  width: 20rem
}

.w-9 {
  width: 2.25rem
}

.w-96 {
  width: 24rem
}

.w-\[--sidebar-width\] {
  width: var(--sidebar-width)
}

.w-\[100px\] {
  width: 100px
}

.w-\[1px\] {
  width: 1px
}

.w-auto {
  width: auto
}

.w-fit {
  width: -moz-fit-content;
  width: fit-content
}

.w-full {
  width: 100%
}

.w-max {
  width: -moz-max-content;
  width: max-content
}

.w-px {
  width: 1px
}

.min-w-0 {
  min-width: 0px
}

.min-w-5 {
  min-width: 1.25rem
}

.min-w-\[12rem\] {
  min-width: 12rem
}

.min-w-\[280px\] {
  min-width: 280px
}

.min-w-\[8rem\] {
  min-width: 8rem
}

.min-w-\[var\(--radix-select-trigger-width\)\] {
  min-width: var(--radix-select-trigger-width)
}

.max-w-2xl {
  max-width: 42rem
}

.max-w-3xl {
  max-width: 48rem
}

.max-w-4xl {
  max-width: 56rem
}

.max-w-5xl {
  max-width: 64rem
}

.max-w-6xl {
  max-width: 72rem
}

.max-w-\[--skeleton-width\] {
  max-width: var(--skeleton-width)
}

.max-w-lg {
  max-width: 32rem
}

.max-w-max {
  max-width: -moz-max-content;
  max-width: max-content
}

.max-w-md {
  max-width: 28rem
}

.flex-1 {
  flex: 1 1 0%
}

.flex-shrink-0,
.shrink-0 {
  flex-shrink: 0
}

.flex-grow,
.grow {
  flex-grow: 1
}

.grow-0 {
  flex-grow: 0
}

.basis-4\/5 {
  flex-basis: 80%
}

.basis-full {
  flex-basis: 100%
}

.caption-bottom {
  caption-side: bottom
}

.border-collapse {
  border-collapse: collapse
}

.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-x-36 {
  --tw-translate-x: -9rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-x-px {
  --tw-translate-x: -1px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-y-36 {
  --tw-translate-y: -9rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.translate-x-48 {
  --tw-translate-x: 12rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.translate-x-\[-50\%\] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.translate-x-px {
  --tw-translate-x: 1px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.translate-y-48 {
  --tw-translate-y: 12rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.translate-y-\[-50\%\] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.rotate-45 {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

@keyframes pulse {
  50% {
    opacity: .5
  }
}

.animate-pulse {
  animation: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite
}

.cursor-default {
  cursor: default
}

.cursor-pointer {
  cursor: pointer
}

.touch-none {
  touch-action: none
}

.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

.list-none {
  list-style-type: none
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr))
}

.flex-row {
  flex-direction: row
}

.flex-col {
  flex-direction: column
}

.flex-col-reverse {
  flex-direction: column-reverse
}

.flex-wrap {
  flex-wrap: wrap
}

.items-start {
  align-items: flex-start
}

.items-end {
  align-items: flex-end
}

.items-center {
  align-items: center
}

.items-stretch {
  align-items: stretch
}

.justify-start {
  justify-content: flex-start
}

.justify-center {
  justify-content: center
}

.justify-between {
  justify-content: space-between
}

.gap-1 {
  gap: .25rem
}

.gap-1\.5 {
  gap: .375rem
}

.gap-12 {
  gap: 3rem
}

.gap-16 {
  gap: 4rem
}

.gap-2 {
  gap: .5rem
}

.gap-3 {
  gap: .75rem
}

.gap-4 {
  gap: 1rem
}

.gap-6 {
  gap: 1.5rem
}

.gap-8 {
  gap: 2rem
}

.space-x-1>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(.25rem * var(--tw-space-x-reverse));
  margin-left: calc(.25rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-2>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(.5rem * var(--tw-space-x-reverse));
  margin-left: calc(.5rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-3>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(.75rem * var(--tw-space-x-reverse));
  margin-left: calc(.75rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-4>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-6>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1.5rem * var(--tw-space-x-reverse));
  margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-x-8>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(2rem * var(--tw-space-x-reverse));
  margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)))
}

.space-y-1>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.25rem * var(--tw-space-y-reverse))
}

.space-y-1\.5>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.375rem * var(--tw-space-y-reverse))
}

.space-y-2>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.5rem * var(--tw-space-y-reverse))
}

.space-y-3>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.75rem * var(--tw-space-y-reverse))
}

.space-y-4>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse))
}

.space-y-6>:not([hidden])~:not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse))
}

.overflow-auto {
  overflow: auto
}

.overflow-hidden {
  overflow: hidden
}

.overflow-x-auto {
  overflow-x: auto
}

.overflow-y-auto {
  overflow-y: auto
}

.overflow-x-hidden {
  overflow-x: hidden
}

.whitespace-nowrap {
  white-space: nowrap
}

.break-words {
  overflow-wrap: break-word
}

.rounded-2xl {
  border-radius: 1rem
}

.rounded-\[2px\] {
  border-radius: 2px
}

.rounded-\[inherit\] {
  border-radius: inherit
}

.rounded-full {
  border-radius: 9999px
}

.rounded-lg {
  border-radius: var(--radius)
}

.rounded-md {
  border-radius: calc(var(--radius) - 2px)
}

.rounded-sm {
  border-radius: calc(var(--radius) - 4px)
}

.rounded-xl {
  border-radius: .75rem
}

.rounded-t-\[10px\] {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px
}

.rounded-tl-sm {
  border-top-left-radius: calc(var(--radius) - 4px)
}

.border {
  border-width: 1px
}

.border-0 {
  border-width: 0px
}

.border-2 {
  border-width: 2px
}

.border-\[1\.5px\] {
  border-width: 1.5px
}

.border-y {
  border-top-width: 1px;
  border-bottom-width: 1px
}

.border-b {
  border-bottom-width: 1px
}

.border-b-2 {
  border-bottom-width: 2px
}

.border-l {
  border-left-width: 1px
}

.border-r {
  border-right-width: 1px
}

.border-t {
  border-top-width: 1px
}

.border-dashed {
  border-style: dashed
}

.border-\[--color-border\] {
  border-color: var(--color-border)
}

.border-background\/20 {
  border-color: hsl(var(--background) / .2)
}

.border-blue-200 {
  --tw-border-opacity: 1;
  border-color: rgb(191 219 254 / var(--tw-border-opacity, 1))
}

.border-border {
  border-color: hsl(var(--border))
}

.border-border\/30 {
  border-color: hsl(var(--border) / .3)
}

.border-border\/50 {
  border-color: hsl(var(--border) / .5)
}

.border-destructive {
  border-color: hsl(var(--destructive))
}

.border-destructive\/50 {
  border-color: hsl(var(--destructive) / .5)
}

.border-green-200 {
  --tw-border-opacity: 1;
  border-color: rgb(187 247 208 / var(--tw-border-opacity, 1))
}

.border-input {
  border-color: hsl(var(--input))
}

.border-orange-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 215 170 / var(--tw-border-opacity, 1))
}

.border-primary {
  border-color: hsl(var(--primary))
}

.border-purple-200 {
  --tw-border-opacity: 1;
  border-color: rgb(233 213 255 / var(--tw-border-opacity, 1))
}

.border-red-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 202 202 / var(--tw-border-opacity, 1))
}

.border-sidebar-border {
  border-color: hsl(var(--sidebar-border))
}

.border-slate-200 {
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1))
}

.border-transparent {
  border-color: transparent
}

.border-l-transparent {
  border-left-color: transparent
}

.border-t-transparent {
  border-top-color: transparent
}

.bg-\[\#172620\] {
  --tw-bg-opacity: 1;
  background-color: rgb(23 38 32 / var(--tw-bg-opacity, 1))
}

.bg-\[--color-bg\] {
  background-color: var(--color-bg)
}

.bg-accent {
  background-color: hsl(var(--accent))
}

.bg-background {
  background-color: hsl(var(--background))
}

.bg-background\/20 {
  background-color: hsl(var(--background) / .2)
}

.bg-background\/85 {
  background-color: hsl(var(--background) / .85)
}

.bg-black\/80 {
  background-color: #000c
}

.bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1))
}

.bg-border {
  background-color: hsl(var(--border))
}

.bg-card {
  background-color: hsl(var(--card))
}

.bg-destructive {
  background-color: hsl(var(--destructive))
}

.bg-foreground {
  background-color: hsl(var(--foreground))
}

.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1))
}

.bg-green-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity, 1))
}

.bg-green-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1))
}

.bg-green-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1))
}

.bg-muted {
  background-color: hsl(var(--muted))
}

.bg-muted\/50 {
  background-color: hsl(var(--muted) / .5)
}

.bg-orange-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1))
}

.bg-popover {
  background-color: hsl(var(--popover))
}

.bg-primary {
  background-color: hsl(var(--primary))
}

.bg-purple-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(250 245 255 / var(--tw-bg-opacity, 1))
}

.bg-red-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1))
}

.bg-red-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1))
}

.bg-secondary {
  background-color: hsl(var(--secondary))
}

.bg-sidebar {
  background-color: hsl(var(--sidebar-background))
}

.bg-sidebar-border {
  background-color: hsl(var(--sidebar-border))
}

.bg-slate-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1))
}

.bg-slate-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1))
}

.bg-slate-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1))
}

.bg-slate-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1))
}

.bg-success {
  background-color: hsl(var(--success))
}

.bg-transparent {
  background-color: transparent
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1))
}

.bg-white\/10 {
  background-color: #ffffff1a
}

.bg-white\/50 {
  background-color: #ffffff80
}

.bg-white\/80 {
  background-color: #fffc
}

.bg-gradient-card {
  background-image: var(--gradient-card)
}

.bg-gradient-hero {
  background-image: var(--gradient-hero)
}

.bg-gradient-subtle {
  background-image: var(--gradient-subtle)
}

.bg-gradient-tech {
  background-image: var(--gradient-tech)
}

.bg-gradient-to-b {
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops))
}

.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops))
}

.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops))
}

.from-green-100 {
  --tw-gradient-from: #dcfce7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(220 252 231 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.from-green-50 {
  --tw-gradient-from: #f0fdf4 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 253 244 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.from-slate-100 {
  --tw-gradient-from: #f1f5f9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(241 245 249 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.from-slate-300 {
  --tw-gradient-from: #cbd5e1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(203 213 225 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.from-slate-400 {
  --tw-gradient-from: #94a3b8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(148 163 184 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.from-slate-50 {
  --tw-gradient-from: #f8fafc var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.to-blue-50 {
  --tw-gradient-to: #eff6ff var(--tw-gradient-to-position)
}

.to-green-200 {
  --tw-gradient-to: #bbf7d0 var(--tw-gradient-to-position)
}

.to-slate-100 {
  --tw-gradient-to: #f1f5f9 var(--tw-gradient-to-position)
}

.to-slate-200 {
  --tw-gradient-to: #e2e8f0 var(--tw-gradient-to-position)
}

.to-slate-600 {
  --tw-gradient-to: #475569 var(--tw-gradient-to-position)
}

.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position)
}

.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text
}

.fill-current {
  fill: currentColor
}

.fill-yellow-400 {
  fill: #facc15
}

.object-contain {
  -o-object-fit: contain;
  object-fit: contain
}

.object-cover {
  -o-object-fit: cover;
  object-fit: cover
}

.p-0 {
  padding: 0
}

.p-1 {
  padding: .25rem
}

.p-2 {
  padding: .5rem
}

.p-3 {
  padding: .75rem
}

.p-4 {
  padding: 1rem
}

.p-6 {
  padding: 1.5rem
}

.p-8 {
  padding: 2rem
}

.p-\[1px\] {
  padding: 1px
}

.px-1 {
  padding-left: .25rem;
  padding-right: .25rem
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem
}

.px-2 {
  padding-left: .5rem;
  padding-right: .5rem
}

.px-2\.5 {
  padding-left: .625rem;
  padding-right: .625rem
}

.px-3 {
  padding-left: .75rem;
  padding-right: .75rem
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem
}

.py-0\.5 {
  padding-top: .125rem;
  padding-bottom: .125rem
}

.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem
}

.py-1\.5 {
  padding-top: .375rem;
  padding-bottom: .375rem
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem
}

.py-2 {
  padding-top: .5rem;
  padding-bottom: .5rem
}

.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem
}

.py-3 {
  padding-top: .75rem;
  padding-bottom: .75rem
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem
}

.pb-3 {
  padding-bottom: .75rem
}

.pb-4 {
  padding-bottom: 1rem
}

.pl-2 {
  padding-left: .5rem
}

.pl-2\.5 {
  padding-left: .625rem
}

.pl-4 {
  padding-left: 1rem
}

.pl-8 {
  padding-left: 2rem
}

.pr-2 {
  padding-right: .5rem
}

.pr-2\.5 {
  padding-right: .625rem
}

.pr-8 {
  padding-right: 2rem
}

.pt-0 {
  padding-top: 0
}

.pt-1 {
  padding-top: .25rem
}

.pt-3 {
  padding-top: .75rem
}

.pt-4 {
  padding-top: 1rem
}

.pt-6 {
  padding-top: 1.5rem
}

.pt-8 {
  padding-top: 2rem
}

.text-left {
  text-align: left
}

.text-center {
  text-align: center
}

.align-middle {
  vertical-align: middle
}

.font-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem
}

.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem
}

.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem
}

.text-6xl {
  font-size: 3.75rem;
  line-height: 1
}

.text-8xl {
  font-size: 6rem;
  line-height: 1
}

.text-\[0\.8rem\] {
  font-size: .8rem
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem
}

.text-sm {
  font-size: .875rem;
  line-height: 1.25rem
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem
}

.text-xs {
  font-size: .75rem;
  line-height: 1rem
}

.font-bold {
  font-weight: 700
}

.font-medium {
  font-weight: 500
}

.font-normal {
  font-weight: 400
}

.font-semibold {
  font-weight: 600
}

.uppercase {
  text-transform: uppercase
}

.italic {
  font-style: italic
}

.tabular-nums {
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)
}

.leading-none {
  line-height: 1
}

.leading-relaxed {
  line-height: 1.625
}

.tracking-tight {
  letter-spacing: -.025em
}

.tracking-wide {
  letter-spacing: .025em
}

.tracking-widest {
  letter-spacing: .1em
}

.text-accent {
  color: hsl(var(--accent))
}

.text-accent-foreground {
  color: hsl(var(--accent-foreground))
}

.text-background {
  color: hsl(var(--background))
}

.text-background\/80 {
  color: hsl(var(--background) / .8)
}

.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity, 1))
}

.text-card-foreground {
  color: hsl(var(--card-foreground))
}

.text-current {
  color: currentColor
}

.text-destructive {
  color: hsl(var(--destructive))
}

.text-destructive-foreground {
  color: hsl(var(--destructive-foreground))
}

.text-foreground {
  color: hsl(var(--foreground))
}

.text-foreground\/50 {
  color: hsl(var(--foreground) / .5)
}

.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1))
}

.text-green-600 {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1))
}

.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1))
}

.text-green-900 {
  --tw-text-opacity: 1;
  color: rgb(20 83 45 / var(--tw-text-opacity, 1))
}

.text-muted-foreground {
  color: hsl(var(--muted-foreground))
}

.text-popover-foreground {
  color: hsl(var(--popover-foreground))
}

.text-primary {
  color: hsl(var(--primary))
}

.text-primary-foreground {
  color: hsl(var(--primary-foreground))
}

.text-red-600 {
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1))
}

.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1))
}

.text-red-900 {
  --tw-text-opacity: 1;
  color: rgb(127 29 29 / var(--tw-text-opacity, 1))
}

.text-secondary-foreground {
  color: hsl(var(--secondary-foreground))
}

.text-sidebar-foreground {
  color: hsl(var(--sidebar-foreground))
}

.text-sidebar-foreground\/70 {
  color: hsl(var(--sidebar-foreground) / .7)
}

.text-slate-300 {
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1))
}

.text-slate-400 {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1))
}

.text-slate-500 {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1))
}

.text-slate-600 {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1))
}

.text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1))
}

.text-slate-900 {
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1))
}

.text-success {
  color: hsl(var(--success))
}

.text-success-foreground {
  color: hsl(var(--success-foreground))
}

.text-transparent {
  color: transparent
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.text-white\/80 {
  color: #fffc
}

.text-yellow-400 {
  --tw-text-opacity: 1;
  color: rgb(250 204 21 / var(--tw-text-opacity, 1))
}

.underline {
  text-decoration-line: underline
}

.underline-offset-4 {
  text-underline-offset: 4px
}

.opacity-0 {
  opacity: 0
}

.opacity-10 {
  opacity: .1
}

.opacity-100 {
  opacity: 1
}

.opacity-20 {
  opacity: .2
}

.opacity-30 {
  opacity: .3
}

.opacity-40 {
  opacity: .4
}

.opacity-5 {
  opacity: .05
}

.opacity-50 {
  opacity: .5
}

.opacity-60 {
  opacity: .6
}

.opacity-70 {
  opacity: .7
}

.opacity-90 {
  opacity: .9
}

.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\] {
  --tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));
  --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-card {
  --tw-shadow: var(--shadow-card);
  --tw-shadow-colored: var(--shadow-card);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-hero {
  --tw-shadow: var(--shadow-hero);
  --tw-shadow-colored: var(--shadow-hero);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-none {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-card {
  --tw-shadow-color: hsl(var(--card));
  --tw-shadow: var(--tw-shadow-colored)
}

.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px
}

.outline {
  outline-style: solid
}

.ring-0 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
}

.ring-2 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
}

.ring-green-100 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(220 252 231 / var(--tw-ring-opacity, 1))
}

.ring-primary {
  --tw-ring-color: hsl(var(--primary))
}

.ring-ring {
  --tw-ring-color: hsl(var(--ring))
}

.ring-sidebar-ring {
  --tw-ring-color: hsl(var(--sidebar-ring))
}

.ring-offset-background {
  --tw-ring-offset-color: hsl(var(--background))
}

.filter {
  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)
}

.backdrop-blur-lg {
  --tw-backdrop-blur: blur(16px);
  -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);
  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)
}

.backdrop-blur-sm {
  --tw-backdrop-blur: blur(4px);
  -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);
  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)
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-\[left\,right\,width\] {
  transition-property: left, right, width;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-\[margin\,opa\] {
  transition-property: margin, opa;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-\[width\,height\,padding\] {
  transition-property: width, height, padding;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-\[width\] {
  transition-property: width;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.duration-1000 {
  transition-duration: 1s
}

.duration-200 {
  transition-duration: .2s
}

.duration-300 {
  transition-duration: .3s
}

.duration-500 {
  transition-duration: .5s
}

.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1)
}

.ease-linear {
  transition-timing-function: linear
}

@keyframes enter {
  0% {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))
  }
}

@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))
  }
}

.animate-in {
  animation-name: enter;
  animation-duration: .15s;
  --tw-enter-opacity: initial;
  --tw-enter-scale: initial;
  --tw-enter-rotate: initial;
  --tw-enter-translate-x: initial;
  --tw-enter-translate-y: initial
}

.fade-in-0 {
  --tw-enter-opacity: 0
}

.fade-in-80 {
  --tw-enter-opacity: .8
}

.zoom-in-95 {
  --tw-enter-scale: .95
}

.duration-1000 {
  animation-duration: 1s
}

.duration-200 {
  animation-duration: .2s
}

.duration-300 {
  animation-duration: .3s
}

.duration-500 {
  animation-duration: .5s
}

.ease-in-out {
  animation-timing-function: cubic-bezier(.4, 0, .2, 1)
}

.ease-linear {
  animation-timing-function: linear
}

.pb-4 {
  padding-bottom: 3rem
}

.file\:border-0::file-selector-button {
  border-width: 0px
}

.file\:bg-transparent::file-selector-button {
  background-color: transparent
}

.file\:text-sm::file-selector-button {
  font-size: .875rem;
  line-height: 1.25rem
}

.file\:font-medium::file-selector-button {
  font-weight: 500
}

.file\:text-foreground::file-selector-button {
  color: hsl(var(--foreground))
}

.placeholder\:text-muted-foreground::-moz-placeholder {
  color: hsl(var(--muted-foreground))
}

.placeholder\:text-muted-foreground::placeholder {
  color: hsl(var(--muted-foreground))
}

.after\:absolute:after {
  content: var(--tw-content);
  position: absolute
}

.after\:-inset-2:after {
  content: var(--tw-content);
  top: -.5rem;
  right: -.5rem;
  bottom: -.5rem;
  left: -.5rem
}

.after\:inset-y-0:after {
  content: var(--tw-content);
  top: 0;
  bottom: 0
}

.after\:left-1\/2:after {
  content: var(--tw-content);
  left: 50%
}

.after\:w-1:after {
  content: var(--tw-content);
  width: .25rem
}

.after\:w-\[2px\]:after {
  content: var(--tw-content);
  width: 2px
}

.after\:-translate-x-1\/2:after {
  content: var(--tw-content);
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.first\:rounded-l-md:first-child {
  border-top-left-radius: calc(var(--radius) - 2px);
  border-bottom-left-radius: calc(var(--radius) - 2px)
}

.first\:border-l:first-child {
  border-left-width: 1px
}

.last\:mb-0:last-child {
  margin-bottom: 0
}

.last\:rounded-r-md:last-child {
  border-top-right-radius: calc(var(--radius) - 2px);
  border-bottom-right-radius: calc(var(--radius) - 2px)
}

.focus-within\:relative:focus-within {
  position: relative
}

.focus-within\:z-20:focus-within {
  z-index: 20
}

.hover\:-translate-y-1:hover {
  --tw-translate-y: -.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.hover\:-translate-y-2:hover {
  --tw-translate-y: -.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.hover\:translate-x-2:hover {
  --tw-translate-x: .5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.hover\:scale-110:hover {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.hover\:bg-\[\#1f2e26\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 46 38 / var(--tw-bg-opacity, 1))
}

.hover\:bg-accent:hover {
  background-color: hsl(var(--accent))
}

.hover\:bg-background\/30:hover {
  background-color: hsl(var(--background) / .3)
}

.hover\:bg-destructive\/80:hover {
  background-color: hsl(var(--destructive) / .8)
}

.hover\:bg-destructive\/90:hover {
  background-color: hsl(var(--destructive) / .9)
}

.hover\:bg-muted:hover {
  background-color: hsl(var(--muted))
}

.hover\:bg-muted\/50:hover {
  background-color: hsl(var(--muted) / .5)
}

.hover\:bg-primary:hover {
  background-color: hsl(var(--primary))
}

.hover\:bg-primary\/80:hover {
  background-color: hsl(var(--primary) / .8)
}

.hover\:bg-primary\/90:hover {
  background-color: hsl(var(--primary) / .9)
}

.hover\:bg-secondary:hover {
  background-color: hsl(var(--secondary))
}

.hover\:bg-secondary\/80:hover {
  background-color: hsl(var(--secondary) / .8)
}

.hover\:bg-sidebar-accent:hover {
  background-color: hsl(var(--sidebar-accent))
}

.hover\:bg-slate-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1))
}

.hover\:bg-success\/90:hover {
  background-color: hsl(var(--success) / .9)
}

.hover\:text-accent-foreground:hover {
  color: hsl(var(--accent-foreground))
}

.hover\:text-background:hover {
  color: hsl(var(--background))
}

.hover\:text-blue-700:hover {
  --tw-text-opacity: 1;
  color: rgb(29 78 216 / var(--tw-text-opacity, 1))
}

.hover\:text-foreground:hover {
  color: hsl(var(--foreground))
}

.hover\:text-muted-foreground:hover {
  color: hsl(var(--muted-foreground))
}

.hover\:text-primary-foreground:hover {
  color: hsl(var(--primary-foreground))
}

.hover\:text-sidebar-accent-foreground:hover {
  color: hsl(var(--sidebar-accent-foreground))
}

.hover\:text-slate-600:hover {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1))
}

.hover\:underline:hover {
  text-decoration-line: underline
}

.hover\:opacity-100:hover {
  opacity: 1
}

.hover\:opacity-80:hover {
  opacity: .8
}

.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover {
  --tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));
  --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.hover\:shadow-hero:hover {
  --tw-shadow: var(--shadow-hero);
  --tw-shadow-colored: var(--shadow-hero);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.hover\:shadow-tech:hover {
  --tw-shadow: var(--shadow-tech);
  --tw-shadow-colored: var(--shadow-tech);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.hover\:shadow-xl:hover {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.hover\:after\:bg-sidebar-border:hover:after {
  content: var(--tw-content);
  background-color: hsl(var(--sidebar-border))
}

.focus\:bg-accent:focus {
  background-color: hsl(var(--accent))
}

.focus\:bg-primary:focus {
  background-color: hsl(var(--primary))
}

.focus\:text-accent-foreground:focus {
  color: hsl(var(--accent-foreground))
}

.focus\:text-primary-foreground:focus {
  color: hsl(var(--primary-foreground))
}

.focus\:opacity-100:focus {
  opacity: 1
}

.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px
}

.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);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
}

.focus\:ring-ring:focus {
  --tw-ring-color: hsl(var(--ring))
}

.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px
}

.focus-visible\:outline-none:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px
}

.focus-visible\:ring-1:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
}

.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);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
}

.focus-visible\:ring-ring:focus-visible {
  --tw-ring-color: hsl(var(--ring))
}

.focus-visible\:ring-sidebar-ring:focus-visible {
  --tw-ring-color: hsl(var(--sidebar-ring))
}

.focus-visible\:ring-offset-1:focus-visible {
  --tw-ring-offset-width: 1px
}

.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width: 2px
}

.focus-visible\:ring-offset-background:focus-visible {
  --tw-ring-offset-color: hsl(var(--background))
}

.active\:bg-sidebar-accent:active {
  background-color: hsl(var(--sidebar-accent))
}

.active\:text-sidebar-accent-foreground:active {
  color: hsl(var(--sidebar-accent-foreground))
}

.disabled\:pointer-events-none:disabled {
  pointer-events: none
}

.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed
}

.disabled\:opacity-50:disabled {
  opacity: .5
}

.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100 {
  opacity: 1
}

.group:hover .group-hover\:scale-110 {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.group:hover .group-hover\:bg-slate-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1))
}

.group:hover .group-hover\:from-slate-100 {
  --tw-gradient-from: #f1f5f9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(241 245 249 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.group:hover .group-hover\:to-slate-200 {
  --tw-gradient-to: #e2e8f0 var(--tw-gradient-to-position)
}

.group:hover .group-hover\:text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1))
}

.group:hover .group-hover\:text-slate-900 {
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1))
}

.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,
.group:hover .group-hover\:opacity-100 {
  opacity: 1
}

.group.destructive .group-\[\.destructive\]\:border-muted\/40 {
  border-color: hsl(var(--muted) / .4)
}

.group.toaster .group-\[\.toaster\]\:border-border {
  border-color: hsl(var(--border))
}

.group.toast .group-\[\.toast\]\:bg-muted {
  background-color: hsl(var(--muted))
}

.group.toast .group-\[\.toast\]\:bg-primary {
  background-color: hsl(var(--primary))
}

.group.toaster .group-\[\.toaster\]\:bg-background {
  background-color: hsl(var(--background))
}

.group.destructive .group-\[\.destructive\]\:text-red-300 {
  --tw-text-opacity: 1;
  color: rgb(252 165 165 / var(--tw-text-opacity, 1))
}

.group.toast .group-\[\.toast\]\:text-muted-foreground {
  color: hsl(var(--muted-foreground))
}

.group.toast .group-\[\.toast\]\:text-primary-foreground {
  color: hsl(var(--primary-foreground))
}

.group.toaster .group-\[\.toaster\]\:text-foreground {
  color: hsl(var(--foreground))
}

.group.toaster .group-\[\.toaster\]\:shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover {
  border-color: hsl(var(--destructive) / .3)
}

.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover {
  background-color: hsl(var(--destructive))
}

.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover {
  color: hsl(var(--destructive-foreground))
}

.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover {
  --tw-text-opacity: 1;
  color: rgb(254 242 242 / var(--tw-text-opacity, 1))
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus {
  --tw-ring-color: hsl(var(--destructive))
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus {
  --tw-ring-offset-color: #dc2626
}

.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground {
  color: hsl(var(--sidebar-accent-foreground))
}

.peer:disabled~.peer-disabled\:cursor-not-allowed {
  cursor: not-allowed
}

.peer:disabled~.peer-disabled\:opacity-70 {
  opacity: .7
}

.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]) {
  background-color: hsl(var(--sidebar-background))
}

.has-\[\:disabled\]\:opacity-50:has(:disabled) {
  opacity: .5
}

.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8 {
  padding-right: 2rem
}

.aria-disabled\:pointer-events-none[aria-disabled=true] {
  pointer-events: none
}

.aria-disabled\:opacity-50[aria-disabled=true] {
  opacity: .5
}

.aria-selected\:bg-accent[aria-selected=true] {
  background-color: hsl(var(--accent))
}

.aria-selected\:bg-accent\/50[aria-selected=true] {
  background-color: hsl(var(--accent) / .5)
}

.aria-selected\:text-accent-foreground[aria-selected=true] {
  color: hsl(var(--accent-foreground))
}

.aria-selected\:text-muted-foreground[aria-selected=true] {
  color: hsl(var(--muted-foreground))
}

.aria-selected\:opacity-100[aria-selected=true] {
  opacity: 1
}

.aria-selected\:opacity-30[aria-selected=true] {
  opacity: .3
}

.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],
.data-\[disabled\]\:pointer-events-none[data-disabled] {
  pointer-events: none
}

.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical] {
  height: 1px
}

.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical] {
  width: 100%
}

.data-\[side\=bottom\]\:translate-y-1[data-side=bottom] {
  --tw-translate-y: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[side\=left\]\:-translate-x-1[data-side=left] {
  --tw-translate-x: -.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[side\=right\]\:translate-x-1[data-side=right] {
  --tw-translate-x: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[side\=top\]\:-translate-y-1[data-side=top] {
  --tw-translate-y: -.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[state\=checked\]\:translate-x-5[data-state=checked] {
  --tw-translate-x: 1.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],
.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel] {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end] {
  --tw-translate-x: var(--radix-toast-swipe-end-x);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move] {
  --tw-translate-x: var(--radix-toast-swipe-move-x);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

@keyframes accordion-up {
  0% {
    height: var(--radix-accordion-content-height)
  }

  to {
    height: 0
  }
}

.data-\[state\=closed\]\:animate-accordion-up[data-state=closed] {
  animation: accordion-up .2s ease-out
}

@keyframes accordion-down {
  0% {
    height: 0
  }

  to {
    height: var(--radix-accordion-content-height)
  }
}

.data-\[state\=open\]\:animate-accordion-down[data-state=open] {
  animation: accordion-down .2s ease-out
}

.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical] {
  flex-direction: column
}

.data-\[active\=true\]\:bg-sidebar-accent[data-active=true] {
  background-color: hsl(var(--sidebar-accent))
}

.data-\[active\]\:bg-accent\/50[data-active] {
  background-color: hsl(var(--accent) / .5)
}

.data-\[selected\=\'true\'\]\:bg-accent[data-selected=true] {
  background-color: hsl(var(--accent))
}

.data-\[state\=active\]\:bg-background[data-state=active] {
  background-color: hsl(var(--background))
}

.data-\[state\=checked\]\:bg-primary[data-state=checked] {
  background-color: hsl(var(--primary))
}

.data-\[state\=on\]\:bg-accent[data-state=on],
.data-\[state\=open\]\:bg-accent[data-state=open] {
  background-color: hsl(var(--accent))
}

.data-\[state\=open\]\:bg-accent\/50[data-state=open] {
  background-color: hsl(var(--accent) / .5)
}

.data-\[state\=open\]\:bg-secondary[data-state=open] {
  background-color: hsl(var(--secondary))
}

.data-\[state\=selected\]\:bg-muted[data-state=selected] {
  background-color: hsl(var(--muted))
}

.data-\[state\=unchecked\]\:bg-input[data-state=unchecked] {
  background-color: hsl(var(--input))
}

.data-\[active\=true\]\:font-medium[data-active=true] {
  font-weight: 500
}

.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true] {
  color: hsl(var(--sidebar-accent-foreground))
}

.data-\[selected\=true\]\:text-accent-foreground[data-selected=true] {
  color: hsl(var(--accent-foreground))
}

.data-\[state\=active\]\:text-foreground[data-state=active] {
  color: hsl(var(--foreground))
}

.data-\[state\=checked\]\:text-primary-foreground[data-state=checked] {
  color: hsl(var(--primary-foreground))
}

.data-\[state\=on\]\:text-accent-foreground[data-state=on],
.data-\[state\=open\]\:text-accent-foreground[data-state=open] {
  color: hsl(var(--accent-foreground))
}

.data-\[state\=open\]\:text-muted-foreground[data-state=open] {
  color: hsl(var(--muted-foreground))
}

.data-\[disabled\=true\]\:opacity-50[data-disabled=true],
.data-\[disabled\]\:opacity-50[data-disabled] {
  opacity: .5
}

.data-\[state\=open\]\:opacity-100[data-state=open] {
  opacity: 1
}

.data-\[state\=active\]\:shadow-sm[data-state=active] {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.data-\[swipe\=move\]\:transition-none[data-swipe=move] {
  transition-property: none
}

.data-\[state\=closed\]\:duration-300[data-state=closed] {
  transition-duration: .3s
}

.data-\[state\=open\]\:duration-500[data-state=open] {
  transition-duration: .5s
}

.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],
.data-\[state\=open\]\:animate-in[data-state=open],
.data-\[state\=visible\]\:animate-in[data-state=visible] {
  animation-name: enter;
  animation-duration: .15s;
  --tw-enter-opacity: initial;
  --tw-enter-scale: initial;
  --tw-enter-rotate: initial;
  --tw-enter-translate-x: initial;
  --tw-enter-translate-y: initial
}

.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-],
.data-\[state\=closed\]\:animate-out[data-state=closed],
.data-\[state\=hidden\]\:animate-out[data-state=hidden],
.data-\[swipe\=end\]\:animate-out[data-swipe=end] {
  animation-name: exit;
  animation-duration: .15s;
  --tw-exit-opacity: initial;
  --tw-exit-scale: initial;
  --tw-exit-rotate: initial;
  --tw-exit-translate-x: initial;
  --tw-exit-translate-y: initial
}

.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-] {
  --tw-enter-opacity: 0
}

.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],
.data-\[state\=closed\]\:fade-out-0[data-state=closed] {
  --tw-exit-opacity: 0
}

.data-\[state\=closed\]\:fade-out-80[data-state=closed] {
  --tw-exit-opacity: .8
}

.data-\[state\=hidden\]\:fade-out[data-state=hidden] {
  --tw-exit-opacity: 0
}

.data-\[state\=open\]\:fade-in-0[data-state=open],
.data-\[state\=visible\]\:fade-in[data-state=visible] {
  --tw-enter-opacity: 0
}

.data-\[state\=closed\]\:zoom-out-95[data-state=closed] {
  --tw-exit-scale: .95
}

.data-\[state\=open\]\:zoom-in-90[data-state=open] {
  --tw-enter-scale: .9
}

.data-\[state\=open\]\:zoom-in-95[data-state=open] {
  --tw-enter-scale: .95
}

.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end] {
  --tw-enter-translate-x: 13rem
}

.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start] {
  --tw-enter-translate-x: -13rem
}

.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end] {
  --tw-exit-translate-x: 13rem
}

.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start] {
  --tw-exit-translate-x: -13rem
}

.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom] {
  --tw-enter-translate-y: -.5rem
}

.data-\[side\=left\]\:slide-in-from-right-2[data-side=left] {
  --tw-enter-translate-x: .5rem
}

.data-\[side\=right\]\:slide-in-from-left-2[data-side=right] {
  --tw-enter-translate-x: -.5rem
}

.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top] {
  --tw-enter-translate-y: .5rem
}

.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed] {
  --tw-exit-translate-y: 100%
}

.data-\[state\=closed\]\:slide-out-to-left[data-state=closed] {
  --tw-exit-translate-x: -100%
}

.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed] {
  --tw-exit-translate-x: -50%
}

.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],
.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed] {
  --tw-exit-translate-x: 100%
}

.data-\[state\=closed\]\:slide-out-to-top[data-state=closed] {
  --tw-exit-translate-y: -100%
}

.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed] {
  --tw-exit-translate-y: -48%
}

.data-\[state\=open\]\:slide-in-from-bottom[data-state=open] {
  --tw-enter-translate-y: 100%
}

.data-\[state\=open\]\:slide-in-from-left[data-state=open] {
  --tw-enter-translate-x: -100%
}

.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open] {
  --tw-enter-translate-x: -50%
}

.data-\[state\=open\]\:slide-in-from-right[data-state=open] {
  --tw-enter-translate-x: 100%
}

.data-\[state\=open\]\:slide-in-from-top[data-state=open] {
  --tw-enter-translate-y: -100%
}

.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open] {
  --tw-enter-translate-y: -48%
}

.data-\[state\=open\]\:slide-in-from-top-full[data-state=open] {
  --tw-enter-translate-y: -100%
}

.data-\[state\=closed\]\:duration-300[data-state=closed] {
  animation-duration: .3s
}

.data-\[state\=open\]\:duration-500[data-state=open] {
  animation-duration: .5s
}

.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after {
  content: var(--tw-content);
  left: 0
}

.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after {
  content: var(--tw-content);
  height: .25rem
}

.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after {
  content: var(--tw-content);
  width: 100%
}

.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after {
  content: var(--tw-content);
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after {
  content: var(--tw-content);
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open] {
  background-color: hsl(var(--sidebar-accent))
}

.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open] {
  color: hsl(var(--sidebar-accent-foreground))
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\] {
  left: calc(var(--sidebar-width) * -1)
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\] {
  right: calc(var(--sidebar-width) * -1)
}

.group[data-side=left] .group-data-\[side\=left\]\:-right-4 {
  right: -1rem
}

.group[data-side=right] .group-data-\[side\=right\]\:left-0 {
  left: 0
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8 {
  margin-top: -2rem
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden {
  display: none
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8 {
  width: 2rem !important;
  height: 2rem !important
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\] {
  width: var(--sidebar-width-icon)
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\] {
  width: calc(var(--sidebar-width-icon) + 1rem)
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\] {
  width: calc(var(--sidebar-width-icon) + 1rem + 2px)
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0 {
  width: 0px
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.group[data-side=right] .group-data-\[side\=right\]\:rotate-180,
.group[data-state=open] .group-data-\[state\=open\]\:rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden {
  overflow: hidden
}

.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg {
  border-radius: var(--radius)
}

.group[data-variant=floating] .group-data-\[variant\=floating\]\:border {
  border-width: 1px
}

.group[data-side=left] .group-data-\[side\=left\]\:border-r {
  border-right-width: 1px
}

.group[data-side=right] .group-data-\[side\=right\]\:border-l {
  border-left-width: 1px
}

.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border {
  border-color: hsl(var(--sidebar-border))
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0 {
  padding: 0 !important
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2 {
  padding: .5rem !important
}

.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0 {
  opacity: 0
}

.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after {
  content: var(--tw-content);
  left: 100%
}

.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover {
  background-color: hsl(var(--sidebar-background))
}

.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5 {
  top: .375rem
}

.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5 {
  top: .625rem
}

.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1 {
  top: .25rem
}

.peer[data-variant=inset]~.peer-data-\[variant\=inset\]\:min-h-\[calc\(100svh-theme\(spacing\.4\)\)\] {
  min-height: calc(100svh - 1rem)
}

.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground {
  color: hsl(var(--sidebar-accent-foreground))
}

.dark\:border-destructive:is(.dark *) {
  border-color: hsl(var(--destructive))
}

@media (min-width: 640px) {
  .sm\:bottom-0 {
    bottom: 0
  }

  .sm\:right-0 {
    right: 0
  }

  .sm\:top-auto {
    top: auto
  }

  .sm\:mt-0 {
    margin-top: 0
  }

  .sm\:flex {
    display: flex
  }

  .sm\:max-w-sm {
    max-width: 24rem
  }

  .sm\:flex-row {
    flex-direction: row
  }

  .sm\:flex-col {
    flex-direction: column
  }

  .sm\:justify-end {
    justify-content: flex-end
  }

  .sm\:gap-2\.5 {
    gap: .625rem
  }

  .sm\:space-x-2>:not([hidden])~:not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(.5rem * var(--tw-space-x-reverse));
    margin-left: calc(.5rem * calc(1 - var(--tw-space-x-reverse)))
  }

  .sm\:space-x-4>:not([hidden])~:not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)))
  }

  .sm\:space-y-0>:not([hidden])~:not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse))
  }

  .sm\:rounded-lg {
    border-radius: var(--radius)
  }

  .sm\:text-left {
    text-align: left
  }

  .data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open] {
    --tw-enter-translate-y: 100%
  }
}

@media (min-width: 768px) {
  .md\:absolute {
    position: absolute
  }

  .md\:-ml-4 {
    margin-left: -1rem
  }

  .md\:mb-3 {
    margin-bottom: .75rem
  }

  .md\:block {
    display: block
  }

  .md\:flex {
    display: flex
  }

  .md\:hidden {
    display: none
  }

  .md\:h-96 {
    height: 24rem
  }

  .md\:min-h-\[120px\] {
    min-height: 120px
  }

  .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] {
    width: var(--radix-navigation-menu-viewport-width)
  }

  .md\:w-auto {
    width: auto
  }

  .md\:max-w-\[420px\] {
    max-width: 420px
  }

  .md\:basis-1\/2 {
    flex-basis: 50%
  }

  .md\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr))
  }

  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
  }

  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr))
  }

  .md\:flex-row {
    flex-direction: row
  }

  .md\:justify-start {
    justify-content: flex-start
  }

  .md\:space-y-0>:not([hidden])~:not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse))
  }

  .md\:p-6 {
    padding: 1.5rem
  }

  .md\:p-8 {
    padding: 2rem
  }

  .md\:pl-4 {
    padding-left: 1rem
  }

  .md\:text-left {
    text-align: left
  }

  .md\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem
  }

  .md\:text-5xl {
    font-size: 3rem;
    line-height: 1
  }

  .md\:text-base {
    font-size: 1rem;
    line-height: 1.5rem
  }

  .md\:text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem
  }

  .md\:text-sm {
    font-size: .875rem;
    line-height: 1.25rem
  }

  .md\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem
  }

  .md\:opacity-0 {
    opacity: 0
  }

  .after\:md\:hidden:after {
    content: var(--tw-content);
    display: none
  }

  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2 {
    margin: .5rem
  }

  .peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2 {
    margin-left: .5rem
  }

  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0 {
    margin-left: 0
  }

  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl {
    border-radius: .75rem
  }

  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow {
    --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);
    --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
  }
}

@media (min-width: 1024px) {
  .lg\:col-span-1 {
    grid-column: span 1 / span 1
  }

  .lg\:ml-auto {
    margin-left: auto
  }

  .lg\:mr-0 {
    margin-right: 0
  }

  .lg\:basis-1\/2 {
    flex-basis: 50%
  }

  .lg\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr))
  }

  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
  }

  .lg\:grid-cols-\[1fr\,2fr\] {
    grid-template-columns: 1fr 2fr
  }

  .lg\:flex-row {
    flex-direction: row
  }

  .lg\:flex-row-reverse {
    flex-direction: row-reverse
  }
}

.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]) {
  background-color: hsl(var(--accent))
}

.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child {
  border-top-left-radius: calc(var(--radius) - 2px);
  border-bottom-left-radius: calc(var(--radius) - 2px)
}

.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child {
  border-top-right-radius: calc(var(--radius) - 2px);
  border-bottom-right-radius: calc(var(--radius) - 2px)
}

.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside) {
  background-color: hsl(var(--accent) / .5)
}

.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end) {
  border-top-right-radius: calc(var(--radius) - 2px);
  border-bottom-right-radius: calc(var(--radius) - 2px)
}

.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) {
  padding-right: 0
}

.\[\&\>button\]\:hidden>button {
  display: none
}

.\[\&\>span\:last-child\]\:truncate>span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.\[\&\>span\]\:line-clamp-1>span {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1
}

.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div {
  --tw-translate-y: -3px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.\[\&\>svg\]\:absolute>svg {
  position: absolute
}

.\[\&\>svg\]\:left-4>svg {
  left: 1rem
}

.\[\&\>svg\]\:top-4>svg {
  top: 1rem
}

.\[\&\>svg\]\:size-3\.5>svg {
  width: .875rem;
  height: .875rem
}

.\[\&\>svg\]\:size-4>svg {
  width: 1rem;
  height: 1rem
}

.\[\&\>svg\]\:h-2\.5>svg {
  height: .625rem
}

.\[\&\>svg\]\:h-3>svg {
  height: .75rem
}

.\[\&\>svg\]\:w-2\.5>svg {
  width: .625rem
}

.\[\&\>svg\]\:w-3>svg {
  width: .75rem
}

.\[\&\>svg\]\:shrink-0>svg {
  flex-shrink: 0
}

.\[\&\>svg\]\:text-destructive>svg {
  color: hsl(var(--destructive))
}

.\[\&\>svg\]\:text-foreground>svg {
  color: hsl(var(--foreground))
}

.\[\&\>svg\]\:text-muted-foreground>svg {
  color: hsl(var(--muted-foreground))
}

.\[\&\>svg\]\:text-sidebar-accent-foreground>svg {
  color: hsl(var(--sidebar-accent-foreground))
}

.\[\&\>svg\~\*\]\:pl-7>svg~* {
  padding-left: 1.75rem
}

.\[\&\>tr\]\:last\:border-b-0:last-child>tr {
  border-bottom-width: 0px
}

.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text {
  fill: hsl(var(--muted-foreground))
}

.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] {
  stroke: hsl(var(--border) / .5)
}

.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor {
  stroke: hsl(var(--border))
}

.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"] {
  stroke: transparent
}

.\[\&_\.recharts-layer\]\:outline-none .recharts-layer {
  outline: 2px solid transparent;
  outline-offset: 2px
}

.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"] {
  stroke: hsl(var(--border))
}

.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,
.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor {
  fill: hsl(var(--muted))
}

.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"] {
  stroke: hsl(var(--border))
}

.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"] {
  stroke: transparent
}

.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,
.\[\&_\.recharts-surface\]\:outline-none .recharts-surface {
  outline: 2px solid transparent;
  outline-offset: 2px
}

.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
  padding-left: .5rem;
  padding-right: .5rem
}

.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
  padding-top: .375rem;
  padding-bottom: .375rem
}

.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
  font-size: .75rem;
  line-height: 1rem
}

.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
  font-weight: 500
}

.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
  color: hsl(var(--muted-foreground))
}

.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group] {
  padding-top: 0
}

.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
  padding-left: .5rem;
  padding-right: .5rem
}

.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
  height: 1.25rem
}

.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
  width: 1.25rem
}

.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
  height: 3rem
}

.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
  padding-left: .5rem;
  padding-right: .5rem
}

.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
  padding-top: .75rem;
  padding-bottom: .75rem
}

.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
  height: 1.25rem
}

.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
  width: 1.25rem
}

.\[\&_p\]\:leading-relaxed p {
  line-height: 1.625
}

.\[\&_svg\]\:pointer-events-none svg {
  pointer-events: none
}

.\[\&_svg\]\:size-4 svg {
  width: 1rem;
  height: 1rem
}

.\[\&_svg\]\:shrink-0 svg {
  flex-shrink: 0
}

.\[\&_tr\:last-child\]\:border-0 tr:last-child {
  border-width: 0px
}

.\[\&_tr\]\:border-b tr {
  border-bottom-width: 1px
}

[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
  right: -.5rem
}

[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize {
  cursor: e-resize
}

[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize {
  cursor: w-resize
}

[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
  left: -.5rem
}

[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
  cursor: w-resize
}

[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize {
  cursor: e-resize
}

/* Source: assets/inline-styles.css */
:where(html[dir="ltr"]),
:where([data-sonner-toaster][dir="ltr"]) {
  --toast-icon-margin-start: -3px;
  --toast-icon-margin-end: 4px;
  --toast-svg-margin-start: -1px;
  --toast-svg-margin-end: 0px;
  --toast-button-margin-start: auto;
  --toast-button-margin-end: 0;
  --toast-close-button-start: 0;
  --toast-close-button-end: unset;
  --toast-close-button-transform: translate(-35%, -35%)
}

:where(html[dir="rtl"]),
:where([data-sonner-toaster][dir="rtl"]) {
  --toast-icon-margin-start: 4px;
  --toast-icon-margin-end: -3px;
  --toast-svg-margin-start: 0px;
  --toast-svg-margin-end: -1px;
  --toast-button-margin-start: 0;
  --toast-button-margin-end: auto;
  --toast-close-button-start: unset;
  --toast-close-button-end: 0;
  --toast-close-button-transform: translate(35%, -35%)
}

:where([data-sonner-toaster]) {
  position: fixed;
  width: var(--width);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  --gray1: hsl(0, 0%, 99%);
  --gray2: hsl(0, 0%, 97.3%);
  --gray3: hsl(0, 0%, 95.1%);
  --gray4: hsl(0, 0%, 93%);
  --gray5: hsl(0, 0%, 90.9%);
  --gray6: hsl(0, 0%, 88.7%);
  --gray7: hsl(0, 0%, 85.8%);
  --gray8: hsl(0, 0%, 78%);
  --gray9: hsl(0, 0%, 56.1%);
  --gray10: hsl(0, 0%, 52.3%);
  --gray11: hsl(0, 0%, 43.5%);
  --gray12: hsl(0, 0%, 9%);
  --border-radius: 8px;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  list-style: none;
  outline: none;
  z-index: 999999999;
  transition: transform .4s ease
}

:where([data-sonner-toaster][data-lifted="true"]) {
  transform: translateY(-10px)
}

@media (hover: none) and (pointer: coarse) {
  :where([data-sonner-toaster][data-lifted="true"]) {
    transform: none
  }
}

:where([data-sonner-toaster][data-x-position="right"]) {
  right: var(--offset-right)
}

:where([data-sonner-toaster][data-x-position="left"]) {
  left: var(--offset-left)
}

:where([data-sonner-toaster][data-x-position="center"]) {
  left: 50%;
  transform: translate(-50%)
}

:where([data-sonner-toaster][data-y-position="top"]) {
  top: var(--offset-top)
}

:where([data-sonner-toaster][data-y-position="bottom"]) {
  bottom: var(--offset-bottom)
}

:where([data-sonner-toast]) {
  --y: translateY(100%);
  --lift-amount: calc(var(--lift) * var(--gap));
  z-index: var(--z-index);
  position: absolute;
  opacity: 0;
  transform: var(--y);
  filter: blur(0);
  touch-action: none;
  transition: transform .4s, opacity .4s, height .4s, box-shadow .2s;
  box-sizing: border-box;
  outline: none;
  overflow-wrap: anywhere
}

:where([data-sonner-toast][data-styled="true"]) {
  padding: 16px;
  background: var(--normal-bg);
  border: 1px solid var(--normal-border);
  color: var(--normal-text);
  border-radius: var(--border-radius);
  box-shadow: 0 4px 12px #0000001a;
  width: var(--width);
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 6px
}

:where([data-sonner-toast]:focus-visible) {
  box-shadow: 0 4px 12px #0000001a, 0 0 0 2px #0003
}

:where([data-sonner-toast][data-y-position="top"]) {
  top: 0;
  --y: translateY(-100%);
  --lift: 1;
  --lift-amount: calc(1 * var(--gap))
}

:where([data-sonner-toast][data-y-position="bottom"]) {
  bottom: 0;
  --y: translateY(100%);
  --lift: -1;
  --lift-amount: calc(var(--lift) * var(--gap))
}

:where([data-sonner-toast]) :where([data-description]) {
  font-weight: 400;
  line-height: 1.4;
  color: inherit
}

:where([data-sonner-toast]) :where([data-title]) {
  font-weight: 500;
  line-height: 1.5;
  color: inherit
}

:where([data-sonner-toast]) :where([data-icon]) {
  display: flex;
  height: 16px;
  width: 16px;
  position: relative;
  justify-content: flex-start;
  align-items: center;
  flex-shrink: 0;
  margin-left: var(--toast-icon-margin-start);
  margin-right: var(--toast-icon-margin-end)
}

:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg {
  opacity: 0;
  transform: scale(.8);
  transform-origin: center;
  animation: sonner-fade-in .3s ease forwards
}

:where([data-sonner-toast]) :where([data-icon])>* {
  flex-shrink: 0
}

:where([data-sonner-toast]) :where([data-icon]) svg {
  margin-left: var(--toast-svg-margin-start);
  margin-right: var(--toast-svg-margin-end)
}

:where([data-sonner-toast]) :where([data-content]) {
  display: flex;
  flex-direction: column;
  gap: 2px
}

[data-sonner-toast][data-styled=true] [data-button] {
  border-radius: 4px;
  padding-left: 8px;
  padding-right: 8px;
  height: 24px;
  font-size: 12px;
  color: var(--normal-bg);
  background: var(--normal-text);
  margin-left: var(--toast-button-margin-start);
  margin-right: var(--toast-button-margin-end);
  border: none;
  cursor: pointer;
  outline: none;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: opacity .4s, box-shadow .2s
}

:where([data-sonner-toast]) :where([data-button]):focus-visible {
  box-shadow: 0 0 0 2px #0006
}

:where([data-sonner-toast]) :where([data-button]):first-of-type {
  margin-left: var(--toast-button-margin-start);
  margin-right: var(--toast-button-margin-end)
}

:where([data-sonner-toast]) :where([data-cancel]) {
  color: var(--normal-text);
  background: rgba(0, 0, 0, .08)
}

:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]) {
  background: rgba(255, 255, 255, .3)
}

:where([data-sonner-toast]) :where([data-close-button]) {
  position: absolute;
  left: var(--toast-close-button-start);
  right: var(--toast-close-button-end);
  top: 0;
  height: 20px;
  width: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  color: var(--gray12);
  border: 1px solid var(--gray4);
  transform: var(--toast-close-button-transform);
  border-radius: 50%;
  cursor: pointer;
  z-index: 1;
  transition: opacity .1s, background .2s, border-color .2s
}

[data-sonner-toast] [data-close-button] {
  background: var(--gray1)
}

:where([data-sonner-toast]) :where([data-close-button]):focus-visible {
  box-shadow: 0 4px 12px #0000001a, 0 0 0 2px #0003
}

:where([data-sonner-toast]) :where([data-disabled="true"]) {
  cursor: not-allowed
}

:where([data-sonner-toast]):hover :where([data-close-button]):hover {
  background: var(--gray2);
  border-color: var(--gray5)
}

:where([data-sonner-toast][data-swiping="true"]):before {
  content: "";
  position: absolute;
  left: -50%;
  right: -50%;
  height: 100%;
  z-index: -1
}

:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before {
  bottom: 50%;
  transform: scaleY(3) translateY(50%)
}

:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before {
  top: 50%;
  transform: scaleY(3) translateY(-50%)
}

:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before {
  content: "";
  position: absolute;
  inset: 0;
  transform: scaleY(2)
}

:where([data-sonner-toast]):after {
  content: "";
  position: absolute;
  left: 0;
  height: calc(var(--gap) + 1px);
  bottom: 100%;
  width: 100%
}

:where([data-sonner-toast][data-mounted="true"]) {
  --y: translateY(0);
  opacity: 1
}

:where([data-sonner-toast][data-expanded="false"][data-front="false"]) {
  --scale: var(--toasts-before) * .05 + 1;
  --y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));
  height: var(--front-toast-height)
}

:where([data-sonner-toast])>* {
  transition: opacity .4s
}

:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>* {
  opacity: 0
}

:where([data-sonner-toast][data-visible="false"]) {
  opacity: 0;
  pointer-events: none
}

:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]) {
  --y: translateY(calc(var(--lift) * var(--offset)));
  height: var(--initial-height)
}

:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]) {
  --y: translateY(calc(var(--lift) * -100%));
  opacity: 0
}

:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]) {
  --y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));
  opacity: 0
}

:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]) {
  --y: translateY(40%);
  opacity: 0;
  transition: transform .5s, opacity .2s
}

:where([data-sonner-toast][data-removed="true"][data-front="false"]):before {
  height: calc(var(--initial-height) + 20%)
}

[data-sonner-toast][data-swiping=true] {
  transform: var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));
  transition: none
}

[data-sonner-toast][data-swiped=true] {
  user-select: none
}

[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],
[data-sonner-toast][data-swipe-out=true][data-y-position=top] {
  animation-duration: .2s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards
}

[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left] {
  animation-name: swipe-out-left
}

[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right] {
  animation-name: swipe-out-right
}

[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up] {
  animation-name: swipe-out-up
}

[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down] {
  animation-name: swipe-out-down
}

@keyframes swipe-out-left {
  0% {
    transform: var(--y) translate(var(--swipe-amount-x));
    opacity: 1
  }

  to {
    transform: var(--y) translate(calc(var(--swipe-amount-x) - 100%));
    opacity: 0
  }
}

@keyframes swipe-out-right {
  0% {
    transform: var(--y) translate(var(--swipe-amount-x));
    opacity: 1
  }

  to {
    transform: var(--y) translate(calc(var(--swipe-amount-x) + 100%));
    opacity: 0
  }
}

@keyframes swipe-out-up {
  0% {
    transform: var(--y) translateY(var(--swipe-amount-y));
    opacity: 1
  }

  to {
    transform: var(--y) translateY(calc(var(--swipe-amount-y) - 100%));
    opacity: 0
  }
}

@keyframes swipe-out-down {
  0% {
    transform: var(--y) translateY(var(--swipe-amount-y));
    opacity: 1
  }

  to {
    transform: var(--y) translateY(calc(var(--swipe-amount-y) + 100%));
    opacity: 0
  }
}

@media (max-width: 600px) {
  [data-sonner-toaster] {
    position: fixed;
    right: var(--mobile-offset-right);
    left: var(--mobile-offset-left);
    width: 100%
  }

  [data-sonner-toaster][dir=rtl] {
    left: calc(var(--mobile-offset-left) * -1)
  }

  [data-sonner-toaster] [data-sonner-toast] {
    left: 0;
    right: 0;
    width: calc(100% - var(--mobile-offset-left) * 2)
  }

  [data-sonner-toaster][data-x-position=left] {
    left: var(--mobile-offset-left)
  }

  [data-sonner-toaster][data-y-position=bottom] {
    bottom: var(--mobile-offset-bottom)
  }

  [data-sonner-toaster][data-y-position=top] {
    top: var(--mobile-offset-top)
  }

  [data-sonner-toaster][data-x-position=center] {
    left: var(--mobile-offset-left);
    right: var(--mobile-offset-right);
    transform: none
  }
}

[data-sonner-toaster][data-theme=light] {
  --normal-bg: #fff;
  --normal-border: var(--gray4);
  --normal-text: var(--gray12);
  --success-bg: hsl(143, 85%, 96%);
  --success-border: hsl(145, 92%, 91%);
  --success-text: hsl(140, 100%, 27%);
  --info-bg: hsl(208, 100%, 97%);
  --info-border: hsl(221, 91%, 91%);
  --info-text: hsl(210, 92%, 45%);
  --warning-bg: hsl(49, 100%, 97%);
  --warning-border: hsl(49, 91%, 91%);
  --warning-text: hsl(31, 92%, 45%);
  --error-bg: hsl(359, 100%, 97%);
  --error-border: hsl(359, 100%, 94%);
  --error-text: hsl(360, 100%, 45%)
}

[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true] {
  --normal-bg: #000;
  --normal-border: hsl(0, 0%, 20%);
  --normal-text: var(--gray1)
}

[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true] {
  --normal-bg: #fff;
  --normal-border: var(--gray3);
  --normal-text: var(--gray12)
}

[data-sonner-toaster][data-theme=dark] {
  --normal-bg: #000;
  --normal-bg-hover: hsl(0, 0%, 12%);
  --normal-border: hsl(0, 0%, 20%);
  --normal-border-hover: hsl(0, 0%, 25%);
  --normal-text: var(--gray1);
  --success-bg: hsl(150, 100%, 6%);
  --success-border: hsl(147, 100%, 12%);
  --success-text: hsl(150, 86%, 65%);
  --info-bg: hsl(215, 100%, 6%);
  --info-border: hsl(223, 100%, 12%);
  --info-text: hsl(216, 87%, 65%);
  --warning-bg: hsl(64, 100%, 6%);
  --warning-border: hsl(60, 100%, 12%);
  --warning-text: hsl(46, 87%, 65%);
  --error-bg: hsl(358, 76%, 10%);
  --error-border: hsl(357, 89%, 16%);
  --error-text: hsl(358, 100%, 81%)
}

[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button] {
  background: var(--normal-bg);
  border-color: var(--normal-border);
  color: var(--normal-text)
}

[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover {
  background: var(--normal-bg-hover);
  border-color: var(--normal-border-hover)
}

[data-rich-colors=true][data-sonner-toast][data-type=success],
[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button] {
  background: var(--success-bg);
  border-color: var(--success-border);
  color: var(--success-text)
}

[data-rich-colors=true][data-sonner-toast][data-type=info],
[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button] {
  background: var(--info-bg);
  border-color: var(--info-border);
  color: var(--info-text)
}

[data-rich-colors=true][data-sonner-toast][data-type=warning],
[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button] {
  background: var(--warning-bg);
  border-color: var(--warning-border);
  color: var(--warning-text)
}

[data-rich-colors=true][data-sonner-toast][data-type=error],
[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button] {
  background: var(--error-bg);
  border-color: var(--error-border);
  color: var(--error-text)
}

.sonner-loading-wrapper {
  --size: 16px;
  height: var(--size);
  width: var(--size);
  position: absolute;
  inset: 0;
  z-index: 10
}

.sonner-loading-wrapper[data-visible=false] {
  transform-origin: center;
  animation: sonner-fade-out .2s ease forwards
}

.sonner-spinner {
  position: relative;
  top: 50%;
  left: 50%;
  height: var(--size);
  width: var(--size)
}

.sonner-loading-bar {
  animation: sonner-spin 1.2s linear infinite;
  background: var(--gray11);
  border-radius: 6px;
  height: 8%;
  left: -10%;
  position: absolute;
  top: -3.9%;
  width: 24%
}

.sonner-loading-bar:nth-child(1) {
  animation-delay: -1.2s;
  transform: rotate(.0001deg) translate(146%)
}

.sonner-loading-bar:nth-child(2) {
  animation-delay: -1.1s;
  transform: rotate(30deg) translate(146%)
}

.sonner-loading-bar:nth-child(3) {
  animation-delay: -1s;
  transform: rotate(60deg) translate(146%)
}

.sonner-loading-bar:nth-child(4) {
  animation-delay: -.9s;
  transform: rotate(90deg) translate(146%)
}

.sonner-loading-bar:nth-child(5) {
  animation-delay: -.8s;
  transform: rotate(120deg) translate(146%)
}

.sonner-loading-bar:nth-child(6) {
  animation-delay: -.7s;
  transform: rotate(150deg) translate(146%)
}

.sonner-loading-bar:nth-child(7) {
  animation-delay: -.6s;
  transform: rotate(180deg) translate(146%)
}

.sonner-loading-bar:nth-child(8) {
  animation-delay: -.5s;
  transform: rotate(210deg) translate(146%)
}

.sonner-loading-bar:nth-child(9) {
  animation-delay: -.4s;
  transform: rotate(240deg) translate(146%)
}

.sonner-loading-bar:nth-child(10) {
  animation-delay: -.3s;
  transform: rotate(270deg) translate(146%)
}

.sonner-loading-bar:nth-child(11) {
  animation-delay: -.2s;
  transform: rotate(300deg) translate(146%)
}

.sonner-loading-bar:nth-child(12) {
  animation-delay: -.1s;
  transform: rotate(330deg) translate(146%)
}

@keyframes sonner-fade-in {
  0% {
    opacity: 0;
    transform: scale(.8)
  }

  to {
    opacity: 1;
    transform: scale(1)
  }
}

@keyframes sonner-fade-out {
  0% {
    opacity: 1;
    transform: scale(1)
  }

  to {
    opacity: 0;
    transform: scale(.8)
  }
}

@keyframes sonner-spin {
  0% {
    opacity: 1
  }

  to {
    opacity: .15
  }
}

@media (prefers-reduced-motion) {

  [data-sonner-toast],
  [data-sonner-toast]>*,
  .sonner-loading-bar {
    transition: none !important;
    animation: none !important
  }
}

.sonner-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-origin: center;
  transition: opacity .2s, transform .2s
}

.sonner-loader[data-visible=false] {
  opacity: 0;
  transform: scale(.8) translate(-50%, -50%)
}


/* === INLINE STYLES === */

@keyframes _spin_evhv6_1 {
  0% {
    transform: rotate(0)
  }

  to {
    transform: rotate(360deg)
  }
}

@keyframes _wave_evhv6_1 {
  0% {
    transform: rotate(0)
  }

  50% {
    transform: rotate(20deg)
  }

  to {
    transform: rotate(0)
  }
}

@keyframes _heartBeat_evhv6_1 {
  0% {
    transform: scale(1)
  }

  50% {
    transform: scale(1.08)
  }

  to {
    transform: scale(1)
  }
}

@keyframes _flash_evhv6_1 {

  0%,
  50%,
  to {
    opacity: 1
  }

  25%,
  75% {
    opacity: .2
  }
}

@keyframes _bounce_evhv6_1 {

  0%,
  20%,
  53%,
  to {
    transform: translateZ(0)
  }

  40%,
  43% {
    transform: translate3d(0, -30px, 0) scaleY(1.1)
  }

  70% {
    transform: translate3d(0, -15px, 0) scaleY(1.05)
  }

  80% {
    transform: translateZ(0) scaleY(.95)
  }

  90% {
    transform: translate3d(0, -4px, 0) scaleY(1.02)
  }
}

@keyframes _rubberBand_evhv6_1 {
  0% {
    transform: scaleZ(1)
  }

  30% {
    transform: scale3d(1.25, .75, 1)
  }

  40% {
    transform: scale3d(.75, 1.25, 1)
  }

  50% {
    transform: scale3d(1.15, .85, 1)
  }

  65% {
    transform: scale3d(.95, 1.05, 1)
  }

  75% {
    transform: scale3d(1.05, .95, 1)
  }

  to {
    transform: scaleZ(1)
  }
}

@keyframes _headShake_evhv6_1 {
  0% {
    transform: translate(0)
  }

  6.5% {
    transform: translate(-6px) rotateY(-9deg)
  }

  18.5% {
    transform: translate(5px) rotateY(7deg)
  }

  31.5% {
    transform: translate(-3px) rotateY(-5deg)
  }

  43.5% {
    transform: translate(2px) rotateY(3deg)
  }

  50% {
    transform: translate(0)
  }
}

@keyframes _tada_evhv6_1 {
  0% {
    transform: scaleZ(1)
  }

  10%,
  20% {
    transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
  }

  30%,
  50%,
  70%,
  90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
  }

  40%,
  60%,
  80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
  }

  to {
    transform: scaleZ(1)
  }
}

._overlay_evhv6_157 {
  position: fixed;
  inset: 0;
  z-index: 1000000006;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #0f0f0f99
}

._layoutDefault_evhv6_170 {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 2147483000;
  width: auto;
  height: auto;
  max-width: 95vw;
  display: -ms-flexbox;
  display: flex;
  background-color: transparent;
  border-radius: 5px;
  box-shadow: #0f0f0f0d 0 0 0 1px, #0f0f0f1a 0 3px 6px, #0f0f0f33 0 9px 24px;
  opacity: 0
}

._layoutModal_evhv6_186 {
  position: relative;
  z-index: 2147483000;
  width: 700px;
  height: auto;
  max-width: 95vw;
  display: -ms-flexbox;
  display: flex;
  background-color: transparent;
  border-radius: 5px;
  box-shadow: #0f0f0f0d 0 0 0 1px, #0f0f0f1a 0 3px 6px, #0f0f0f33 0 9px 24px;
  opacity: 0
}

._popupContainer_evhv6_200 {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border-radius: 5px;
  overflow-y: auto
}

._popupContainer_evhv6_200 iframe {
  border-radius: 5px;
  max-height: 95vh
}

._loadingIndicator_evhv6_212 {
  position: absolute;
  z-index: 2147483000;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: #444;
  background-color: #f5f5f5
}

._loadingIndicatorNoOverlay_evhv6_225 {
  position: fixed;
  right: 10px;
  bottom: 10px
}

._loadingIndicator_evhv6_212 svg {
  width: 20px;
  height: 20px;
  animation: _spin_evhv6_1 1.618s linear infinite
}

._emoji_evhv6_237 {
  position: absolute;
  top: -21px;
  left: -21px;
  display: inline-block;
  font-size: 42px;
  line-height: 1
}

._animate__wave_evhv6_246 {
  animation: _wave_evhv6_1 1s ease-in-out 20
}

._animate__heart-beat_evhv6_250 {
  animation: _heartBeat_evhv6_1 1.3s ease-in-out 20
}

._animate__flash_evhv6_254 {
  animation: _flash_evhv6_1 2.5s 20
}

._animate__bounce_evhv6_258 {
  animation: _bounce_evhv6_1 1.5s 20;
  -ms-transform-origin: center bottom;
  transform-origin: center bottom
}

._animate__rubber-band_evhv6_263 {
  animation: _rubberBand_evhv6_1 1.5s 20
}

._animate__head-shake_evhv6_267 {
  animation: _headShake_evhv6_1 1.5s ease-in-out 20
}

._animate__tada_evhv6_271 {
  animation: _tada_evhv6_1 1.5s 20
}

._animate__spin_evhv6_275 {
  animation: _spin_evhv6_1 1.618s linear 20
}

@media (max-height: 1000px) {
  ._popupContainer_evhv6_200 iframe {
    max-height: 85vh
  }
}

@media (max-width: 576px) {
  ._popupContainer_evhv6_200 iframe {
    max-height: 70vh
  }

  ._layoutDefault_evhv6_170,
  ._layoutModal_evhv6_186 {
    max-width: calc(100% - 40px)
  }
}

/* === STYLES EXTRAITS === */

.hero-background {
  background-image: url('../images/robot-mammotion-luba.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.hero-overlay {
  background-color: rgba(0, 0, 0, 0.3);
}

.team-image-container {
  width: 300px;
}

.team-image {
  aspect-ratio: 11 / 16;
}

.section-bg-gray {
  background-color: rgb(241, 245, 243);
}

.section-bg-temoignages {
  background-color: rgb(26, 66, 45);
}

.section-bg-dark {
  background-color: #172620;
}

.text-gold {
  color: rgb(210, 168, 4);
}

.logo-offset {
  transform: translate(40%, -5%);
}

.map-container {
  min-height: 300px;
  position: relative;
}

.mobile-nav-link {
  color: rgb(27, 66, 45);
}

@media (min-width: 768px) {
  .tablet-menu-scroll {
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-inline: 28px;
    scroll-padding-inline: 28px;
    -webkit-mask-image: linear-gradient(to right, transparent 0, black 36px, black calc(100% - 36px), transparent 100%);
    mask-image: linear-gradient(to right, transparent 0, black 36px, black calc(100% - 36px), transparent 100%);
  }

  .tablet-menu-scroll::-webkit-scrollbar {
    display: none;
  }
}

.leaflet-safari .leaflet-tile-container {
  transform-origin: 0 0;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  user-select: none;
}

[data-sonner-toaster] button {
  appearance: none;
}

.leaflet-control-zoom a {
  appearance: none;
}

/*$vite$:1*/
