/* ============================================================================
   LA MARCA — todo el color vive acá
   --------------------------------------------------------------------------
   🔑 CAMBIAR LA PALETA ES CAMBIAR ESTE BLOQUE Y NADA MÁS. El original declara
      ocho variables de marca y después NO LAS USA: --ink, --mint y --soft
      aparecen declaradas y cero veces en un var(); todo está escrito a mano, y
      hay 44 colores de la familia teal sueltos por la hoja.
      Y las declara dentro de .kalcu-site, que envuelve la página entera, así
      que una variable puesta en :root quedaba sombreada y no hacía nada.

   Los nombres con número dicen la CLARIDAD (teal-30 es oscuro, teal-96 casi
   blanco), que es lo que hace falta saber para reemplazar uno sin romper el
   contraste. Los valores son exactos a los del sitio.
   ============================================================================ */
:root {
   --brand-2: #2490a8;
   /*   191°  sat   65%  luz   40% */
   --brand-3: #13adbc;
   /*   185°  sat   82%  luz   41% */
   --forest: #176c83;
   /*   193°  sat   70%  luz   30% */
   --ink: #123f4d;
   /*   194°  sat   62%  luz   19% */
   --mint: #3fd98f;
   /*   151°  sat   67%  luz   55% */
   --pink: #fa5884;
   /*   344°  sat   94%  luz   66% */
   --soft: #81c0c4;
   /*   184°  sat   36%  luz   64% */
   --zest: #f7cf65;
   /*    44°  sat   90%  luz   68% */

   /* La familia teal, de oscuro a claro */
   --teal-20: #17404d;
   /*   194°  sat   54%  luz   20% */
   --teal-23: #0f5265;
   /*   193°  sat   74%  luz   23% */
   --gris-37: #52656b;
   /*   194°  sat   13%  luz   37% */
   --gris-40: #5c6b70;
   /*   195°  sat   10%  luz   40% */
   --gris-42: #5f7076;
   /*   196°  sat   11%  luz   42% */
   --gris-42b: #5f7075;
   /*   194°  sat   10%  luz   42% */
   --gris-44: #66757a;
   /*   195°  sat    9%  luz   44% */
   --gris-46: #6b7a80;
   /*   197°  sat    9%  luz   46% */
   --gris-47: #6f7d82;
   /*   196°  sat    8%  luz   47% */
   --gris-47b: #6e7d82;
   /*   195°  sat    8%  luz   47% */
   --gris-49: #71818a;
   /*   202°  sat   10%  luz   49% */
   --gris-50: #74838a;
   /*   199°  sat    9%  luz   50% */
   --gris-50b: #75858b;
   /*   196°  sat    9%  luz   50% */
   --gris-52: #7b8a90;
   /*   197°  sat    9%  luz   52% */
   --gris-53: #7c8b90;
   /*   195°  sat    8%  luz   53% */
   --gris-59: #8ba0a4;
   /*   190°  sat   12%  luz   59% */
   --gris-69: #a7b6ba;
   /*   193°  sat   12%  luz   69% */
   --teal-71: #8fd3dd;
   /*   188°  sat   53%  luz   71% */
   --teal-74: #a8c9d1;
   /*   192°  sat   31%  luz   74% */
   --teal-75: #a8cfd8;
   /*   191°  sat   38%  luz   75% */
   --teal-78: #a8dbe4;
   /*   189°  sat   53%  luz   78% */
   --teal-80: #b9d9e0;
   /*   191°  sat   39%  luz   80% */
   --teal-83: #bfe0e7;
   /*   190°  sat   45%  luz   83% */
   --teal-83b: #c3dde4;
   /*   193°  sat   38%  luz   83% */
   --teal-86: #cfe3e9;
   /*   194°  sat   37%  luz   86% */
   --teal-88: #d7e7ec;
   /*   194°  sat   36%  luz   88% */
   --teal-88b: #d5e7ec;
   /*   193°  sat   38%  luz   88% */
   --teal-89: #d9e9ee;
   /*   194°  sat   38%  luz   89% */
   --teal-90: #dcebef;
   /*   193°  sat   37%  luz   90% */
   --teal-93: #e6f2f6;
   /*   195°  sat   47%  luz   93% */
   --teal-93b: #e4f2f6;
   /*   193°  sat   50%  luz   93% */
   --teal-94: #e9f4f7;
   /*   193°  sat   47%  luz   94% */
   --teal-95: #eaf5f8;
   /*   193°  sat   50%  luz   95% */
   --teal-95b: #eef7f9;
   /*   191°  sat   48%  luz   95% */
   --teal-96: #f1f9fb;
   /*   192°  sat   56%  luz   96% */
   --teal-96b: #f0f8fa;
   /*   192°  sat   50%  luz   96% */
   --teal-97: #f2f9fb;
   /*   193°  sat   53%  luz   97% */
   --teal-97b: #f5fafc;
   /*   197°  sat   54%  luz   97% */
   --teal-98: #f8fafc;
   /*   210°  sat   40%  luz   98% */
}

html {
   scroll-behavior: smooth;
   scroll-padding-top: 100px
}

body {
   margin: 0
}

.kalcu-site {
   --ivory: #fff;
   background: var(--ivory);
   color: var(--forest);
   font-family: Quicksand, sans-serif;
   font-size: 16px;
   overflow: hidden
}

.wrap {
   width: min(1180px, 100% - 104px);
   margin: auto
}

.section-pad {
   padding-top: 110px;
   padding-bottom: 110px
}

.kalcu-site h1,
.kalcu-site h2 {
   letter-spacing: -1.6px;
   font-family: Raleway, sans-serif;
   font-weight: 800
}

.kalcu-site h2 {
   margin: 22px 0;
   font-size: 56px;
   line-height: 1.06
}

.kalcu-site h1 em,
.kalcu-site h2 em {
   color: var(--forest);
   font-weight: 800
}

.kalcu-site p {
   color: var(--gris-40);
   max-width: 510px;
   font-size: 16px;
   line-height: 1.8
}

.eyebrow {
   letter-spacing: 1.8px;
   align-items: center;
   gap: 8px;
   font-size: 10px;
   font-weight: 650;
   display: inline-flex
}

.tiny-dot {
   background: var(--brand-3);
   border-radius: 50%;
   width: 6px;
   height: 6px
}

.cta {
   background: var(--forest);
   color: #fff;
   border: 1px solid var(--forest);
   cursor: pointer;
   border-radius: 8px;
   justify-content: center;
   align-items: center;
   gap: 25px;
   min-height: 54px;
   padding: 14px 26px;
   font-size: 13px;
   font-weight: 550;
   transition: background .2s, transform .2s;
   display: inline-flex
}

.cta:hover {
   background: var(--teal-23);
   transform: translateY(-2px)
}

.kalcu-site button:focus-visible,
.kalcu-site a:focus-visible {
   outline-offset: 5px;
   outline: 2px solid var(--brand-2)
}

.microcopy {
   margin: 11px 0;
   color: var(--gris-47) !important;
   font-size: 11px !important
}

