/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
    'Noto Color Emoji';
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
  --spacing: 0.25rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-xl: 1.25rem;
  --text-xl--line-height: calc(1.75 / 1.25);
  --text-2xl: 1.5rem;
  --text-2xl--line-height: calc(2 / 1.5);
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --default-font-family: var(--font-sans);
  --default-mono-font-family: var(--font-mono);
  --font-plusJakartaSans: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  --font-sFPro: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Arial, sans-serif;
  --font-sFProText: -apple-system, BlinkMacSystemFont, "SF Pro Text", Arial, sans-serif;
}
*, ::after, ::before, ::backdrop, ::file-selector-button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0 solid;
}
html, :host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
  font-feature-settings: var(--default-font-feature-settings, normal);
  font-variation-settings: var(--default-font-variation-settings, normal);
  -webkit-tap-highlight-color: transparent;
}
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(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
  font-feature-settings: var(--default-mono-font-feature-settings, normal);
  font-variation-settings: var(--default-mono-font-variation-settings, normal);
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
:-moz-focusring {
  outline: auto;
}
progress {
  vertical-align: baseline;
}
summary {
  display: list-item;
}
ol, ul, menu {
  list-style: none;
}
img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  vertical-align: middle;
}
img, video {
  max-width: 100%;
  height: auto;
}
button, input, select, optgroup, textarea, ::file-selector-button {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  border-radius: 0;
  background-color: transparent;
  opacity: 1;
}
:where(select:is([multiple], [size])) optgroup {
  font-weight: bolder;
}
:where(select:is([multiple], [size])) optgroup option {
  padding-inline-start: 20px;
}
::file-selector-button {
  margin-inline-end: 4px;
}
::placeholder {
  opacity: 1;
}
@supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
  ::placeholder {
    color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentcolor 50%, transparent);
    }
  }
}
textarea {
  resize: vertical;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-date-and-time-value {
  min-height: 1lh;
  text-align: inherit;
}
::-webkit-datetime-edit {
  display: inline-flex;
}
::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}
:-moz-ui-invalid {
  box-shadow: none;
}
button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
  appearance: button;
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto;
}
[hidden]:where(:not([hidden='until-found'])) {
  display: none !important;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.-top-0\.5 {
  top: calc(var(--spacing) * -0.5);
}
.-top-\[7px\] {
  top: calc(7px * -1);
}
.top-0 {
  top: calc(var(--spacing) * 0);
}
.top-0\.5 {
  top: calc(var(--spacing) * 0.5);
}
.top-9 {
  top: calc(var(--spacing) * 9);
}
.top-\[5px\] {
  top: 5px;
}
.top-\[7px\] {
  top: 7px;
}
.top-\[62px\] {
  top: 62px;
}
.top-\[68px\] {
  top: 68px;
}
.top-\[81px\] {
  top: 81px;
}
.top-\[85px\] {
  top: 85px;
}
.top-\[89px\] {
  top: 89px;
}
.top-\[104px\] {
  top: 104px;
}
.top-\[145px\] {
  top: 145px;
}
.top-\[149px\] {
  top: 149px;
}
.top-\[161px\] {
  top: 161px;
}
.top-\[175px\] {
  top: 175px;
}
.top-\[177px\] {
  top: 177px;
}
.top-\[225px\] {
  top: 225px;
}
.top-\[227px\] {
  top: 227px;
}
.top-\[234px\] {
  top: 234px;
}
.top-\[237px\] {
  top: 237px;
}
.top-\[247px\] {
  top: 247px;
}
.top-\[275px\] {
  top: 275px;
}
.top-\[316px\] {
  top: 316px;
}
.top-\[351px\] {
  top: 351px;
}
.top-\[354px\] {
  top: 354px;
}
.top-\[361px\] {
  top: 361px;
}
.top-\[369px\] {
  top: 369px;
}
.top-\[375px\] {
  top: 375px;
}
.top-\[382px\] {
  top: 382px;
}
.top-\[396px\] {
  top: 396px;
}
.top-\[407px\] {
  top: 407px;
}
.top-\[415px\] {
  top: 415px;
}
.top-\[436px\] {
  top: 436px;
}
.top-\[446px\] {
  top: 446px;
}
.top-\[456px\] {
  top: 456px;
}
.top-\[466px\] {
  top: 466px;
}
.top-\[474px\] {
  top: 474px;
}
.top-\[480px\] {
  top: 480px;
}
.top-\[513px\] {
  top: 513px;
}
.top-\[576px\] {
  top: 576px;
}
.top-\[625px\] {
  top: 625px;
}
.top-\[818px\] {
  top: 818px;
}
.top-\[828px\] {
  top: 828px;
}
.top-\[840px\] {
  top: 840px;
}
.top-\[852px\] {
  top: 852px;
}
.top-\[871px\] {
  top: 871px;
}
.top-\[903px\] {
  top: 903px;
}
.top-\[921px\] {
  top: 921px;
}
.top-\[934px\] {
  top: 934px;
}
.top-\[975px\] {
  top: 975px;
}
.top-\[987px\] {
  top: 987px;
}
.top-\[1010px\] {
  top: 1010px;
}
.top-\[1040px\] {
  top: 1040px;
}
.top-\[1053px\] {
  top: 1053px;
}
.top-\[1080px\] {
  top: 1080px;
}
.top-\[1115px\] {
  top: 1115px;
}
.top-\[1131px\] {
  top: 1131px;
}
.top-\[1162px\] {
  top: 1162px;
}
.top-\[1176px\] {
  top: 1176px;
}
.top-\[1247px\] {
  top: 1247px;
}
.top-\[1331px\] {
  top: 1331px;
}
.top-\[1339px\] {
  top: 1339px;
}
.top-\[1342px\] {
  top: 1342px;
}
.top-\[1398px\] {
  top: 1398px;
}
.top-\[1670px\] {
  top: 1670px;
}
.top-\[1894px\] {
  top: 1894px;
}
.top-\[2625px\] {
  top: 2625px;
}
.top-px {
  top: 1px;
}
.-right-0\.5 {
  right: calc(var(--spacing) * -0.5);
}
.-right-\[9px\] {
  right: calc(9px * -1);
}
.-right-px {
  right: -1px;
}
.right-40 {
  right: calc(var(--spacing) * 40);
}
.-bottom-\[35px\] {
  bottom: calc(35px * -1);
}
.-bottom-\[49px\] {
  bottom: calc(49px * -1);
}
.bottom-\[22px\] {
  bottom: 22px;
}
.bottom-\[37px\] {
  bottom: 37px;
}
.bottom-\[38px\] {
  bottom: 38px;
}
.-left-0\.5 {
  left: calc(var(--spacing) * -0.5);
}
.-left-px {
  left: -1px;
}
.left-0 {
  left: calc(var(--spacing) * 0);
}
.left-0\.5 {
  left: calc(var(--spacing) * 0.5);
}
.left-1\.5 {
  left: calc(var(--spacing) * 1.5);
}
.left-5 {
  left: calc(var(--spacing) * 5);
}
.left-96 {
  left: calc(var(--spacing) * 96);
}
.left-\[19px\] {
  left: 19px;
}
.left-\[25px\] {
  left: 25px;
}
.left-\[26px\] {
  left: 26px;
}
.left-\[41px\] {
  left: 41px;
}
.left-\[42px\] {
  left: 42px;
}
.left-\[43px\] {
  left: 43px;
}
.left-\[45px\] {
  left: 45px;
}
.left-\[46px\] {
  left: 46px;
}
.left-\[47px\] {
  left: 47px;
}
.left-\[49px\] {
  left: 49px;
}
.left-\[60px\] {
  left: 60px;
}
.left-\[68px\] {
  left: 68px;
}
.left-\[78px\] {
  left: 78px;
}
.left-\[159px\] {
  left: 159px;
}
.left-\[161px\] {
  left: 161px;
}
.left-\[185px\] {
  left: 185px;
}
.left-\[905px\] {
  left: 905px;
}
.left-\[1426px\] {
  left: 1426px;
}
.left-\[1947px\] {
  left: 1947px;
}
.left-\[2607px\] {
  left: 2607px;
}
.left-\[3178px\] {
  left: 3178px;
}
.left-\[3749px\] {
  left: 3749px;
}
.left-px {
  left: 1px;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.h-1 {
  height: calc(var(--spacing) * 1);
}
.h-1\.5 {
  height: calc(var(--spacing) * 1.5);
}
.h-2 {
  height: calc(var(--spacing) * 2);
}
.h-3 {
  height: calc(var(--spacing) * 3);
}
.h-4 {
  height: calc(var(--spacing) * 4);
}
.h-5 {
  height: calc(var(--spacing) * 5);
}
.h-6 {
  height: calc(var(--spacing) * 6);
}
.h-7 {
  height: calc(var(--spacing) * 7);
}
.h-8 {
  height: calc(var(--spacing) * 8);
}
.h-9 {
  height: calc(var(--spacing) * 9);
}
.h-10 {
  height: calc(var(--spacing) * 10);
}
.h-11 {
  height: calc(var(--spacing) * 11);
}
.h-12 {
  height: calc(var(--spacing) * 12);
}
.h-32 {
  height: calc(var(--spacing) * 32);
}
.h-\[9px\] {
  height: 9px;
}
.h-\[11px\] {
  height: 11px;
}
.h-\[13px\] {
  height: 13px;
}
.h-\[19px\] {
  height: 19px;
}
.h-\[21px\] {
  height: 21px;
}
.h-\[22px\] {
  height: 22px;
}
.h-\[25px\] {
  height: 25px;
}
.h-\[30px\] {
  height: 30px;
}
.h-\[34px\] {
  height: 34px;
}
.h-\[72px\] {
  height: 72px;
}
.h-\[79px\] {
  height: 79px;
}
.h-\[84px\] {
  height: 84px;
}
.h-\[97px\] {
  height: 97px;
}
.h-\[117px\] {
  height: 117px;
}
.h-\[170px\] {
  height: 170px;
}
.h-\[264px\] {
  height: 264px;
}
.h-\[275px\] {
  height: 275px;
}
.h-\[852px\] {
  height: 852px;
}
.h-\[955px\] {
  height: 955px;
}
.h-\[968px\] {
  height: 968px;
}
.h-\[1009px\] {
  height: 1009px;
}
.h-\[1114px\] {
  height: 1114px;
}
.h-\[1165px\] {
  height: 1165px;
}
.h-\[1210px\] {
  height: 1210px;
}
.h-\[1365px\] {
  height: 1365px;
}
.h-\[1432px\] {
  height: 1432px;
}
.h-\[1440px\] {
  height: 1440px;
}
.min-h-screen {
  min-height: 100vh;
}
.w-2 {
  width: calc(var(--spacing) * 2);
}
.w-3 {
  width: calc(var(--spacing) * 3);
}
.w-4 {
  width: calc(var(--spacing) * 4);
}
.w-5 {
  width: calc(var(--spacing) * 5);
}
.w-6 {
  width: calc(var(--spacing) * 6);
}
.w-7 {
  width: calc(var(--spacing) * 7);
}
.w-8 {
  width: calc(var(--spacing) * 8);
}
.w-9 {
  width: calc(var(--spacing) * 9);
}
.w-11 {
  width: calc(var(--spacing) * 11);
}
.w-32 {
  width: calc(var(--spacing) * 32);
}
.w-\[9px\] {
  width: 9px;
}
.w-\[11px\] {
  width: 11px;
}
.w-\[17px\] {
  width: 17px;
}
.w-\[19px\] {
  width: 19px;
}
.w-\[21px\] {
  width: 21px;
}
.w-\[25px\] {
  width: 25px;
}
.w-\[27px\] {
  width: 27px;
}
.w-\[39px\] {
  width: 39px;
}
.w-\[55px\] {
  width: 55px;
}
.w-\[67px\] {
  width: 67px;
}
.w-\[72px\] {
  width: 72px;
}
.w-\[73px\] {
  width: 73px;
}
.w-\[78px\] {
  width: 78px;
}
.w-\[82px\] {
  width: 82px;
}
.w-\[88px\] {
  width: 88px;
}
.w-\[92px\] {
  width: 92px;
}
.w-\[116px\] {
  width: 116px;
}
.w-\[122px\] {
  width: 122px;
}
.w-\[127px\] {
  width: 127px;
}
.w-\[130px\] {
  width: 130px;
}
.w-\[136px\] {
  width: 136px;
}
.w-\[138px\] {
  width: 138px;
}
.w-\[148px\] {
  width: 148px;
}
.w-\[151px\] {
  width: 151px;
}
.w-\[153px\] {
  width: 153px;
}
.w-\[159px\] {
  width: 159px;
}
.w-\[166px\] {
  width: 166px;
}
.w-\[168px\] {
  width: 168px;
}
.w-\[169px\] {
  width: 169px;
}
.w-\[220px\] {
  width: 220px;
}
.w-\[231px\] {
  width: 231px;
}
.w-\[266px\] {
  width: 266px;
}
.w-\[269px\] {
  width: 269px;
}
.w-\[271px\] {
  width: 271px;
}
.w-\[297px\] {
  width: 297px;
}
.w-\[302px\] {
  width: 302px;
}
.w-\[305px\] {
  width: 305px;
}
.w-\[349px\] {
  width: 349px;
}
.w-\[353px\] {
  width: 353px;
}
.w-\[354px\] {
  width: 354px;
}
.w-\[393px\] {
  width: 393px;
}
.w-\[396px\] {
  width: 396px;
}
.w-\[492px\] {
  width: 492px;
}
.w-\[514px\] {
  width: 514px;
}
.w-fit {
  width: fit-content;
}
.w-full {
  width: 100%;
}
.w-px {
  width: 1px;
}
.max-w-none {
  max-width: none;
}
.min-w-screen {
  min-width: 100vw;
}
.shrink-0 {
  flex-shrink: 0;
}
.cursor-pointer {
  cursor: pointer;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}
.items-start {
  align-items: flex-start;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.gap-1 {
  gap: calc(var(--spacing) * 1);
}
.gap-1\.5 {
  gap: calc(var(--spacing) * 1.5);
}
.gap-2 {
  gap: calc(var(--spacing) * 2);
}
.gap-2\.5 {
  gap: calc(var(--spacing) * 2.5);
}
.gap-3 {
  gap: calc(var(--spacing) * 3);
}
.gap-4 {
  gap: calc(var(--spacing) * 4);
}
.gap-5 {
  gap: calc(var(--spacing) * 5);
}
.gap-6 {
  gap: calc(var(--spacing) * 6);
}
.gap-8 {
  gap: calc(var(--spacing) * 8);
}
.gap-10 {
  gap: calc(var(--spacing) * 10);
}
.gap-11 {
  gap: calc(var(--spacing) * 11);
}
.gap-16 {
  gap: calc(var(--spacing) * 16);
}
.gap-\[5px\] {
  gap: 5px;
}
.gap-\[7px\] {
  gap: 7px;
}
.gap-\[9px\] {
  gap: 9px;
}
.gap-\[88px\] {
  gap: 88px;
}
.gap-\[154px\] {
  gap: 154px;
}
.-space-y-1 {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * -1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * -1) * calc(1 - var(--tw-space-y-reverse)));
  }
}
.overflow-hidden {
  overflow: hidden;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: var(--radius-2xl);
}
.rounded-3xl {
  border-radius: var(--radius-3xl);
}
.rounded-\[2\.5px\] {
  border-radius: 2.5px;
}
.rounded-\[4\.3px\] {
  border-radius: 4.3px;
}
.rounded-\[6\.2px\] {
  border-radius: 6.2px;
}
.rounded-\[9\.3px\] {
  border-radius: 9.3px;
}
.rounded-\[15\.4px\] {
  border-radius: 15.4px;
}
.rounded-\[15\.6px\] {
  border-radius: 15.6px;
}
.rounded-\[15\.7px\] {
  border-radius: 15.7px;
}
.rounded-\[17\.9px\] {
  border-radius: 17.9px;
}
.rounded-\[18\.3px\] {
  border-radius: 18.3px;
}
.rounded-\[18\.7px\] {
  border-radius: 18.7px;
}
.rounded-\[20px\] {
  border-radius: 20px;
}
.rounded-\[44px\] {
  border-radius: 44px;
}
.rounded-\[52px\] {
  border-radius: 52px;
}
.rounded-lg {
  border-radius: var(--radius-lg);
}
.rounded-xl {
  border-radius: var(--radius-xl);
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-\[0\.93px\] {
  border-style: var(--tw-border-style);
  border-width: 0.93px;
}
.border-\[1\.5px\] {
  border-style: var(--tw-border-style);
  border-width: 1.5px;
}
.border-\[1\.44px\] {
  border-style: var(--tw-border-style);
  border-width: 1.44px;
}
.border-\[1\.75px\] {
  border-style: var(--tw-border-style);
  border-width: 1.75px;
}
.border-r {
  border-right-style: var(--tw-border-style);
  border-right-width: 1px;
}
.border-b {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}
.border-\[\#000\] {
  border-color: #000;
}
.border-\[\#6E6E6E\] {
  border-color: #6E6E6E;
}
.border-\[\#818CF8\] {
  border-color: #818CF8;
}
.border-\[\#4338CA\] {
  border-color: #4338CA;
}
.border-\[\#C7D2FE\] {
  border-color: #C7D2FE;
}
.border-\[\#CCC\] {
  border-color: #CCC;
}
.border-\[\#D9D9D9\] {
  border-color: #D9D9D9;
}
.border-\[\#EEF2FF\] {
  border-color: #EEF2FF;
}
.border-\[\#F2F2F2\] {
  border-color: #F2F2F2;
}
.border-r-\[\#F2F2F2\] {
  border-right-color: #F2F2F2;
}
.border-b-\[\#D9D9D9\] {
  border-bottom-color: #D9D9D9;
}
.border-b-\[\#F2F2F2\] {
  border-bottom-color: #F2F2F2;
}
.bg-\[\#000\] {
  background-color: #000;
}
.bg-\[\#4338CA\] {
  background-color: #4338CA;
}
.bg-\[\#B5B5B5\] {
  background-color: #B5B5B5;
}
.bg-\[\#D4F7E1\] {
  background-color: #D4F7E1;
}
.bg-\[\#D9D9D9\] {
  background-color: #D9D9D9;
}
.bg-\[\#D9F7E8\] {
  background-color: #D9F7E8;
}
.bg-\[\#E0E7FF\] {
  background-color: #E0E7FF;
}
.bg-\[\#E2E8F0\] {
  background-color: #E2E8F0;
}
.bg-\[\#EAF2FD\] {
  background-color: #EAF2FD;
}
.bg-\[\#EAF9F6\] {
  background-color: #EAF9F6;
}
.bg-\[\#EBE9FE\] {
  background-color: #EBE9FE;
}
.bg-\[\#EBF4FD\] {
  background-color: #EBF4FD;
}
.bg-\[\#EBF4FE\] {
  background-color: #EBF4FE;
}
.bg-\[\#EBF6F2\] {
  background-color: #EBF6F2;
}
.bg-\[\#EBF9F5\] {
  background-color: #EBF9F5;
}
.bg-\[\#ECFEFF\] {
  background-color: #ECFEFF;
}
.bg-\[\#EEF2FF\] {
  background-color: #EEF2FF;
}
.bg-\[\#F2F1FE\] {
  background-color: #F2F1FE;
}
.bg-\[\#F2F2F2\] {
  background-color: #F2F2F2;
}
.bg-\[\#F8FAFC\] {
  background-color: #F8FAFC;
}
.bg-\[\#FBD0D0\] {
  background-color: #FBD0D0;
}
.bg-\[\#FDF3EA\] {
  background-color: #FDF3EA;
}
.bg-\[\#FEF6F0\] {
  background-color: #FEF6F0;
}
.bg-\[\#FFF\] {
  background-color: #FFF;
}
.bg-\[rgba\(0\,0\,0\,0\.24\)\] {
  background-color: rgba(0,0,0,0.24);
}
.bg-\[rgba\(255\,255\,255\,0\.50\)\] {
  background-color: rgba(255,255,255,0.50);
}
.bg-linear-\[87deg\,\#4338CA1\.47\%\,\#7067D898\.53\%\] {
  --tw-gradient-position: 87deg,#4338CA1.47%,#7067D898.53%;
  background-image: linear-gradient(var(--tw-gradient-stops,87deg,#4338CA1.47%,#7067D898.53%));
}
.bg-linear-\[90deg\,\#4338CA29\.33\%\,\#22D3EE92\.31\%\] {
  --tw-gradient-position: 90deg,#4338CA29.33%,#22D3EE92.31%;
  background-image: linear-gradient(var(--tw-gradient-stops,90deg,#4338CA29.33%,#22D3EE92.31%));
}
.bg-linear-\[132deg\,\#6366F17\.08\%\,\#4F46E535\.07\%\,\#06B6D492\.92\%\] {
  --tw-gradient-position: 132deg,#6366F17.08%,#4F46E535.07%,#06B6D492.92%;
  background-image: linear-gradient(var(--tw-gradient-stops,132deg,#6366F17.08%,#4F46E535.07%,#06B6D492.92%));
}
.bg-linear-\[180deg\,\#F8F4F70\%\,\#EBEFFD100\%\] {
  --tw-gradient-position: 180deg,#F8F4F70%,#EBEFFD100%;
  background-image: linear-gradient(var(--tw-gradient-stops,180deg,#F8F4F70%,#EBEFFD100%));
}
.p-1\.5 {
  padding: calc(var(--spacing) * 1.5);
}
.p-2 {
  padding: calc(var(--spacing) * 2);
}
.p-3 {
  padding: calc(var(--spacing) * 3);
}
.p-4 {
  padding: calc(var(--spacing) * 4);
}
.p-\[5px\] {
  padding: 5px;
}
.p-\[7px\] {
  padding: 7px;
}
.p-\[9px\] {
  padding: 9px;
}
.px-0 {
  padding-inline: calc(var(--spacing) * 0);
}
.px-1 {
  padding-inline: calc(var(--spacing) * 1);
}
.px-2 {
  padding-inline: calc(var(--spacing) * 2);
}
.px-3 {
  padding-inline: calc(var(--spacing) * 3);
}
.px-4 {
  padding-inline: calc(var(--spacing) * 4);
}
.px-5 {
  padding-inline: calc(var(--spacing) * 5);
}
.py-0 {
  padding-block: calc(var(--spacing) * 0);
}
.py-1 {
  padding-block: calc(var(--spacing) * 1);
}
.py-2 {
  padding-block: calc(var(--spacing) * 2);
}
.py-2\.5 {
  padding-block: calc(var(--spacing) * 2.5);
}
.py-3 {
  padding-block: calc(var(--spacing) * 3);
}
.py-4 {
  padding-block: calc(var(--spacing) * 4);
}
.py-5 {
  padding-block: calc(var(--spacing) * 5);
}
.py-\[19px\] {
  padding-block: 19px;
}
.pt-0 {
  padding-top: calc(var(--spacing) * 0);
}
.pt-0\.5 {
  padding-top: calc(var(--spacing) * 0.5);
}
.pt-2 {
  padding-top: calc(var(--spacing) * 2);
}
.pt-4 {
  padding-top: calc(var(--spacing) * 4);
}
.pt-\[21px\] {
  padding-top: 21px;
}
.pt-px {
  padding-top: 1px;
}
.pr-2 {
  padding-right: calc(var(--spacing) * 2);
}
.pr-5 {
  padding-right: calc(var(--spacing) * 5);
}
.pr-6 {
  padding-right: calc(var(--spacing) * 6);
}
.pr-\[84px\] {
  padding-right: 84px;
}
.pr-\[124px\] {
  padding-right: 124px;
}
.pr-px {
  padding-right: 1px;
}
.pb-0 {
  padding-bottom: calc(var(--spacing) * 0);
}
.pb-2 {
  padding-bottom: calc(var(--spacing) * 2);
}
.pb-\[19px\] {
  padding-bottom: 19px;
}
.pl-0 {
  padding-left: calc(var(--spacing) * 0);
}
.pl-2 {
  padding-left: calc(var(--spacing) * 2);
}
.pl-3 {
  padding-left: calc(var(--spacing) * 3);
}
.pl-4 {
  padding-left: calc(var(--spacing) * 4);
}
.pl-5 {
  padding-left: calc(var(--spacing) * 5);
}
.pl-6 {
  padding-left: calc(var(--spacing) * 6);
}
.pl-\[85px\] {
  padding-left: 85px;
}
.pl-\[125px\] {
  padding-left: 125px;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.font-plusJakartaSans {
  font-family: var(--font-plusJakartaSans);
}
.font-sFPro {
  font-family: var(--font-sFPro);
}
.font-sFProText {
  font-family: var(--font-sFProText);
}
.text-2xl {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.text-base {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xl {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.text-\[13px\] {
  font-size: 13px;
}
.text-\[28px\] {
  font-size: 28px;
}
.leading-4 {
  --tw-leading: calc(var(--spacing) * 4);
  line-height: calc(var(--spacing) * 4);
}
.leading-5 {
  --tw-leading: calc(var(--spacing) * 5);
  line-height: calc(var(--spacing) * 5);
}
.leading-6 {
  --tw-leading: calc(var(--spacing) * 6);
  line-height: calc(var(--spacing) * 6);
}
.leading-8 {
  --tw-leading: calc(var(--spacing) * 8);
  line-height: calc(var(--spacing) * 8);
}
.leading-\[18px\] {
  --tw-leading: 18px;
  line-height: 18px;
}
.leading-\[21px\] {
  --tw-leading: 21px;
  line-height: 21px;
}
.leading-\[22px\] {
  --tw-leading: 22px;
  line-height: 22px;
}
.leading-\[26px\] {
  --tw-leading: 26px;
  line-height: 26px;
}
.leading-\[38px\] {
  --tw-leading: 38px;
  line-height: 38px;
}
.font-bold {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.font-medium {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.text-nowrap {
  text-wrap: nowrap;
}
.text-\[\#0B0B0E\] {
  color: #0B0B0E;
}
.text-\[\#000\] {
  color: #000;
}
.text-\[\#4F46E5\] {
  color: #4F46E5;
}
.text-\[\#06B6D4\] {
  color: #06B6D4;
}
.text-\[\#6E6E6E\] {
  color: #6E6E6E;
}
.text-\[\#08F\] {
  color: #08F;
}
.text-\[\#20BB59\] {
  color: #20BB59;
}
.text-\[\#4338CA\] {
  color: #4338CA;
}
.text-\[\#808080\] {
  color: #808080;
}
.text-\[\#A8A8A8\] {
  color: #A8A8A8;
}
.text-\[\#EB1414\] {
  color: #EB1414;
}
.text-\[\#F2F2F2\] {
  color: #F2F2F2;
}
.text-\[\#FF8D28\] {
  color: #FF8D28;
}
.opacity-40 {
  opacity: 40%;
}
.opacity-50 {
  opacity: 50%;
}
.opacity-60 {
  opacity: 60%;
}
.opacity-\[35\%\] {
  opacity: 35%;
}
.opacity-\[62\%\] {
  opacity: 62%;
}
.shadow-\[01px2px0rgba\(10\,13\,18\,0\.05\)\] {
  --tw-shadow: 01px2px0rgba(10,13,18,0.05);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-\[012px16px4pxrgba\(0\,0\,0\,0\.04\)\] {
  --tw-shadow: 012px16px4pxrgba(0,0,0,0.04);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-\[012px16px4pxrgba\(0\,0\,0\,0\.08\)\] {
  --tw-shadow: 012px16px4pxrgba(0,0,0,0.08);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
    }
  }
}


/* PWA shell + fidelity overrides */
html, body { margin: 0; min-height: 100%; background: #F8FAFC; }
body {
  min-height: 100dvh;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow-x: hidden;
  color: #0B0B0E;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
.min-w-screen { min-width: 100vw; }
.min-h-screen { min-height: 100vh; }

#pwa-shell {
  position: relative;
  overflow: hidden;
  flex: none;
  background: #F8FAFC;
  transition: height 180ms ease;
}
#scale-layer {
  position: relative;
  transform-origin: top left;
}
#design-canvas {
  position: absolute;
  width: 4300px;
  height: 3800px;
  left: 0;
  top: 0;
  transform-origin: top left;
  will-change: transform;
}
[data-screen] { pointer-events: auto; }
[data-screen] button, [data-screen] [role="button"] { touch-action: manipulation; }

/* Fix malformed gradient/shadow tokens in the Figma-to-code export. */
.bg-linear-\[132deg\,\#6366F17\.08\%\,\#4F46E535\.07\%\,\#06B6D492\.92\%\] {
  background-image: linear-gradient(132deg, #6366F1 7.08%, #4F46E5 35.07%, #06B6D4 92.92%) !important;
}
.bg-linear-\[180deg\,\#F8F4F70\%\,\#EBEFFD100\%\] {
  background-image: linear-gradient(180deg, #F8F4F7 0%, #EBEFFD 100%) !important;
}
.bg-linear-\[87deg\,\#4338CA1\.47\%\,\#7067D898\.53\%\] {
  background-image: linear-gradient(87deg, #4338CA 1.47%, #7067D8 98.53%) !important;
}
.bg-linear-\[90deg\,\#4338CA29\.33\%\,\#22D3EE92\.31\%\] {
  background-image: linear-gradient(90deg, #4338CA 29.33%, #22D3EE 92.31%) !important;
}
.shadow-\[012px16px4pxrgba\(0\,0\,0\,0\.04\)\] { box-shadow: 0 12px 16px 4px rgba(0,0,0,.04) !important; }
.shadow-\[012px16px4pxrgba\(0\,0\,0\,0\.08\)\] { box-shadow: 0 12px 16px 4px rgba(0,0,0,.08) !important; }
.shadow-\[01px2px0rgba\(10\,13\,18\,0\.05\)\] { box-shadow: 0 1px 2px 0 rgba(10,13,18,.05) !important; }

/* Review-only navigator. Hidden unless ?screens=1 or S is pressed. */
#screen-navigator {
  position: fixed;
  z-index: 9999;
  left: 50%;
  bottom: max(12px, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  width: min(94vw, 430px);
  padding: 8px;
  border: 1px solid rgba(67,56,202,.18);
  border-radius: 16px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 30px rgba(11,11,14,.14);
  backdrop-filter: blur(14px);
}
#screen-navigator[hidden] { display: none !important; }
#screen-navigator select {
  min-width: 0;
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  color: #0B0B0E;
  font: 600 13px/1.2 "Plus Jakarta Sans", sans-serif;
}
#screen-navigator button {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 10px;
  background: #EEF2FF;
  color: #4338CA;
  font-size: 24px;
  line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
  #pwa-shell { transition: none; }
}

/* =========================================================
   2026-08-25 UI fidelity repair pass
   The Figma export contains several auto-layout wrappers whose children were
   also exported as absolute-positioned nodes. In a browser that collapses the
   parent to zero width and causes the severe wrapping/overlap seen on device.
   These rules restore the intended auto-layout behavior.
   ========================================================= */

/* Render exactly one routed screen at a time. */
#design-canvas {
  width: 393px !important;
  min-width: 393px !important;
  height: 100% !important;
  min-height: 0 !important;
  transform: none !important;
}
[data-screen] {
  display: none !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 393px !important;
  max-width: 393px !important;
  border-radius: 0 !important;
  overflow-x: hidden !important;
}
[data-screen].active-screen { display: block !important; }

/* Top feature headings on the four creation screens. */
[data-screen="generate-plan"] > .inline-flex.top-\[149px\],
[data-screen="breakdown"] > .inline-flex.top-\[149px\],
[data-screen="summarize"] > .inline-flex.top-\[149px\],
[data-screen="optimize-calendar"] > .inline-flex.top-\[149px\] {
  width: 353px !important;
  min-height: 60px;
}
[data-screen="generate-plan"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="generate-plan"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="breakdown"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="breakdown"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="summarize"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="summarize"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="optimize-calendar"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="optimize-calendar"] > .inline-flex.top-\[149px\] > :nth-child(2) {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
}
[data-screen="generate-plan"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="breakdown"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="summarize"] > .inline-flex.top-\[149px\] > :nth-child(2),
[data-screen="optimize-calendar"] > .inline-flex.top-\[149px\] > :nth-child(2) {
  width: 293px !important;
  min-width: 0;
}

/* Loading-state titles: let the intended flex column size itself from text. */
[data-screen="plan-loading"] > .inline-flex,
[data-screen="breakdown-loading"] > .inline-flex,
[data-screen="summary-loading"] > .inline-flex,
[data-screen="calendar-loading"] > .inline-flex {
  width: auto !important;
  max-width: 350px;
  white-space: nowrap;
}
[data-screen="plan-loading"] > .inline-flex > *,
[data-screen="breakdown-loading"] > .inline-flex > *,
[data-screen="summary-loading"] > .inline-flex > *,
[data-screen="calendar-loading"] > .inline-flex > * {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
}

/* Result screen heading blocks. */
[data-screen="plan-result"] > .inline-flex.top-\[145px\],
[data-screen="breakdown-result"] > .inline-flex.top-\[145px\],
[data-screen="summary-result"] > .inline-flex.top-\[145px\],
[data-screen="calendar-result"] > .inline-flex.top-\[145px\],
[data-screen="breakdown-modal"] > .inline-flex.top-\[145px\] {
  width: 353px !important;
  min-height: 58px;
}
[data-screen="plan-result"] > .inline-flex.top-\[145px\] > *,
[data-screen="breakdown-result"] > .inline-flex.top-\[145px\] > *,
[data-screen="summary-result"] > .inline-flex.top-\[145px\] > *,
[data-screen="calendar-result"] > .inline-flex.top-\[145px\] > *,
[data-screen="breakdown-modal"] > .inline-flex.top-\[145px\] > * {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  width: 100%;
}

/* Figma gradient text was exported as a normal background, creating a colored
   rectangle behind the heading. Restore the intended gradient glyph fill. */
[data-screen="plan-result"] > .inline-flex.top-\[145px\] > p:first-child,
[data-screen="breakdown-result"] > .inline-flex.top-\[145px\] > p:first-child,
[data-screen="summary-result"] > .inline-flex.top-\[145px\] > p:first-child,
[data-screen="calendar-result"] > .inline-flex.top-\[145px\] > p:first-child,
[data-screen="breakdown-modal"] > .inline-flex.top-\[145px\] > p:first-child {
  color: transparent !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  background-repeat: no-repeat !important;
  width: fit-content !important;
  max-width: 353px;
}

/* Calendar comparison cards: restore the two-card horizontal auto layout while
   retaining the little center arrow as an overlay. */
[data-screen="calendar-result"] > .inline-flex.top-\[275px\] {
  width: 353px !important;
  height: 92px !important;
  position: absolute !important;
}
[data-screen="calendar-result"] > .inline-flex.top-\[275px\] > :nth-child(1),
[data-screen="calendar-result"] > .inline-flex.top-\[275px\] > :nth-child(2) {
  position: static !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
}
[data-screen="calendar-result"] > .inline-flex.top-\[275px\] > :nth-child(3) {
  position: absolute !important;
  left: 161px !important;
  top: 36px !important;
  z-index: 2;
}

/* Four schedule/timeline SVGs were exported with their HEIGHT placed in a
   width utility (492/514px), which caused horizontal overflow and the visible
   scrollbar in the screenshots. */
svg[width="2"].w-\[492px\],
svg[width="2"].w-\[514px\] {
  width: 2px !important;
  max-width: 2px !important;
}

/* Keep long schedule cards inside the 393px viewport and suppress accidental
   browser horizontal scrolling from transformed/absolute descendants. */
#pwa-shell, #scale-layer, #design-canvas, [data-screen] {
  overflow-x: hidden !important;
}
html, body { overflow-x: hidden !important; }

/* Better mobile typography behavior. */
[data-screen] p { overflow-wrap: normal; word-break: normal; }
[data-screen] button { -webkit-tap-highlight-color: transparent; }

/* On narrow devices the 393px design is scaled as a complete unit; do not let
   browser text autosizing change line breaks independently of the design. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

/* Keep the leading AI icon tiles compact after restoring header auto-layout. */
[data-screen="generate-plan"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="breakdown"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="summarize"] > .inline-flex.top-\[149px\] > :nth-child(1),
[data-screen="optimize-calendar"] > .inline-flex.top-\[149px\] > :nth-child(1) {
  width: 48px !important;
  height: 48px !important;
  flex: 0 0 48px !important;
}

/* Final visual QA fixes. */
/* Prevent the loading illustration from creating a 395px scroll width. */
[data-screen="plan-loading"] > .w-\[396px\] {
  left: 0 !important;
  width: 393px !important;
}
[data-screen="plan-loading"] > .w-\[396px\] > img {
  width: 393px !important;
}

/* Smart Tags needs a large horizontal gap, not an 88px vertical row gap. */
[data-screen="summary-result"] .gap-\[88px\].flex-wrap {
  column-gap: 88px !important;
  row-gap: 12px !important;
}

/* A generator-only white rectangle was layered above the Apply Changes check icon. */
[data-screen="calendar-result"] > button.top-\[1339px\] svg.w-6.h-6.absolute.-left-0\.5.-top-0\.5 {
  display: none !important;
}

/* Final Plan for Today action-tile polish: allow the long middle action label
   to wrap cleanly inside its tile instead of colliding with adjacent actions. */
[data-screen="plan-today"] > .flex.flex-col.top-\[1162px\] > .flex.items-center > button:nth-child(2) p {
  width: 88px !important;
  white-space: normal !important;
  line-height: 18px !important;
  font-size: 12px !important;
}