.site-header {
   z-index: 20;
   width: 100%;
   padding: 24px 0;
   position: absolute;
   top: 0
}

.nav-inner {
   justify-content: space-between;
   align-items: center;
   gap: 28px;
   width: min(1180px, 100% - 104px);
   margin: auto;
   display: flex
}

.wordmark {
   letter-spacing: -2.6px;
   color: inherit;
   flex-shrink: 0;
   align-items: flex-start;
   font-family: Raleway, sans-serif;
   font-size: 39px;
   font-weight: 800;
   line-height: 1;
   display: flex;
   position: relative
}

.wordmark span {
   letter-spacing: 0;
   margin: 5px 0 0 4px;
   font-size: 11px
}

.wordmark i {
   background: var(--brand-3);
   border-radius: 50%;
   width: 6px;
   height: 6px;
   position: absolute;
   bottom: 3px;
   right: 9px
}

.nav-links {
   gap: 32px;
   margin-left: 65px;
   display: flex
}

.nav-links a {
   font-size: 11px;
   font-weight: 500;
   transition: opacity .2s
}

.nav-links a:hover {
   opacity: .6
}

.nav-cta {
   background: 0 0;
   border: 1px solid #176c8350;
   border-radius: 7px;
   align-items: center;
   gap: 18px;
   padding: 11px 16px;
   font-size: 11px;
   font-weight: 600;
   display: flex
}

.menu-toggle {
   display: none
}

.site-header.raised {
   background: 0 0;
   padding: 0;
   position: fixed;
   top: 15px
}

.raised .nav-inner {
   background: var(--forest);
   color: var(--ivory);
   border-radius: 100px;
   padding: 15px 28px;
   box-shadow: 0 12px 35px #0f526520
}

.raised .nav-cta {
   border-color: #ffffff65
}

.hero {
   grid-template-columns: 1fr 1fr;
   align-items: center;
   gap: 42px;
   min-height: 790px;
   padding-top: 156px;
   padding-bottom: 75px;
   display: grid
}

.hero h1 {
   letter-spacing: -2.5px;
   margin: 27px 0 25px;
   font-size: 78px;
   line-height: .99
}

.hero h1 em {
   color: var(--forest)
}

.hero-description {
   max-width: 425px !important;
   font-size: 14px !important;
   line-height: 1.9 !important
}

.hero-benefits {
   color: var(--gris-37);
   flex-wrap: wrap;
   gap: 9px 12px;
   max-width: 480px;
   margin: 23px 0 28px;
   font-size: 10px;
   display: flex
}

.hero-benefits span {
   align-items: center;
   gap: 4px;
   display: flex
}

.hero-benefits svg {
   color: var(--forest)
}

.hero-visual {
   justify-content: center;
   align-items: center;
   height: 570px;
   display: flex;
   position: relative
}

.orbit {
   background: #e4f2f65c;
   border: 1px solid #c6e0e740;
   border-radius: 50%;
   width: 460px;
   height: 460px;
   position: absolute
}

.orbit-two {
   background: 0 0;
   border-style: dashed;
   width: 550px;
   height: 550px
}

.visual-caption {
   color: var(--gris-42);
   align-items: center;
   gap: 8px;
   font-size: 11px;
   display: flex;
   position: absolute;
   top: 0;
   left: 90px;
   transform: rotate(-6deg)
}

.phone {
   z-index: 2;
   background: #fff;
   border: 6px solid var(--teal-20);
   border-radius: 38px;
   width: 235px;
   height: 493px;
   position: relative;
   left: 25px;
   overflow: hidden;
   transform: rotate(4deg);
   box-shadow: 0 25px 45px #0e3e4d25, 0 0 0 2px var(--gris-69)
}

.phone video {
   -o-object-fit: contain;
   object-fit: contain;
   background: var(--teal-97);
   width: 100%;
   height: 100%
}

.phone-notch {
   z-index: 4;
   pointer-events: none;
   background: var(--teal-20);
   border-radius: 20px;
   width: 65px;
   height: 17px;
   position: absolute;
   top: 8px;
   left: 50%;
   transform: translate(-50%)
}

.phone-bottom {
   pointer-events: none;
   background: var(--teal-20);
   border-radius: 4px;
   width: 70px;
   height: 4px;
   position: absolute;
   bottom: 6px;
   left: 50%;
   transform: translate(-50%)
}

.desire-bubble {
   background: var(--forest);
   color: #fff;
   z-index: 5;
   border-radius: 15px 15px 15px 2px;
   padding: 16px 20px;
   font-size: 12px;
   position: absolute;
   top: 90px;
   right: -9px;
   transform: rotate(5deg);
   box-shadow: 0 10px 24px #176c8315
}

.desire-bubble span {
   margin-left: 10px;
   font-size: 20px
}

.dish-preview {
   z-index: 3;
   border: 5px solid #fff;
   border-radius: 15px;
   width: 172px;
   height: 133px;
   position: absolute;
   top: 135px;
   left: -18px;
   overflow: hidden;
   transform: rotate(-9deg);
   box-shadow: 0 16px 30px #0e3e4d20
}

.dish-image {
   -o-object-fit: cover;
   object-fit: cover;
   width: 100%;
   height: 100%
}

.phone-showcase {
   flex-direction: column;
   align-items: center;
   gap: 18px;
   width: 100%;
   display: flex
}

.phone-mock {
   background: #fff;
   border: 7px solid var(--teal-20);
   border-radius: 42px;
   flex-shrink: 0;
   width: 252px;
   height: 520px;
   position: relative;
   overflow: hidden;
   box-shadow: 0 25px 45px #0e3e4d25, 0 0 0 2px var(--gris-69)
}

.phone-media {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: top;
   object-position: top;
   width: 100%;
   height: 100%;
   display: block
}

.mock-stage {
   background: var(--teal-95);
   border-radius: 20px;
   justify-content: center;
   align-items: center;
   width: 100%;
   max-width: 440px;
   margin: auto;
   padding: 36px 22px;
   display: flex
}

.mock-caption {
   color: var(--gris-52);
   text-align: center;
   font-size: 8px;
   display: block
}

.result-header {
   color: var(--forest);
   align-items: center;
   gap: 8px;
   margin-bottom: 13px;
   font-size: 12px;
   font-weight: 600;
   display: flex
}

.hero-visual-note {
   letter-spacing: 1.4px;
   color: var(--gris-44);
   font-size: 8px;
   position: absolute;
   bottom: -16px;
   left: 80px
}

.hero-visual-note span {
   text-align: center;
   letter-spacing: 0;
   color: var(--gris-50);
   margin-top: 8px;
   font-size: 9px;
   display: block
}

.benefit-strip {
   color: var(--gris-44);
   background: var(--teal-97);
   border-top: 1px solid var(--teal-90);
   border-bottom: 1px solid var(--teal-90);
   justify-content: center;
   gap: 85px;
   padding: 26px 5%;
   font-size: 13px;
   display: flex
}

.strip-signature {
   color: var(--forest);
   font-family: Raleway, sans-serif;
   font-size: 22px;
   font-weight: 800;
   line-height: 1
}

.problem {
   text-align: center;
   padding-top: 110px;
   padding-bottom: 110px
}

.problem p {
   max-width: 530px;
   margin: 25px auto;
   font-size: 15px
}

.problem-question {
   color: var(--forest);
   margin-top: 34px;
   font-family: Raleway, sans-serif;
   font-size: 38px;
   font-weight: 800
}

.problem-question span {
   margin-top: 10px;
   font-family: Quicksand, sans-serif;
   font-size: 12px;
   display: block
}

.difference {
   background: var(--teal-95b)
}

.section-intro {
   text-align: center;
   margin-bottom: 50px
}

.section-intro p {
   margin: 20px auto 0
}

.comparison {
   grid-template-columns: 1fr 1fr;
   gap: 14px;
   max-width: 850px;
   margin: auto;
   display: grid
}

.comparison>div {
   border-radius: 16px;
   padding: 36px 40px
}

.comparison-old {
   color: var(--gris-42b);
   background: var(--teal-97b);
   border: 1px solid var(--teal-88)
}

.comparison-new {
   background: var(--forest);
   color: #fff;
   box-shadow: 0 12px 30px #176c8320
}

.comparison-label {
   letter-spacing: 1.4px;
   justify-content: space-between;
   font-size: 10px;
   font-weight: 600;
   display: flex
}

.comparison-label span {
   color: var(--soft);
   font-size: 22px;
   line-height: 15px
}

.comparison h3 {
   margin: 25px 0;
   font-family: Raleway, sans-serif;
   font-size: 34px;
   font-weight: 800;
   line-height: 1.15
}

.comparison-row {
   border-bottom: 1px solid #c9e0e780;
   align-items: center;
   gap: 12px;
   padding: 14px 0;
   font-size: 12px;
   display: flex
}

.comparison-new .comparison-row {
   border-color: #ffffff15
}

.comparison-new .comparison-row svg {
   color: #8fd8c6;
   flex-shrink: 0
}

.numbers-cloud {
   color: var(--gris-46);
   margin-top: 24px;
   font-size: 10px
}

.comparison-tag {
   color: var(--teal-83);
   margin-top: 24px;
   font-size: 11px
}

.center-cta {
   text-align: center;
   margin-top: 40px
}

.favorite {
   grid-template-columns: 1fr 1fr;
   align-items: center;
   gap: 85px;
   display: grid
}

.favorite-photo {
   height: 510px;
   position: relative
}

.favorite-image {
   -o-object-fit: cover;
   object-fit: cover;
   border-radius: 12px;
   width: 100%;
   height: 100%
}

.photo-sticker {
   background: #fdf4d8;
   border: 1px solid #f0dfa0;
   border-radius: 6px;
   padding: 15px 25px;
   font-family: Raleway, sans-serif;
   font-size: 27px;
   font-weight: 800;
   position: absolute;
   bottom: 32px;
   right: -28px;
   transform: rotate(-9deg);
   box-shadow: 0 6px 20px #176c8315
}

.favorite h2 {
   font-size: 51px
}

.food-pills {
   flex-wrap: wrap;
   gap: 7px;
   margin: 25px 0;
   display: flex
}

.food-pills span {
   border: 1px solid var(--teal-89);
   border-radius: 30px;
   padding: 8px 13px;
   font-size: 11px
}

.text-link {
   border-bottom: 1px solid #176c8355;
   align-items: center;
   gap: 17px;
   margin-top: 25px;
   padding-bottom: 6px;
   font-size: 13px;
   font-weight: 600;
   display: inline-flex
}

.split {
   grid-template-columns: 1fr 1fr;
   align-items: center;
   gap: 100px;
   display: grid
}

.magic {
   background: var(--teal-95)
}

.magic p {
   font-size: 15px
}

.numbered-step {
   align-items: center;
   gap: 15px;
   margin-top: 26px;
   display: flex
}

.numbered-step>b {
   border: 1px solid var(--teal-75);
   border-radius: 50%;
   flex-shrink: 0;
   justify-content: center;
   align-items: center;
   width: 28px;
   height: 28px;
   font-size: 10px;
   display: flex
}

.numbered-step strong {
   font-size: 12px;
   font-weight: 600;
   display: block
}

.numbered-step span {
   color: var(--gris-47b);
   margin-top: 5px;
   font-size: 11px;
   display: block
}

.photo-section {
   gap: 100px
}

.photo-callout {
   border-left: 2px solid var(--pink);
   margin: 30px 0;
   padding: 12px 20px;
   font-size: 15px;
   line-height: 1.8
}

.photo-callout strong {
   font-weight: 550
}

.kalcu-site .fine-print {
   font-size: 11px;
   line-height: 1.7
}

.personalization {
   background: var(--teal-96)
}

.personal-grid {
   grid-template-columns: repeat(4, 1fr);
   gap: 35px;
   margin-top: 60px;
   display: grid
}

.personal-grid>div {
   border-top: 1px solid var(--teal-83b);
   padding-top: 24px
}

.personal-grid h3 {
   margin: 22px 0 10px;
   font-family: Raleway, sans-serif;
   font-size: 29px;
   font-weight: 800
}

.personal-grid p {
   margin: 0;
   font-size: 13px
}

.no-calories {
   text-align: center
}

.no-calories>p {
   margin: 25px auto
}

.conversion {
   border: 1px solid var(--teal-89);
   border-radius: 13px;
   justify-content: space-between;
   align-items: center;
   gap: 35px;
   max-width: 790px;
   margin: 45px auto 0;
   padding: 35px 40px;
   display: flex
}

.macro-numbers {
   text-align: left;
   color: var(--gris-53);
   font-size: 32px;
   text-decoration: line-through;
   text-decoration-thickness: 1px
}

.macro-numbers small {
   margin-top: 7px;
   font-size: 11px;
   text-decoration: none;
   display: block
}

.conversion>svg {
   color: var(--pink)
}

.real-food {
   text-align: left;
   gap: 12px;
   font-size: 16px;
   display: grid
}

.real-food b {
   font-weight: 600
}

.use-cases {
   background: var(--teal-94)
}

.use-grid {
   grid-template-columns: repeat(6, 1fr);
   gap: 15px;
   display: grid
}

.use-grid article {
   background: var(--ivory);
   border: 1px solid var(--teal-89);
   border-radius: 10px;
   grid-column: span 2;
   padding: 28px
}

.use-grid article:nth-child(4) {
   grid-column: 2/span 2
}

.use-grid article>span {
   font-size: 30px
}

.use-grid h3 {
   margin: 25px 0 10px;
   font-family: Raleway, sans-serif;
   font-size: 29px;
   font-weight: 800;
   line-height: 1.1
}

.use-grid p {
   margin: 0;
   font-size: 12px
}

.goals-grid {
   grid-template-columns: repeat(4, 1fr);
   gap: 24px;
   display: grid
}

.goal-index {
   letter-spacing: 2px;
   color: var(--brand-2);
   font-size: 11px
}

.goals-grid article {
   border-top: 1px solid var(--teal-86);
   padding: 20px 0 0
}

.goals-grid h3 {
   margin: 28px 0 12px;
   font-family: Raleway, sans-serif;
   font-size: 28px;
   font-weight: 800
}

.goals-grid p {
   font-size: 12px
}

.kalcu-site .medical-note {
   text-align: center;
   max-width: 790px;
   margin: 38px auto 0;
   font-size: 10px
}

.consistency {
   background: var(--teal-93)
}

.consistency h2 {
   font-size: 51px
}

.streak-card {
   text-align: center;
   background: #fff;
   border: 1px solid var(--teal-89);
   border-radius: 20px;
   width: 100%;
   max-width: 370px;
   margin: auto;
   padding: 28px 36px
}

.consistency-ring {
   background: conic-gradient(var(--forest) 0deg, var(--brand-3) 257deg, var(--teal-93) 257deg);
   border-radius: 50%;
   justify-content: center;
   align-items: center;
   width: 140px;
   height: 140px;
   margin: 5px auto 25px;
   display: flex;
   transform: rotate(-20deg)
}

.consistency-ring>span {
   background: #fff;
   border-radius: 50%;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 7px;
   width: 123px;
   height: 123px;
   font-size: 9px;
   display: flex;
   transform: rotate(20deg)
}

.consistency-ring b {
   font-family: Raleway, sans-serif;
   font-size: 60px;
   font-weight: 800;
   line-height: 1
}

.streak-card h3 {
   margin: 0;
   font-family: Raleway, sans-serif;
   font-size: 30px;
   font-weight: 800
}

.streak-card p {
   margin: 5px auto 23px;
   font-size: 11px
}

.week-days {
   grid-template-columns: repeat(7, 1fr);
   gap: 8px;
   display: grid
}

.week-days>div {
   color: var(--gris-50b);
   flex-direction: column;
   align-items: center;
   gap: 9px;
   font-size: 9px;
   display: flex
}

.week-days i {
   border: 1px solid var(--teal-90);
   border-radius: 50%;
   justify-content: center;
   align-items: center;
   width: 26px;
   height: 26px;
   font-style: normal;
   display: flex
}

.week-days i.completed {
   background: var(--forest);
   color: #fff;
   border-color: var(--forest)
}

.today-meals {
   border-top: 1px solid var(--teal-90);
   flex-wrap: wrap;
   justify-content: center;
   gap: 10px;
   margin-top: 23px;
   padding-top: 20px;
   font-size: 9px;
   display: flex
}

.today-meals span {
   align-items: center;
   gap: 3px;
   display: flex
}

.streak-card small {
   color: var(--gris-59);
   margin-top: 15px;
   font-size: 8px;
   display: block
}

.life-statement {
   text-align: center;
   padding: 95px 0
}

.life-statement h2 {
   font-size: 88px;
   line-height: 1
}

.life-statement p {
   margin: 25px auto 0
}

.pricing {
   background: var(--teal-95b)
}

.pricing h2 {
   font-size: 64px
}

.pricing-note {
   color: var(--gris-49);
   margin-top: 30px;
   font-size: 11px;
   display: block
}

.price-card {
   background: #fff;
   border: 1px solid var(--teal-89);
   border-radius: 15px;
   width: 100%;
   max-width: 440px;
   margin: auto;
   padding: 32px 37px
}

.plan-label {
   letter-spacing: 1.7px;
   color: var(--forest);
   background: var(--teal-93b);
   border-radius: 4px;
   padding: 8px 11px;
   font-size: 8px;
   display: inline-flex
}

.price-card h3 {
   letter-spacing: -1px;
   margin: 15px 0 0;
   font-family: Raleway, sans-serif;
   font-size: 48px;
   font-weight: 800
}

.price-card h3 sup {
   vertical-align: super;
   margin-left: 3px;
   font-family: Quicksand, sans-serif;
   font-size: 13px
}

.price-card>p {
   margin: 5px 0 0;
   font-size: 12px
}

.price-availability {
   border-bottom: 1px solid var(--teal-90);
   margin: 23px 0 25px;
   padding-bottom: 25px;
   font-family: Raleway, sans-serif;
   font-size: 27px;
   font-weight: 800
}

.price-availability span {
   color: var(--gris-50b);
   margin-top: 7px;
   font-family: Quicksand, sans-serif;
   font-size: 10px;
   display: block
}

.plan-features {
   gap: 15px;
   margin-bottom: 28px;
   font-size: 11px;
   display: grid
}

.plan-features span {
   align-items: center;
   gap: 11px;
   display: flex
}

.plan-features svg {
   flex-shrink: 0
}

.price-card .cta {
   width: 100%;
   font-size: 12px
}

.price-card .microcopy {
   text-align: center
}

.faq {
   grid-template-columns: 1fr 1.2fr;
   gap: 90px;
   display: grid
}

.faq-items details {
   border-bottom: 1px solid var(--teal-90);
   padding: 21px 0
}

.faq-items details:first-child {
   padding-top: 0
}

.faq summary {
   cursor: pointer;
   justify-content: space-between;
   align-items: center;
   gap: 15px;
   font-size: 13px;
   font-weight: 550;
   list-style: none;
   display: flex
}

.faq summary::-webkit-details-marker {
   display: none
}

.faq summary svg {
   flex-shrink: 0;
   transition: transform .2s
}

.faq details[open] summary svg {
   transform: rotate(45deg)
}

.faq details p {
   margin: 17px 30px 2px 0;
   font-size: 12px;
   line-height: 1.9
}

.footer {
   background: var(--forest);
   color: #fff;
   padding: 65px 0 24px
}

.footer-top {
   justify-content: space-between;
   align-items: center;
   display: flex
}

.footer-top .eyebrow {
   color: var(--teal-78);
   font-size: 9px
}

.footer-flower {
   color: var(--zest);
   font-size: 70px;
   line-height: 1
}

.footer h2 {
   letter-spacing: -2px;
   max-width: 1050px;
   margin: 20px 0 25px;
   font-size: 78px
}

.footer h2 em {
   color: var(--teal-71)
}

.footer-action {
   justify-content: space-between;
   align-items: center;
   gap: 25px;
   padding: 10px 0 60px;
   display: flex
}

.footer-action p {
   color: var(--teal-83);
   font-size: 14px
}

.cta-orange {
   color: var(--ink);
   background: var(--zest);
   border-color: var(--zest)
}

.cta-orange:hover {
   background: #ffe08f
}

.footer-bottom {
   border-top: 1px solid #ffffff25;
   align-items: center;
   gap: 28px;
   padding-top: 30px;
   display: flex
}

.footer-bottom .wordmark {
   font-size: 33px
}

.footer-bottom p {
   color: var(--teal-80);
   margin-right: auto;
   font-size: 10px
}

.footer-bottom>a:not(.wordmark) {
   align-items: center;
   gap: 8px;
   font-size: 10px;
   display: flex
}

.kalcu-site .footer-disclaimer {
   color: var(--teal-74);
   max-width: 100%;
   margin-top: 25px;
   font-size: 8px
}

.kalcu-dialog {
   --ivory: #fff;
   font-family: Quicksand, sans-serif;
   color: var(--forest) !important;
   background: #fff !important;
   border-radius: 18px !important;
   gap: 16px !important;
   max-width: 470px !important;
   padding: 32px !important
}

.kalcu-dialog .demo-title {
   font-family: Raleway, sans-serif;
   font-size: 37px;
   font-weight: 800;
   line-height: 1.05
}

.kalcu-dialog [id^=radix-][class*=text-muted] {
   font-size: 12px;
   line-height: 1.7;
   color: var(--gris-40) !important
}

.demo-label {
   margin-top: 8px;
   font-size: 12px;
   font-weight: 550
}

.kalcu-dialog select {
   color: var(--forest);
   background: #fff;
   border: 1px solid var(--teal-88b);
   border-radius: 7px;
   width: 100%;
   padding: 12px;
   font-size: 12px
}

.kalcu-dialog .cta {
   gap: 10px;
   font-size: 12px
}

.demo-result {
   background: var(--teal-96b);
   border-radius: 10px;
   padding: 20px
}

.demo-row {
   border-bottom: 1px solid var(--teal-89);
   justify-content: space-between;
   align-items: center;
   padding: 9px 0;
   font-size: 12px;
   display: flex
}

.demo-result p {
   margin: 14px 0 0;
   font-size: 10px;
   line-height: 1.7
}

.kalcu-dialog .fine-print {
   color: var(--gris-49);
   margin: 0;
   font-size: 10px;
   line-height: 1.6
}

@media (prefers-reduced-motion:reduce) {
   html {
      scroll-behavior: auto
   }

   * {
      transition: none !important
   }
}

@media (width>=1450px) {
   .hero {
      min-height: 850px
   }

   .hero h1 {
      font-size: 85px
   }

   .hero-visual {
      height: 600px
   }

   .phone {
      width: 255px;
      height: 535px
   }

   .quantity-card {
      bottom: 45px
   }

   .hero-visual-note {
      bottom: -5px
   }
}

@media (width<=1100px) {

   .wrap,
   .nav-inner {
      width: calc(100% - 64px)
   }

   .nav-links {
      gap: 20px;
      margin-left: 0
   }

   .hero {
      gap: 25px
   }

   .hero h1 {
      font-size: 69px
   }

   .hero-visual {
      transform-origin: 50%;
      transform: scale(.92)
   }

   .hero-benefits {
      font-size: 9px
   }

   .split,
   .favorite {
      gap: 55px
   }

   .kalcu-site h2 {
      font-size: 48px
   }

   .hero-visual-note {
      left: 40px
   }

   .benefit-strip {
      gap: 45px
   }

   .footer h2 {
      font-size: 68px
   }

   .pricing h2 {
      font-size: 58px
   }

   .life-statement h2 {
      font-size: 80px
   }

   .faq {
      gap: 50px
   }

   .favorite-photo {
      height: 480px
   }

   .comparison>div {
      padding: 32px
   }

   .personal-grid {
      gap: 25px
   }
}

@media (width<=767px) {
   html {
      scroll-padding-top: 90px
   }

   .wrap,
   .nav-inner {
      width: calc(100% - 40px)
   }

   .section-pad {
      padding-top: 68px;
      padding-bottom: 68px
   }

   .site-header {
      padding: 22px 0
   }

   .wordmark {
      font-size: 34px
   }

   .nav-inner {
      gap: 15px
   }

   .nav-cta {
      gap: 10px;
      margin-left: auto;
      padding: 10px 12px;
      font-size: 10px
   }

   .menu-toggle {
      display: block
   }

   .menu-toggle svg {
      width: 20px
   }

   .nav-links {
      display: none
   }

   .nav-links.open {
      color: var(--forest);
      background: #fff;
      border: 1px solid var(--teal-89);
      border-radius: 10px;
      flex-direction: column;
      gap: 21px;
      padding: 23px;
      display: flex;
      position: absolute;
      top: 75px;
      left: 20px;
      right: 20px;
      box-shadow: 0 12px 28px #176c8320
   }

   .raised .nav-inner {
      width: calc(100% - 24px);
      padding: 12px 18px
   }

   .raised .nav-links.open {
      top: 67px
   }

   .hero {
      grid-template-columns: 1fr;
      gap: 40px;
      min-height: 0;
      padding-top: 124px;
      padding-bottom: 62px
   }

   .hero h1 {
      margin: 24px 0;
      font-size: 65px;
      line-height: 1
   }

   .hero .eyebrow {
      letter-spacing: 1.2px;
      font-size: 8px
   }

   .hero-description {
      max-width: 440px !important;
      font-size: 14px !important
   }

   .hero-benefits {
      gap: 9px;
      max-width: 330px;
      font-size: 9px;
      line-height: 1.5
   }

   .hero .cta {
      width: 100%;
      max-width: 360px
   }

   .hero-copy .microcopy {
      text-align: center;
      width: 100%;
      max-width: 360px
   }

   .hero-visual {
      width: 100%;
      max-width: 420px;
      height: 500px;
      margin: auto;
      transform: none
   }

   .phone {
      width: 211px;
      height: 440px;
      left: 3px
   }

   .orbit {
      width: 310px;
      height: 310px
   }

   .orbit-two {
      width: 365px;
      height: 365px
   }

   .visual-caption {
      font-size: 10px;
      top: 0;
      left: 30px
   }

   .desire-bubble {
      padding: 13px;
      font-size: 10px;
      top: 70px;
      right: 0
   }

   .desire-bubble span {
      font-size: 16px
   }

   .dish-preview {
      border-width: 4px;
      width: 126px;
      height: 105px;
      top: 142px;
      left: -2px
   }

   .hero-visual-note {
      text-align: center;
      font-size: 7px;
      bottom: -16px;
      left: 0;
      right: 0
   }

   .benefit-strip {
      text-align: center;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
      padding: 23px 20px;
      font-size: 11px;
      display: grid
   }

   .strip-signature {
      font-size: 20px
   }

   .problem {
      padding-top: 67px;
      padding-bottom: 65px
   }

   .kalcu-site h2 {
      letter-spacing: -1.1px;
      font-size: 43px;
      line-height: 1.08
   }

   .kalcu-site p {
      font-size: 14px
   }

   .problem h2 br {
      display: none
   }

   .problem p {
      font-size: 13px
   }

   .problem-question {
      font-size: 31px
   }

   .eyebrow {
      letter-spacing: 1.4px;
      font-size: 8px
   }

   .section-intro {
      margin-bottom: 34px
   }

   .comparison {
      gap: 10px
   }

   .comparison>div {
      border-radius: 10px;
      padding: 22px 14px
   }

   .comparison h3 {
      margin: 20px 0;
      font-size: 26px;
      line-height: 1.1
   }

   .comparison-label {
      letter-spacing: .7px;
      font-size: 8px
   }

   .comparison-label span {
      font-size: 16px
   }

   .comparison-row {
      gap: 7px;
      min-height: 53px;
      padding: 10px 0;
      font-size: 10px;
      line-height: 1.5
   }

   .comparison-row svg {
      flex-shrink: 0;
      width: 12px
   }

   .numbers-cloud,
   .comparison-tag {
      font-size: 8px;
      line-height: 1.6
   }

   .favorite {
      grid-template-columns: 1fr;
      gap: 37px
   }

   .favorite-photo {
      order: 2;
      height: 360px
   }

   .favorite h2 br {
      display: none
   }

   .photo-sticker {
      font-size: 25px;
      right: 6px
   }

   .split {
      grid-template-columns: 1fr;
      gap: 37px
   }

   .numbered-step {
      margin-top: 23px
   }

   .magic h2 {
      font-size: 46px
   }

   .mock-stage {
      order: 2;
      margin: auto;
      padding: 28px 16px
   }

   .phone-mock {
      width: 232px;
      height: 482px
   }

   .photo-section {
      gap: 35px
   }

   .photo-callout {
      font-size: 14px
   }

   .personal-grid {
      grid-template-columns: 1fr 1fr;
      gap: 30px 22px;
      margin-top: 38px
   }

   .personal-grid h3 {
      margin-top: 17px;
      font-size: 26px
   }

   .personal-grid p {
      font-size: 12px
   }

   .personal-grid svg {
      width: 23px
   }

   .no-calories h2 br {
      display: none
   }

   .conversion {
      gap: 16px;
      margin-top: 30px;
      padding: 23px 18px
   }

   .macro-numbers {
      flex: 1;
      font-size: 24px
   }

   .macro-numbers small {
      font-size: 8px;
      line-height: 1.8
   }

   .conversion>svg {
      flex-shrink: 0;
      width: 21px
   }

   .real-food {
      gap: 12px;
      font-size: 12px
   }

   .use-grid {
      grid-template-columns: 1fr 1fr;
      gap: 12px
   }

   .use-grid article,
   .use-grid article:nth-child(4) {
      grid-column: auto;
      padding: 21px 17px
   }

   .use-grid article:last-child {
      grid-column: 1/-1
   }

   .use-grid article>span {
      font-size: 25px
   }

   .use-grid h3 {
      margin-top: 18px;
      font-size: 25px
   }

   .use-grid p {
      font-size: 11px
   }

   .goals-grid {
      grid-template-columns: 1fr 1fr;
      gap: 25px 20px
   }

   .goals-grid h3 {
      margin-top: 22px;
      font-size: 26px
   }

   .goals-grid p {
      font-size: 11px
   }

   .streak-card {
      max-width: 360px;
      padding: 26px
   }

   .consistency h2 {
      font-size: 43px
   }

   .life-statement {
      padding: 70px 0
   }

   .life-statement h2 {
      font-size: 73px
   }

   .price-card {
      padding: 28px
   }

   .pricing h2 {
      font-size: 51px
   }

   .faq {
      grid-template-columns: 1fr;
      gap: 30px
   }

   .faq h2 {
      font-size: 47px
   }

   .faq h2 br {
      display: none
   }

   .faq summary {
      font-size: 12px
   }

   .faq-items details {
      padding: 20px 0
   }

   .footer {
      padding-top: 42px
   }

   .footer h2 {
      letter-spacing: -1.3px;
      font-size: 53px;
      line-height: 1.03
   }

   .footer-flower {
      font-size: 45px
   }

   .footer-top .eyebrow {
      font-size: 7px
   }

   .footer-action {
      padding-bottom: 40px;
      display: block
   }

   .footer-action p {
      margin: 18px 0 24px;
      font-size: 12px
   }

   .footer-action .cta {
      width: 100%
   }

   .footer-bottom {
      flex-wrap: wrap;
      gap: 20px 25px;
      padding-top: 25px
   }

   .footer-bottom .wordmark {
      font-size: 32px
   }

   .footer-bottom p {
      margin: 0 0 0 auto;
      font-size: 8px
   }

   .footer-bottom>a:not(.wordmark) {
      font-size: 9px
   }

   .footer-disclaimer {
      line-height: 1.8 !important
   }

   .kalcu-dialog {
      max-height: 90vh;
      overflow: auto;
      width: calc(100% - 32px) !important;
      padding: 26px !important
   }

   .kalcu-dialog .demo-title {
      font-size: 33px
   }
}

*,
:before,
:after,
::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: #3b82f680;
   --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: 0 solid #e5e7eb
}

:before,
:after {
   --tw-content: ""
}

html,
:host {
   -webkit-text-size-adjust: 100%;
   tab-size: 4;
   font-feature-settings: normal;
   font-variation-settings: normal;
   -webkit-tap-highlight-color: transparent;
   font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
   line-height: 1.5
}

body {
   line-height: inherit;
   margin: 0
}

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;
   -webkit-text-decoration: inherit;
   text-decoration: inherit
}

b,
strong {
   font-weight: bolder
}

code,
kbd,
samp,
pre {
   font-family: var(--font-mono);
   font-feature-settings: normal;
   font-variation-settings: normal;
   font-size: 1em
}

small {
   font-size: 80%
}

sub,
sup {
   vertical-align: baseline;
   font-size: 75%;
   line-height: 0;
   position: relative
}

sub {
   bottom: -.25em
}

sup {
   top: -.5em
}

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

button,
input,
optgroup,
select,
textarea {
   font-feature-settings: inherit;
   font-variation-settings: inherit;
   font-family: 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: #0000;
   background-image: none
}

:-moz-focusring {
   outline: auto
}

:-moz-ui-invalid {
   box-shadow: none
}

progress {
   vertical-align: baseline
}

::-webkit-inner-spin-button {
   height: auto
}

::-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 {
   margin: 0;
   padding: 0;
   list-style: none
}

dialog {
   padding: 0
}

textarea {
   resize: vertical
}

input::-moz-placeholder {
   opacity: 1;
   color: #9ca3af
}

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 {
   vertical-align: middle;
   display: block
}

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

[hidden]:where(:not([hidden=until-found])) {
   display: none
}

:root {
   --background: 0 0% 100%;
   --foreground: 193 70% 16%;
   --card: 0 0% 100%;
   --card-foreground: 0 0% 3.9%;
   --popover: 0 0% 100%;
   --popover-foreground: 0 0% 3.9%;
   --primary: 193 70% 30%;
   --primary-foreground: 0 0% 100%;
   --secondary: 190 40% 95%;
   --secondary-foreground: 193 70% 20%;
   --muted: 190 35% 95%;
   --muted-foreground: 196 14% 44%;
   --accent: 0 0% 96.1%;
   --accent-foreground: 0 0% 9%;
   --destructive: 0 84.2% 60.2%;
   --destructive-foreground: 0 0% 98%;
   --border: 190 25% 90%;
   --input: 190 25% 90%;
   --ring: 190 60% 45%;
   --chart-1: 12 76% 61%;
   --chart-2: 173 58% 39%;
   --chart-3: 197 37% 24%;
   --chart-4: 43 74% 66%;
   --chart-5: 27 87% 67%;
   --radius: .5rem;
   --font-heading: "Raleway", sans-serif;
   --font-body: "Quicksand", sans-serif;
   --font-display: "Raleway", sans-serif;
   --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
   --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: 194 45% 8%;
   --foreground: 190 30% 96%;
   --card: 0 0% 3.9%;
   --card-foreground: 0 0% 98%;
   --popover: 0 0% 3.9%;
   --popover-foreground: 0 0% 98%;
   --primary: 190 60% 62%;
   --primary-foreground: 0 0% 9%;
   --secondary: 0 0% 14.9%;
   --secondary-foreground: 0 0% 98%;
   --muted: 0 0% 14.9%;
   --muted-foreground: 0 0% 63.9%;
   --accent: 0 0% 14.9%;
   --accent-foreground: 0 0% 98%;
   --destructive: 0 62.8% 30.6%;
   --destructive-foreground: 0 0% 98%;
   --border: 193 25% 20%;
   --input: 193 25% 20%;
   --ring: 190 55% 55%;
   --chart-1: 220 70% 50%;
   --chart-2: 160 60% 45%;
   --chart-3: 30 80% 55%;
   --chart-4: 280 65% 60%;
   --chart-5: 340 75% 55%;
   --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));
   outline-color: hsl(var(--ring) / .5)
}

body {
   background-color: hsl(var(--background));
   font-family: var(--font-body);
   color: hsl(var(--foreground))
}

.container {
   width: 100%
}

@media (width>=640px) {
   .container {
      max-width: 640px
   }
}

@media (width>=768px) {
   .container {
      max-width: 768px
   }
}

@media (width>=1024px) {
   .container {
      max-width: 1024px
   }
}

@media (width>=1280px) {
   .container {
      max-width: 1280px
   }
}

@media (width>=1536px) {
   .container {
      max-width: 1536px
   }
}

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

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

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

.visible {
   visibility: visible
}

.invisible {
   visibility: hidden
}

.static {
   position: static
}

.fixed {
   position: fixed
}

.absolute {
   position: absolute
}

.relative {
   position: relative
}

.inset-0 {
   inset: 0
}

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

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

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

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

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

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

.bottom-0 {
   bottom: 0
}

.left-0 {
   left: 0
}

.left-1 {
   left: .25rem
}

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

.left-2 {
   left: .5rem
}

.left-3 {
   left: .75rem
}

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

.right-0 {
   right: 0
}

.right-1 {
   right: .25rem
}

.right-2 {
   right: .5rem
}

.right-3 {
   right: .75rem
}

.right-4 {
   right: 1rem
}

.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-\[1px\] {
   top: 1px
}

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

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

.top-full {
   top: 100%
}

.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
}

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

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

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

.mb-10 {
   margin-bottom: 2.5rem
}

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

.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-1 {
   margin-right: .25rem
}

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

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

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

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

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

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

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

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

.mt-auto {
   margin-top: auto
}

.block {
   display: block
}

.inline-block {
   display: inline-block
}

.inline {
   display: inline
}

.flex {
   display: flex
}

.inline-flex {
   display: inline-flex
}

.table {
   display: table
}

.grid {
   display: grid
}

.hidden {
   display: none
}

.aspect-square {
   aspect-ratio: 1
}

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

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

.h-0\.5 {
   height: .125rem
}

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

.h-10 {
   height: 2.5rem
}

.h-12 {
   height: 3rem
}

.h-14 {
   height: 3.5rem
}

.h-16 {
   height: 4rem
}

.h-2 {
   height: .5rem
}

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

.h-3 {
   height: .75rem
}

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

.h-4 {
   height: 1rem
}

.h-5 {
   height: 1.25rem
}

.h-7 {
   height: 1.75rem
}

.h-8 {
   height: 2rem
}

.h-9 {
   height: 2.25rem
}

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

.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-96 {
   max-height: 24rem
}

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

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

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

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

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

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

.w-0 {
   width: 0
}

.w-1 {
   width: .25rem
}

.w-10 {
   width: 2.5rem
}

.w-14 {
   width: 3.5rem
}

.w-16 {
   width: 4rem
}

.w-2 {
   width: .5rem
}

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

.w-3 {
   width: .75rem
}

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

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

.w-4 {
   width: 1rem
}

.w-5 {
   width: 1.25rem
}

.w-64 {
   width: 16rem
}

.w-7 {
   width: 1.75rem
}

.w-72 {
   width: 18rem
}

.w-8 {
   width: 2rem
}

.w-9 {
   width: 2.25rem
}

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

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

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

.w-auto {
   width: auto
}

.w-full {
   width: 100%
}

.w-max {
   width: max-content
}

.w-px {
   width: 1px
}

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

.min-w-10 {
   min-width: 2.5rem
}

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

.min-w-8 {
   min-width: 2rem
}

.min-w-9 {
   min-width: 2.25rem
}

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

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

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

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

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

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

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

.flex-1 {
   flex: 1
}

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

.grow {
   flex-grow: 1
}

.grow-0 {
   flex-grow: 0
}

.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)) skewX(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)) skewX(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)) skewX(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)) skewX(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)) skewX(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)) skewX(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)) skewX(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)) skewX(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)) skewX(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: 2s cubic-bezier(.4, 0, .6, 1) infinite pulse
}

@keyframes spin {
   to {
      transform: rotate(360deg)
   }
}

.animate-spin {
   animation: 1s linear infinite spin
}

.cursor-default {
   cursor: default
}

.cursor-pointer {
   cursor: pointer
}

.touch-none {
   touch-action: none
}

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

.list-inside {
   list-style-position: inside
}

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

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

.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-center {
   justify-content: center
}

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

.gap-1 {
   gap: .25rem
}

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

.gap-2 {
   gap: .5rem
}

.gap-3 {
   gap: .75rem
}

.gap-4 {
   gap: 1rem
}

.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-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-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-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-2 {
   border-width: 2px
}

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

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

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

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

.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-border {
   border-color: hsl(var(--border))
}

.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-input {
   border-color: hsl(var(--input))
}

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

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

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

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

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

.border-transparent {
   border-color: #0000
}

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

.border-t-slate-800 {
   --tw-border-opacity: 1;
   border-top-color: rgb(30 41 59/var(--tw-border-opacity, 1))
}

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

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

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

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

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

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

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

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

.bg-destructive\/10 {
   background-color: hsl(var(--destructive) / .1)
}

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

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

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

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

.bg-orange-400 {
   --tw-bg-opacity: 1;
   background-color: rgb(251 146 60/var(--tw-bg-opacity, 1))
}

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

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

.bg-primary\/10 {
   background-color: hsl(var(--primary) / .1)
}

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

.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-transparent {
   background-color: #0000
}

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

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

.from-white {
   --tw-gradient-from: #fff var(--tw-gradient-from-position);
   --tw-gradient-to: #fff0 var(--tw-gradient-to-position);
   --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)
}

.to-slate-50 {
   --tw-gradient-to: var(--teal-98) var(--tw-gradient-to-position)
}

.fill-current {
   fill: currentColor
}

.fill-primary {
   fill: hsl(var(--primary))
}

.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-1\.5 {
   padding-left: .375rem;
   padding-right: .375rem
}

.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-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-2 {
   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-10 {
   padding-left: 2.5rem
}

.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
}

.text-left {
   text-align: left
}

.text-center {
   text-align: center
}

.align-middle {
   vertical-align: middle
}

.font-mono {
   font-family: var(--font-mono)
}

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

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

.text-7xl {
   font-size: 4.5rem;
   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-xs {
   font-size: .75rem;
   line-height: 1rem
}

.font-bold {
   font-weight: 700
}

.font-light {
   font-weight: 300
}

.font-medium {
   font-weight: 500
}

.font-normal {
   font-weight: 400
}

.font-semibold {
   font-weight: 600
}

.uppercase {
   text-transform: uppercase
}

.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-widest {
   letter-spacing: .1em
}

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

.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-muted-foreground {
   color: hsl(var(--muted-foreground))
}

.text-orange-600 {
   --tw-text-opacity: 1;
   color: rgb(234 88 12/var(--tw-text-opacity, 1))
}

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

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

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

.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-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-800 {
   --tw-text-opacity: 1;
   color: rgb(30 41 59/var(--tw-text-opacity, 1))
}

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

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

.opacity-0 {
   opacity: 0
}

.opacity-50 {
   opacity: .5
}

.opacity-60 {
   opacity: .6
}

.opacity-70 {
   opacity: .7
}

.opacity-90 {
   opacity: .9
}

.shadow {
   --tw-shadow: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;
   --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)
}

.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-lg {
   --tw-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
   --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 #0000001a, 0 2px 4px -2px #0000001a;
   --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 #0000000d;
   --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 #0000001a, 0 8px 10px -6px #0000001a;
   --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)
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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 {
   --tw-enter-opacity: initial;
   --tw-enter-scale: initial;
   --tw-enter-rotate: initial;
   --tw-enter-translate-x: initial;
   --tw-enter-translate-y: initial;
   animation-name: enter;
   animation-duration: .15s
}

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

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

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

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

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

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

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

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

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

.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::placeholder {
   color: hsl(var(--muted-foreground))
}

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

.after\:-inset-2:after {
   content: var(--tw-content);
   inset: -.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)) skewX(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\: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\:border-slate-300:hover {
   --tw-border-opacity: 1;
   border-color: rgb(203 213 225/var(--tw-border-opacity, 1))
}

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

.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-50:hover {
   --tw-bg-opacity: 1;
   background-color: rgb(248 250 252/var(--tw-bg-opacity, 1))
}

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

.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\:underline:hover {
   text-decoration-line: underline
}

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

.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\: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-offset: 2px;
   outline: 2px solid #0000
}

.focus\:ring-1: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(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\: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-slate-500:focus {
   --tw-ring-opacity: 1;
   --tw-ring-color: rgb(100 116 139/var(--tw-ring-opacity, 1))
}

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

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

.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,
.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 #0000001a, 0 4px 6px -4px #0000001a;
   --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
}

.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)) skewX(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)) skewX(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)) skewX(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)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

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

.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)) skewX(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)) skewX(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)) skewX(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: .2s ease-out accordion-up
}

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

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

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

.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-\[placeholder\]\:text-muted-foreground[data-placeholder] {
   color: hsl(var(--muted-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[data-state=active] {
   --tw-shadow: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;
   --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)
}

.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] {
   --tw-enter-opacity: initial;
   --tw-enter-scale: initial;
   --tw-enter-rotate: initial;
   --tw-enter-translate-x: initial;
   --tw-enter-translate-y: initial;
   animation-name: enter;
   animation-duration: .15s
}

.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] {
   --tw-exit-opacity: initial;
   --tw-exit-scale: initial;
   --tw-exit-rotate: initial;
   --tw-exit-translate-x: initial;
   --tw-exit-translate-y: initial;
   animation-name: exit;
   animation-duration: .15s
}

.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)) skewX(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)) skewX(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: 0
}

.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)) skewX(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)) skewX(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 #0000001a, 0 1px 2px -1px #0000001a;
   --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 (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 (width>=768px) {
   .md\:absolute {
      position: absolute
   }

   .md\:block {
      display: block
   }

   .md\:flex {
      display: flex
   }

   .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\:text-sm {
      font-size: .875rem;
      line-height: 1.25rem
   }

   .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 #0000001a, 0 1px 2px -1px #0000001a;
      --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)
   }
}

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

.\[\&\:has\(\>\.day-range-start\)\]\:rounded-l-md:has(>.day-range-start) {
   border-top-left-radius: calc(var(--radius) - 2px);
   border-bottom-left-radius: calc(var(--radius) - 2px)
}

.\[\&\:has\(\[aria-selected\]\)\]\:rounded-md:has([aria-selected]) {
   border-radius: calc(var(--radius) - 2px)
}

.\[\&\: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
}

.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox] {
   --tw-translate-y: 2px;
   transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

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

.\[\&\>span\:last-child\]\:truncate>span:last-child {
   text-overflow: ellipsis;
   white-space: nowrap;
   overflow: hidden
}

.\[\&\>span\]\:line-clamp-1>span {
   -webkit-line-clamp: 1;
   -webkit-box-orient: vertical;
   display: -webkit-box;
   overflow: hidden
}

.\[\&\>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)) skewX(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-4>svg {
   width: 1rem;
   height: 1rem
}

.\[\&\>svg\]\:h-2\.5>svg {
   height: .625rem
}

.\[\&\>svg\]\:h-3>svg {
   height: .75rem
}

.\[\&\>svg\]\:h-3\.5>svg {
   height: .875rem
}

.\[\&\>svg\]\:w-2\.5>svg {
   width: .625rem
}

.\[\&\>svg\]\:w-3>svg {
   width: .75rem
}

.\[\&\>svg\]\:w-3\.5>svg {
   width: .875rem
}

.\[\&\>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: 0
}

.\[\&\[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)) skewX(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)) skewX(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: #0000
}

.\[\&_\.recharts-layer\]\:outline-none .recharts-layer {
   outline-offset: 2px;
   outline: 2px solid #0000
}

.\[\&_\.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: #0000
}

.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,
.\[\&_\.recharts-surface\]\:outline-none .recharts-surface {
   outline-offset: 2px;
   outline: 2px solid #0000
}

.\[\&_\[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: 0
}

.\[\&_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
}
/* Contacto visible al pie (14-oct-2026) */
.kalcu-site .footer-contact {
   color: var(--teal-80);
   font-size: 16px;
   margin: 0 0 28px
}

.kalcu-site .footer-contact a {
   color: var(--zest);
   font-weight: 700;
   text-decoration: none
}

.kalcu-site .footer-contact a:hover {
   text-decoration: underline
}
