/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-200: oklch(90.5% 0.093 164.15);
    --color-emerald-800: oklch(43.2% 0.095 166.913);
    --color-sky-50: oklch(97.7% 0.013 236.62);
    --color-sky-200: oklch(90.1% 0.058 230.902);
    --color-sky-900: oklch(39.1% 0.09 240.876);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-800: oklch(42.4% 0.199 265.638);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --leading-tight: 1.25;
    --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-xl: 24px;
    --blur-2xl: 40px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-jakarta), 'Plus Jakarta Sans', system-ui, sans-serif;
    --default-mono-font-family: 'Geist Mono', 'Geist Mono Fallback';
  }
}
@layer base {
  *, ::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, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)) {
    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;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-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;
  }
}

/* Product-preview overrides: present the two payment models as separate cards. */
.TutorStackProductCards_parentPaymentsFrame {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.TutorStackProductCards_parentPaymentsGrid {
  gap: 2rem !important;
}

.TutorStackProductCards_parentPaymentsGrid > :first-child { order: 2 !important; }
.TutorStackProductCards_parentPaymentsGrid > :last-child { order: 1 !important; }

@media (max-width: 560px) {
  .TutorStackProductCards_parentPaymentsGrid { gap: 1rem !important; }
}
@layer utilities {
  .\@container\/card-header {
    container-type: inline-size;
    container-name: card-header;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .absolute {
    position: absolute;
  }
  .relative {
    position: relative;
  }
  .inset-x-0 {
    inset-inline: 0px;
  }
  .top-0 {
    top: 0px;
  }
  .right-0 {
    right: 0px;
  }
  .bottom-0 {
    bottom: 0px;
  }
  .left-\[5\.25rem\] {
    left: 5.25rem;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-2 {
    grid-row: span 2 / span 2;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .mt-1 {
    margin-top: var(--spacing);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-row {
    display: table-row;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .size-11 {
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
  }
  .size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-28 {
    height: calc(var(--spacing) * 28);
  }
  .h-32 {
    height: calc(var(--spacing) * 32);
  }
  .h-\[calc\(100dvh_-_49px_-_env\(safe-area-inset-bottom\,0px\)\)\] {
    height: calc(100dvh - 49px - env(safe-area-inset-bottom,0px));
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .min-h-0 {
    min-height: 0px;
  }
  .min-h-11 {
    min-height: calc(var(--spacing) * 11);
  }
  .min-h-14 {
    min-height: calc(var(--spacing) * 14);
  }
  .min-h-16 {
    min-height: calc(var(--spacing) * 16);
  }
  .min-h-80 {
    min-height: calc(var(--spacing) * 80);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .min-w-0 {
    min-width: 0px;
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .caption-bottom {
    caption-side: bottom;
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .grid-rows-\[auto_auto\] {
    grid-template-rows: auto auto;
  }
  .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-center {
    justify-content: center;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: var(--spacing);
  }
  .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);
  }
  .self-start {
    align-self: flex-start;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded-\[1\.55rem\] {
    border-radius: 1.55rem;
  }
  .rounded-\[4px\] {
    border-radius: 4px;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) - 2px);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) + 4px);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-accent\/20 {
    border-color: var(--accent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--accent) 20%, transparent);
    }
  }
  .border-card\/70 {
    border-color: var(--card);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--card) 70%, transparent);
    }
  }
  .border-card\/80 {
    border-color: var(--card);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--card) 80%, transparent);
    }
  }
  .border-destructive\/20 {
    border-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .border-emerald-200 {
    border-color: var(--color-emerald-200);
  }
  .border-input {
    border-color: var(--input);
  }
  .border-primary\/10 {
    border-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }
  .border-primary\/15 {
    border-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary) 15%, transparent);
    }
  }
  .border-sky-200 {
    border-color: var(--color-sky-200);
  }
  .border-transparent {
    border-color: transparent;
  }
  .bg-accent\/10 {
    background-color: var(--accent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--accent) 10%, transparent);
    }
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-border\/80 {
    background-color: var(--border);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--border) 80%, transparent);
    }
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-card\/70 {
    background-color: var(--card);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--card) 70%, transparent);
    }
  }
  .bg-card\/85 {
    background-color: var(--card);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--card) 85%, transparent);
    }
  }
  .bg-destructive {
    background-color: var(--destructive);
  }
  .bg-destructive\/10 {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }
  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }
  .bg-muted {
    background-color: var(--muted);
  }
  .bg-muted\/50 {
    background-color: var(--muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-primary\/10 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-sky-50 {
    background-color: var(--color-sky-50);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-gradient-to-b {
    --tw-gradient-position: to bottom in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-\[linear-gradient\(180deg\,color-mix\(in_srgb\,var\(--background\)_96\%\,var\(--card\)\)_0\%\,var\(--card\)_42\%\,var\(--background\)_100\%\)\] {
    background-image: linear-gradient(180deg,var(--background) 0%,var(--card) 42%,var(--background) 100%);
    @supports (color: color-mix(in lab, red, red)) {
      background-image: linear-gradient(180deg,color-mix(in srgb,var(--background) 96%,var(--card)) 0%,var(--card) 42%,var(--background) 100%);
    }
  }
  .bg-\[radial-gradient\(circle_at_top_left\,color-mix\(in_srgb\,var\(--accent\)_12\%\,transparent\)\,transparent_28rem\)\,linear-gradient\(180deg\,color-mix\(in_srgb\,var\(--card\)_98\%\,transparent\)\,color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\)\] {
    background-image: radial-gradient(circle at top left,var(--accent),transparent 28rem),linear-gradient(180deg,var(--card),var(--background));
    @supports (color: color-mix(in lab, red, red)) {
      background-image: radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 12%,transparent),transparent 28rem),linear-gradient(180deg,color-mix(in srgb,var(--card) 98%,transparent),color-mix(in srgb,var(--background) 96%,transparent));
    }
  }
  .bg-\[radial-gradient\(circle_at_top_left\,color-mix\(in_srgb\,var\(--accent\)_14\%\,transparent\)\,transparent_28rem\)\,linear-gradient\(180deg\,color-mix\(in_srgb\,var\(--card\)_98\%\,transparent\)\,color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\)\] {
    background-image: radial-gradient(circle at top left,var(--accent),transparent 28rem),linear-gradient(180deg,var(--card),var(--background));
    @supports (color: color-mix(in lab, red, red)) {
      background-image: radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 14%,transparent),transparent 28rem),linear-gradient(180deg,color-mix(in srgb,var(--card) 98%,transparent),color-mix(in srgb,var(--background) 96%,transparent));
    }
  }
  .from-background {
    --tw-gradient-from: var(--background);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-background\/95 {
    --tw-gradient-from: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--background) 95%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-background\/85 {
    --tw-gradient-via: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--background) 85%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-background\/90 {
    --tw-gradient-via: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--background) 90%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-background\/0 {
    --tw-gradient-to: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--background) 0%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .object-cover {
    object-fit: cover;
  }
  .object-center {
    object-position: center;
  }
  .p-0 {
    padding: 0px;
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .px-0 {
    padding-inline: 0px;
  }
  .px-1 {
    padding-inline: var(--spacing);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-7 {
    padding-inline: calc(var(--spacing) * 7);
  }
  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }
  .py-1 {
    padding-block: var(--spacing);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pt-9 {
    padding-top: calc(var(--spacing) * 9);
  }
  .pt-\[8\.75rem\] {
    padding-top: 8.75rem;
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-28 {
    padding-bottom: calc(var(--spacing) * 28);
  }
  .pb-\[calc\(env\(safe-area-inset-bottom\,0px\)\+1rem\)\] {
    padding-bottom: calc(env(safe-area-inset-bottom,0px) + 1rem);
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .align-middle {
    vertical-align: middle;
  }
  .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-\[11px\] {
    font-size: 11px;
  }
  .text-\[13px\] {
    font-size: 13px;
  }
  .text-\[15px\] {
    font-size: 15px;
  }
  .text-\[17px\] {
    font-size: 17px;
  }
  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .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);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-accent-foreground {
    color: var(--accent-foreground);
  }
  .text-blue-800 {
    color: var(--color-blue-800);
  }
  .text-card-foreground {
    color: var(--card-foreground);
  }
  .text-current {
    color: currentcolor;
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-emerald-800 {
    color: var(--color-emerald-800);
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-sky-900 {
    color: var(--color-sky-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 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-accent\/5 {
    --tw-shadow-color: var(--accent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--accent) 5%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .shadow-destructive\/5 {
    --tw-shadow-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--destructive) 5%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .shadow-primary\/5 {
    --tw-shadow-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--primary) 5%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .shadow-primary\/10 {
    --tw-shadow-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--primary) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .backdrop-blur-2xl {
    --tw-backdrop-blur: blur(var(--blur-2xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition-\[color\,box-shadow\,border-color\] {
    transition-property: color,box-shadow,border-color;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[color\,box-shadow\] {
    transition-property: color,box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-none {
    transition-property: none;
  }
  .duration-150 {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .selection\:bg-primary ::selection {
    background-color: var(--primary);
  }
  .selection\:bg-primary::selection {
    background-color: var(--primary);
  }
  .selection\:text-primary-foreground ::selection {
    color: var(--primary-foreground);
  }
  .selection\:text-primary-foreground::selection {
    color: var(--primary-foreground);
  }
  .file\:inline-flex::file-selector-button {
    display: inline-flex;
  }
  .file\:h-7::file-selector-button {
    height: calc(var(--spacing) * 7);
  }
  .file\:border-0::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .file\:bg-transparent::file-selector-button {
    background-color: transparent;
  }
  .file\:text-sm::file-selector-button {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .file\:font-medium::file-selector-button {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .file\:text-foreground::file-selector-button {
    color: var(--foreground);
  }
  .placeholder\:text-muted-foreground::placeholder {
    color: var(--muted-foreground);
  }
  @media (hover: hover) {
    .hover\:border-ring\/50:hover {
      border-color: var(--ring);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-ring\/50:hover {
        border-color: color-mix(in oklab, var(--ring) 50%, transparent);
      }
    }
    .hover\:bg-accent:hover {
      background-color: var(--accent);
    }
    .hover\:bg-destructive\/90:hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/90:hover {
        background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
      }
    }
    .hover\:bg-muted\/50:hover {
      background-color: var(--muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/50:hover {
        background-color: color-mix(in oklab, var(--muted) 50%, transparent);
      }
    }
    .hover\:bg-primary\/90:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/90:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
    .hover\:bg-secondary\/80:hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-secondary\/80:hover {
        background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
      }
    }
    .hover\:text-accent-foreground:hover {
      color: var(--accent-foreground);
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }
  .focus-visible\:border-ring:focus-visible {
    border-color: var(--ring);
  }
  .focus-visible\:ring-\[3px\]:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-destructive\/20:focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .focus-visible\:ring-ring\/50:focus-visible {
    --tw-ring-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .active\:scale-\[0\.97\]:active {
    scale: 0.97;
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:opacity-50:disabled {
    opacity: 50%;
  }
  .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot="card-action"]) {
    grid-template-columns: 1fr auto;
  }
  .has-\[\>svg\]\:px-2\.5:has( > svg) {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .has-\[\>svg\]\:px-4:has( > svg) {
    padding-inline: calc(var(--spacing) * 4);
  }
  .has-\[\>svg\]\:px-5:has( > svg) {
    padding-inline: calc(var(--spacing) * 5);
  }
  .has-\[\>svg\]\:px-6:has( > svg) {
    padding-inline: calc(var(--spacing) * 6);
  }
  .aria-invalid\:border-destructive[aria-invalid="true"] {
    border-color: var(--destructive);
  }
  .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .data-\[state\=checked\]\:border-primary[data-state="checked"] {
    border-color: var(--primary);
  }
  .data-\[state\=checked\]\:bg-primary[data-state="checked"] {
    background-color: var(--primary);
  }
  .data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] {
    color: var(--primary-foreground);
  }
  .data-\[state\=selected\]\:bg-muted[data-state="selected"] {
    background-color: var(--muted);
  }
  @media (prefers-reduced-motion: reduce) {
    .motion-reduce\:animate-none {
      animation: none;
    }
  }
  @media (width >= 40rem) {
    .sm\:grid-cols-\[6rem_1fr\] {
      grid-template-columns: 6rem 1fr;
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:items-baseline {
      align-items: baseline;
    }
    .sm\:items-start {
      align-items: flex-start;
    }
    .sm\:justify-between {
      justify-content: space-between;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
    .sm\:gap-3 {
      gap: calc(var(--spacing) * 3);
    }
    .sm\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }
  }
  @media (width >= 48rem) {
    .md\:flex {
      display: flex;
    }
    .md\:hidden {
      display: none;
    }
    .md\:h-auto {
      height: auto;
    }
    .md\:min-h-0 {
      min-height: 0px;
    }
    .md\:w-\[42\%\] {
      width: 42%;
    }
    .md\:w-full {
      width: 100%;
    }
    .md\:max-w-\[440px\] {
      max-width: 440px;
    }
    .md\:min-w-\[360px\] {
      min-width: 360px;
    }
    .md\:flex-1 {
      flex: 1;
    }
    .md\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }
    .md\:pt-0 {
      padding-top: 0px;
    }
    .md\:pb-4 {
      padding-bottom: calc(var(--spacing) * 4);
    }
    .md\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .md\:text-\[15px\] {
      font-size: 15px;
    }
  }
  .dark\:border-input:is(.dark *) {
    border-color: var(--input);
  }
  .dark\:bg-destructive\/60:is(.dark *) {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }
  .dark\:bg-input\/30:is(.dark *) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  @media (hover: hover) {
    .dark\:hover\:bg-accent\/50:is(.dark *):hover {
      background-color: var(--accent);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-accent\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--accent) 50%, transparent);
      }
    }
    .dark\:hover\:bg-input\/50:is(.dark *):hover {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-input\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--input) 50%, transparent);
      }
    }
  }
  .dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state="checked"] {
    background-color: var(--primary);
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .\[\&_tr\]\:border-b tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .\[\&_tr\:last-child\]\:border-0 tr:last-child {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) {
    padding-right: 0px;
  }
  .\[\.border-b\]\:pb-4:is(.border-b) {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .\[\.border-t\]\:pt-4:is(.border-t) {
    padding-top: calc(var(--spacing) * 4);
  }
  .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\] > [role=checkbox] {
    --tw-translate-y: 2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .\[\&\>svg\]\:pointer-events-none > svg {
    pointer-events: none;
  }
  .\[\&\>svg\]\:size-3 > svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  @media (hover: hover) {
    a.\[a\&\]\:hover\:bg-accent:hover {
      background-color: var(--accent);
    }
    a.\[a\&\]\:hover\:bg-destructive\/90:hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      a.\[a\&\]\:hover\:bg-destructive\/90:hover {
        background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
      }
    }
    a.\[a\&\]\:hover\:bg-primary\/90:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      a.\[a\&\]\:hover\:bg-primary\/90:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
    a.\[a\&\]\:hover\:bg-secondary\/90:hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      a.\[a\&\]\:hover\:bg-secondary\/90:hover {
        background-color: color-mix(in oklab, var(--secondary) 90%, transparent);
      }
    }
    a.\[a\&\]\:hover\:text-accent-foreground:hover {
      color: var(--accent-foreground);
    }
  }
}
@property --tw-animation-delay {
  syntax: "*";
  inherits: false;
  initial-value: 0s;
}
@property --tw-animation-direction {
  syntax: "*";
  inherits: false;
  initial-value: normal;
}
@property --tw-animation-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-animation-fill-mode {
  syntax: "*";
  inherits: false;
  initial-value: none;
}
@property --tw-animation-iteration-count {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
:root {
  --background: oklch(0.98 0.002 250);
  --foreground: #0b2658;
  --card: oklch(1 0 0);
  --card-foreground: #0b2658;
  --popover: oklch(1 0 0);
  --popover-foreground: #0b2658;
  --primary: #0b2658;
  --primary-foreground: oklch(0.98 0 0);
  --secondary: oklch(0.96 0.005 250);
  --secondary-foreground: oklch(0.35 0.08 250);
  --muted: oklch(0.96 0.005 250);
  --muted-foreground: oklch(0.50 0.02 250);
  --accent: oklch(0.65 0.12 185);
  --accent-foreground: oklch(0.98 0 0);
  --destructive: oklch(0.55 0.22 25);
  --destructive-foreground: oklch(0.98 0 0);
  --border: oklch(0.92 0.005 250);
  --input: oklch(0.92 0.005 250);
  --ring: oklch(0.65 0.12 185);
  --chart-1: oklch(0.35 0.08 250);
  --chart-2: oklch(0.65 0.12 185);
  --chart-3: oklch(0.55 0.15 145);
  --chart-4: oklch(0.70 0.10 200);
  --chart-5: oklch(0.45 0.06 250);
  --radius: 0.75rem;
  --sidebar: oklch(0.99 0.002 250);
  --sidebar-foreground: #0b2658;
  --sidebar-primary: oklch(0.65 0.12 185);
  --sidebar-primary-foreground: oklch(0.98 0 0);
  --sidebar-accent: oklch(0.93 0.01 250);
  --sidebar-accent-foreground: #0b2658;
  --sidebar-border: oklch(0.90 0.01 250);
  --sidebar-ring: oklch(0.65 0.12 185);
  --success: oklch(0.60 0.15 145);
  --success-foreground: oklch(0.98 0 0);
  --warning: oklch(0.75 0.15 80);
  --warning-foreground: oklch(0.25 0.05 80);
  --info: oklch(0.60 0.12 230);
  --info-foreground: oklch(0.98 0 0);
}
.dark {
  --background: oklch(0.15 0.02 250);
  --foreground: oklch(0.95 0 0);
  --card: oklch(0.18 0.02 250);
  --card-foreground: oklch(0.95 0 0);
  --popover: oklch(0.18 0.02 250);
  --popover-foreground: oklch(0.95 0 0);
  --primary: oklch(0.65 0.12 185);
  --primary-foreground: oklch(0.15 0.02 250);
  --secondary: oklch(0.25 0.02 250);
  --secondary-foreground: oklch(0.95 0 0);
  --muted: oklch(0.25 0.02 250);
  --muted-foreground: oklch(0.65 0.02 250);
  --accent: oklch(0.65 0.12 185);
  --accent-foreground: oklch(0.15 0.02 250);
  --destructive: oklch(0.55 0.22 25);
  --destructive-foreground: oklch(0.98 0 0);
  --border: oklch(0.30 0.02 250);
  --input: oklch(0.30 0.02 250);
  --ring: oklch(0.65 0.12 185);
  --chart-1: oklch(0.65 0.12 185);
  --chart-2: oklch(0.55 0.08 250);
  --chart-3: oklch(0.60 0.15 145);
  --chart-4: oklch(0.70 0.10 200);
  --chart-5: oklch(0.50 0.06 250);
  --sidebar: oklch(0.20 0.04 250);
  --sidebar-foreground: oklch(0.95 0 0);
  --sidebar-primary: oklch(0.65 0.12 185);
  --sidebar-primary-foreground: oklch(0.15 0.02 250);
  --sidebar-accent: oklch(0.28 0.03 250);
  --sidebar-accent-foreground: oklch(0.95 0 0);
  --sidebar-border: oklch(0.30 0.02 250);
  --sidebar-ring: oklch(0.65 0.12 185);
  --success: oklch(0.65 0.15 145);
  --success-foreground: oklch(0.15 0.02 250);
  --warning: oklch(0.75 0.15 80);
  --warning-foreground: oklch(0.15 0.02 250);
  --info: oklch(0.65 0.12 230);
  --info-foreground: oklch(0.15 0.02 250);
}
@layer base {
  * {
    border-color: var(--border);
    outline-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  body {
    background-color: var(--background);
    color: var(--foreground);
  }
}
:root {
  --shadow-xs: 0 1px 2px rgba(11, 38, 88, 0.04);
  --shadow-sm: 0 2px 8px rgba(11, 38, 88, 0.06);
  --shadow-md: 0 4px 16px rgba(11, 38, 88, 0.08);
  --shadow-lg: 0 8px 32px rgba(11, 38, 88, 0.10);
}
.glass {
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  backdrop-filter: blur(20px) saturate(180%);
  background: oklch(1 0 0 / 0.72);
}
.dark .glass {
  background: oklch(0.18 0.02 250 / 0.72);
}
.header-bar {
  transition: background 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  border-bottom: 1px solid transparent;
  background: transparent;
  box-shadow: none;
}
[data-compact="true"] .header-bar {
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  backdrop-filter: blur(20px) saturate(180%);
  background: oklch(1 0 0 / 0.72);
  border-bottom-color: oklch(0.8 0 0 / 0.15);
  box-shadow: var(--shadow-xs);
}
.dark [data-compact="true"] .header-bar {
  background: oklch(0.18 0.02 250 / 0.72);
  border-bottom-color: oklch(0.4 0 0 / 0.15);
}
@media (min-width: 768px) {
  .header-bar, [data-compact="true"] .header-bar {
    background: var(--card);
    border-bottom-color: var(--border);
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}
.page-transition {
  animation: page-enter 0.16s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
}
@media (prefers-reduced-motion: reduce) {
  .page-transition {
    animation: page-enter-reduced 0.08s ease-out backwards;
  }
}
@keyframes page-enter {
  from {
    opacity: 0;
    transform: translateY(3px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes page-enter-reduced {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.broadcast-idea-skeleton {
  position: relative;
  overflow: hidden;
}
.broadcast-idea-skeleton::after {
  content: '';
  position: absolute;
  inset: 0;
  transform: translateX(-120%);
  background: linear-gradient( 110deg, transparent 0%, var(--primary) 42%, var(--primary) 50%, var(--primary) 58%, transparent 100% );
  @supports (color: color-mix(in lab, red, red)) {
    background: linear-gradient( 110deg, transparent 0%, color-mix(in srgb, var(--primary) 8%, transparent) 42%, color-mix(in srgb, var(--primary) 14%, transparent) 50%, color-mix(in srgb, var(--primary) 8%, transparent) 58%, transparent 100% );
  }
  animation: broadcast-idea-shimmer 1.35s ease-in-out infinite;
}
@keyframes broadcast-idea-shimmer {
  to {
    transform: translateX(120%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .broadcast-idea-skeleton::after {
    animation: none;
    opacity: 0;
  }
}
.header-bar-title {
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
[data-compact="true"] .header-bar-title {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
@media (min-width: 768px) {
  .header-bar-title {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
}
.header-large-title {
  font-size: 34px;
  font-weight: 700;
  line-height: 41px;
  letter-spacing: 0.37px;
  color: var(--foreground);
  padding: 0 16px 8px 16px;
}
[data-mobile-title="compact"] .header-large-title {
  font-size: 26px;
  line-height: 32px;
  padding-bottom: 4px;
}
[data-mobile-title="compact"] .header-large-title p {
  font-size: 14px;
  line-height: 20px;
}
@media (min-width: 768px) {
  .header-large-title {
    display: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.animate-fade-in-up {
  animation: fadeInUp 0.18s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.animate-scale-in {
  animation: scaleIn 0.16s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.stagger-children > * {
  animation: fadeInUp 0.18s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.stagger-children > *:nth-child(1) {
  animation-delay: 0ms;
}
.stagger-children > *:nth-child(2) {
  animation-delay: 24ms;
}
.stagger-children > *:nth-child(3) {
  animation-delay: 48ms;
}
.stagger-children > *:nth-child(4) {
  animation-delay: 72ms;
}
.stagger-children > *:nth-child(5) {
  animation-delay: 96ms;
}
.stagger-children > *:nth-child(6) {
  animation-delay: 120ms;
}
.stagger-children > *:nth-child(7) {
  animation-delay: 144ms;
}
.stagger-children > *:nth-child(8) {
  animation-delay: 168ms;
}
@keyframes groupRise {
  0% {
    opacity: 1;
    transform: translateY(24px);
  }
  12% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.group-animate {
  animation: groupRise 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .animate-pulse, .animate-fade-in-up, .animate-scale-in, .stagger-children > * {
    animation: none;
  }
  .header-bar, .header-bar-title {
    transition: none;
  }
}
@media (max-width: 767px) {
  input, textarea, select {
    font-size: 16px !important;
  }
}
@media print {
  [data-sidebar], aside, nav, header:not(.print-visible) {
    display: none !important;
  }
  body, html {
    background: white !important;
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  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;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@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-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: 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;
      --tw-outline-style: solid;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
    }
  }
}

/* ../../../../../TutorStack/src/components./TutorStackProductCards.module.css */
.TutorStackProductCards_productFrame {
  width: 100%;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
  border-radius: clamp(1rem, 2vw, 1.5rem);
  background: var(--background);
  color: var(--foreground);
  box-shadow: 0 1.5rem 4rem color-mix(in srgb, var(--foreground) 9%, transparent);
  container-type: inline-size;
  font-family: var(--font-sans);
}
.TutorStackProductCards_productFrame button,
.TutorStackProductCards_productFrame input,
.TutorStackProductCards_productFrame select {
  font: inherit;
}
.TutorStackProductCards_chatFrame button,
.TutorStackProductCards_applicationsFrame button,
.TutorStackProductCards_financeFrame button {
  transition: box-shadow 180ms ease-out, transform 180ms ease-out;
}
.TutorStackProductCards_chatFrame button:not(:disabled):hover,
.TutorStackProductCards_applicationsFrame button:not(:disabled):hover,
.TutorStackProductCards_financeFrame button:not(:disabled):hover {
  box-shadow: 0 0.45rem 1rem color-mix(in srgb, var(--foreground) 9%, transparent);
  transform: translateY(-0.12rem);
}
.TutorStackProductCards_chatFrame button:not(:disabled):active,
.TutorStackProductCards_applicationsFrame button:not(:disabled):active,
.TutorStackProductCards_financeFrame button:not(:disabled):active {
  transform: translateY(-0.04rem);
}
.TutorStackProductCards_purchaseFrame {
  display: grid;
  min-height: 31rem;
  place-items: center;
  padding: clamp(1rem, 4vw, 3.5rem);
  background:
    radial-gradient(
      circle at 85% 15%,
      color-mix(in srgb, var(--accent) 12%, transparent),
      transparent 28%),
    var(--background);
}
.TutorStackProductCards_purchaseCard {
  width: min(100%, 47rem);
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 1rem 3rem color-mix(in srgb, var(--primary) 10%, transparent);
}
.TutorStackProductCards_purchaseHeader {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.8rem;
  border-bottom: 1px solid var(--border);
  padding: 1.15rem 1.35rem;
}
.TutorStackProductCards_purchaseHeader h3 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 750;
  letter-spacing: -0.025em;
}
.TutorStackProductCards_cardIcon {
  display: grid;
  width: 2.4rem;
  height: 2.4rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 0.7rem;
  background: color-mix(in srgb, var(--primary) 10%, var(--card));
  color: var(--primary);
}
.TutorStackProductCards_cardIcon svg {
  width: 1.15rem;
  height: 1.15rem;
}
.TutorStackProductCards_purchaseRows {
  padding: 0 1.35rem;
}
.TutorStackProductCards_purchaseRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 4.6rem 5.8rem;
  gap: 1.1rem;
  align-items: center;
  min-height: 7.5rem;
  border-bottom: 1px solid var(--border);
}
.TutorStackProductCards_purchaseStudent > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
}
.TutorStackProductCards_purchaseStudent strong {
  font-size: 0.97rem;
}
.TutorStackProductCards_purchaseStudent p {
  margin: 0.4rem 0 0;
  color: var(--muted-foreground);
  font-size: 0.75rem;
  line-height: 1.45;
}
.TutorStackProductCards_purchaseStudent p b {
  color: var(--foreground);
  font-weight: 650;
}
.TutorStackProductCards_quantityControl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1.35rem;
  height: 2.65rem;
  overflow: hidden;
  border: 1px solid var(--input);
  border-radius: 0.55rem;
  background: var(--card);
}
.TutorStackProductCards_quantityControl input {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  padding: 0 0.35rem;
  text-align: center;
  box-shadow: none;
  appearance: textfield;
  font-variant-numeric: tabular-nums;
}
.TutorStackProductCards_quantityControl input::-webkit-inner-spin-button,
.TutorStackProductCards_quantityControl input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}
.TutorStackProductCards_quantityControl > span {
  display: grid;
  grid-template-rows: 1fr 1fr;
  border-left: 1px solid var(--input);
}
.TutorStackProductCards_quantityControl button {
  display: grid;
  min-width: 1.35rem;
  min-height: 1.25rem;
  place-items: center;
  border: 0;
  background: var(--muted);
  color: var(--muted-foreground);
  cursor: pointer;
}
.TutorStackProductCards_quantityControl button:first-child {
  border-bottom: 1px solid var(--input);
}
.TutorStackProductCards_quantityControl button:hover {
  background: var(--secondary);
  color: var(--foreground);
}
.TutorStackProductCards_quantityControl button:focus-visible {
  position: relative;
  z-index: 1;
  outline: 2px solid var(--ring);
  outline-offset: -2px;
}
.TutorStackProductCards_quantityControl svg {
  width: 0.7rem;
  height: 0.7rem;
}
.TutorStackProductCards_chevronUp {
  rotate: 180deg;
}
.TutorStackProductCards_rowTotal {
  text-align: right;
  font-size: 0.94rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.TutorStackProductCards_rowTotal span {
  display: inline-block;
  min-inline-size: 5.5rem;
}
.TutorStackProductCards_purchaseTotal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.35rem;
  background: color-mix(in srgb, var(--muted) 64%, var(--card));
}
.TutorStackProductCards_purchaseTotal > div {
  display: grid;
  gap: 0.15rem;
}
.TutorStackProductCards_purchaseTotal span {
  color: var(--muted-foreground);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.TutorStackProductCards_purchaseTotal strong {
  display: inline-block;
  min-inline-size: 6.75rem;
  font-size: 1.4rem;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
}
.TutorStackProductCards_parentPaymentsFrame {
  padding: clamp(1rem, 3vw, 2.4rem);
  background:
    radial-gradient(
      circle at 88% 12%,
      color-mix(in srgb, var(--accent) 12%, transparent),
      transparent 30%),
    var(--background);
}
.TutorStackProductCards_parentPaymentsGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}
.TutorStackProductCards_parentPaymentCard {
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 0.8rem 2rem color-mix(in srgb, var(--primary) 9%, transparent);
}
.TutorStackProductCards_parentPaymentHeader {
  display: flex;
  min-height: 5.25rem;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid var(--border);
  padding: 1rem 1.15rem;
}
.TutorStackProductCards_parentPaymentHeader h3 {
  margin: 0.1rem 0 0;
  font-size: 1.08rem;
  letter-spacing: -0.025em;
}
.TutorStackProductCards_parentPaymentEyebrow {
  margin: 0;
  color: var(--muted-foreground);
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.TutorStackProductCards_parentPurchaseRow,
.TutorStackProductCards_parentSplitLesson {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.8rem;
  padding: 1.15rem;
}
.TutorStackProductCards_parentPurchaseRow .TutorStackProductCards_demoAvatar,
.TutorStackProductCards_parentSplitLesson .TutorStackProductCards_demoAvatar {
  width: 2.5rem;
}
.TutorStackProductCards_parentPurchaseRow strong,
.TutorStackProductCards_parentSplitLesson strong {
  font-size: 0.9rem;
}
.TutorStackProductCards_parentPurchaseRow p,
.TutorStackProductCards_parentSplitLesson p,
.TutorStackProductCards_parentPurchaseRow small,
.TutorStackProductCards_parentSplitLesson small {
  display: block;
  margin: 0.22rem 0 0;
  color: var(--muted-foreground);
  font-size: 0.7rem;
  line-height: 1.4;
}
.TutorStackProductCards_parentStepper {
  display: grid;
  grid-template-columns: 2rem 2.3rem 2rem;
  overflow: hidden;
  border: 1px solid var(--input);
  border-radius: 0.55rem;
}
.TutorStackProductCards_parentStepper button,
.TutorStackProductCards_parentStepper output {
  display: grid;
  width: 100%;
  min-height: 2.25rem;
  place-items: center;
  border: 0;
  background: var(--card);
  color: var(--foreground);
  font-weight: 700;
}
.TutorStackProductCards_parentStepper button + output,
.TutorStackProductCards_parentStepper output + button {
  border-left: 1px solid var(--input);
}
.TutorStackProductCards_parentStepper button:hover {
  background: var(--muted);
}
.TutorStackProductCards_parentStepper svg {
  width: 0.95rem;
  height: 0.95rem;
}
.TutorStackProductCards_parentPaymentFooter,
.TutorStackProductCards_parentSplitActions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.7rem;
  border-top: 1px solid var(--border);
  padding: 1rem 1.15rem;
  background: color-mix(in srgb, var(--muted) 56%, var(--card));
}
.TutorStackProductCards_parentPaymentFooter > div {
  display: grid;
  gap: 0.1rem;
}
.TutorStackProductCards_parentPaymentFooter span {
  color: var(--muted-foreground);
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.TutorStackProductCards_parentPaymentFooter strong {
  font-size: 1.15rem;
  letter-spacing: -0.035em;
}
.TutorStackProductCards_parentPaymentFooter button {
  min-height: 2.4rem;
  padding-inline: 0.8rem;
  font-size: 0.76rem;
}
.TutorStackProductCards_parentSplitLesson {
  padding-bottom: 0.9rem;
}
.TutorStackProductCards_parentSplitAmount {
  align-self: start;
  white-space: nowrap;
}
.TutorStackProductCards_parentSplitActions {
  justify-content: flex-start;
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}
.TutorStackProductCards_parentSplitActions button {
  min-height: 2.25rem;
  padding-inline: 0.8rem;
  font-size: 0.75rem;
}
.TutorStackProductCards_parentLiveCard {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin: 0 1.15rem 1.15rem;
  padding: 0.75rem;
  border: 1px solid var(--border);
  border-radius: 0.65rem;
}
.TutorStackProductCards_parentLiveCard svg {
  width: 1.15rem;
  color: var(--primary);
}
.TutorStackProductCards_parentLiveCard span {
  display: grid;
  gap: 0.12rem;
}
.TutorStackProductCards_parentLiveCard strong {
  font-size: 0.76rem;
}
.TutorStackProductCards_parentLiveCard small {
  color: var(--muted-foreground);
  font-size: 0.67rem;
}
.TutorStackProductCards_demoActive .TutorStackProductCards_rowTotal span,
.TutorStackProductCards_demoActive .TutorStackProductCards_purchaseTotal strong {
  animation: TutorStackProductCards_numberSettle 260ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes TutorStackProductCards_numberSettle {
  from {
    opacity: 0.38;
    transform: translateY(0.3em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.TutorStackProductCards_demoAvatar {
  display: block;
  aspect-ratio: 1;
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-color: var(--muted);
}
.TutorStackProductCards_p1,
.TutorStackProductCards_p2,
.TutorStackProductCards_p3,
.TutorStackProductCards_p4,
.TutorStackProductCards_p5,
.TutorStackProductCards_p6 {
  background-image: url(./parent-headshots-grid.webp);
  background-size: 300% 200%;
}
.TutorStackProductCards_p1 {
  background-position: 0 0;
}
.TutorStackProductCards_p2 {
  background-position: 50% 0;
}
.TutorStackProductCards_p3 {
  background-position: 100% 0;
}
.TutorStackProductCards_p4 {
  background-position: 0 100%;
}
.TutorStackProductCards_p5 {
  background-position: 50% 100%;
}
.TutorStackProductCards_p6 {
  background-position: 100% 100%;
}
.TutorStackProductCards_t1,
.TutorStackProductCards_t2,
.TutorStackProductCards_t3 {
  background-image: url(./tutor-headshots-triptych.webp);
  background-size: 300% 100%;
}
.TutorStackProductCards_t1 {
  background-position: 0 50%;
}
.TutorStackProductCards_t2 {
  background-position: 50% 50%;
}
.TutorStackProductCards_t3 {
  background-position: 100% 50%;
}
.TutorStackProductCards_groupAvatar {
  position: relative;
  display: block;
  flex: 0 0 auto;
}
.TutorStackProductCards_groupAvatar .TutorStackProductCards_demoAvatar {
  position: absolute;
  width: 68%;
  height: auto;
  border: 2px solid var(--card);
}
.TutorStackProductCards_groupAvatar .TutorStackProductCards_demoAvatar:first-child {
  top: 0;
  left: 0;
}
.TutorStackProductCards_groupAvatar .TutorStackProductCards_demoAvatar:nth-child(2) {
  top: 0;
  right: 0;
}
.TutorStackProductCards_groupAvatar .TutorStackProductCards_demoAvatar:nth-child(3) {
  right: 0;
  bottom: 0;
}
.TutorStackProductCards_bulkFrame {
  display: grid;
  min-height: 34rem;
  place-items: center;
  padding: clamp(0.8rem, 3vw, 2.2rem);
  background:
    radial-gradient(
      circle at 82% 12%,
      color-mix(in srgb, var(--accent) 12%, transparent),
      transparent 28%),
    color-mix(in srgb, var(--muted) 42%, var(--background));
}
.TutorStackProductCards_bulkCard {
  width: min(100%, 52rem);
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 1rem;
  background: var(--card);
  box-shadow: 0 1rem 3rem color-mix(in srgb, var(--primary) 9%, transparent);
}
.TutorStackProductCards_bulkHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid var(--border);
  padding: 1rem 1.2rem;
}
.TutorStackProductCards_bulkHeader > div {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.TutorStackProductCards_bulkHeader h3,
.TutorStackProductCards_bulkHeader p {
  margin: 0;
}
.TutorStackProductCards_bulkHeader h3 {
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: -0.03em;
}
.TutorStackProductCards_bulkHeader p {
  margin-top: 0.12rem;
  color: var(--muted-foreground);
  font-size: 0.65rem;
}
.TutorStackProductCards_bulkStageList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0.9rem 1.2rem;
  border-bottom: 1px solid var(--border);
  background: color-mix(in srgb, var(--muted) 45%, var(--card));
  list-style: none;
}
.TutorStackProductCards_bulkStageList li {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--muted-foreground);
  font-size: 0.65rem;
}
.TutorStackProductCards_bulkStageList li:not(:last-child)::after {
  position: absolute;
  top: 50%;
  right: 0.8rem;
  left: 5.3rem;
  height: 1px;
  background: var(--border);
  content: "";
}
.TutorStackProductCards_bulkStageList li > span {
  display: grid;
  width: 1.45rem;
  height: 1.45rem;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--card);
  font-size: 0.58rem;
  font-weight: 800;
}
.TutorStackProductCards_bulkStageList svg {
  width: 0.78rem;
  height: 0.78rem;
}
.TutorStackProductCards_bulkStageActive,
.TutorStackProductCards_bulkStageComplete {
  color: var(--primary) !important;
}
.TutorStackProductCards_bulkStageActive > span,
.TutorStackProductCards_bulkStageComplete > span {
  border-color: var(--primary) !important;
  background: var(--primary) !important;
  color: var(--primary-foreground);
}
.TutorStackProductCards_bulkPanels > section {
  min-height: 23rem;
  padding: 1.25rem;
}
.TutorStackProductCards_bulkPanels > section[hidden] {
  display: none;
}
.TutorStackProductCards_bulkPanelHeading h4,
.TutorStackProductCards_bulkPanelHeading > span {
  margin: 0;
}
.TutorStackProductCards_bulkPanelHeading h4 {
  font-size: 1rem;
  letter-spacing: -0.025em;
}
.TutorStackProductCards_bulkPanelHeading > span {
  display: block;
  margin-top: 0.25rem;
  color: var(--muted-foreground);
  font-size: 0.62rem;
}
.TutorStackProductCards_audienceOptions {
  display: grid;
  gap: 0.6rem;
  margin-top: 1rem;
}
.TutorStackProductCards_audienceOptions button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  min-height: 3.4rem;
  border: 1px solid var(--border);
  border-radius: 0.7rem;
  padding: 0.7rem 0.85rem;
  background: var(--background);
  color: var(--foreground);
  cursor: pointer;
  text-align: left;
}
.TutorStackProductCards_audienceOptions button[aria-pressed=true] {
  border-color: color-mix(in srgb, var(--primary) 45%, var(--border));
  background: color-mix(in srgb, var(--primary) 6%, var(--card));
  box-shadow: inset 0.18rem 0 var(--primary);
}
.TutorStackProductCards_audienceOptions button > span {
  display: flex;
  align-items: center;
  gap: 0.65rem;
}
.TutorStackProductCards_audienceOptions svg {
  width: 1rem;
  height: 1rem;
  color: var(--primary);
}
.TutorStackProductCards_audienceOptions button > svg {
  opacity: 0;
}
.TutorStackProductCards_audienceOptions button[aria-pressed=true] > svg {
  opacity: 1;
}
.TutorStackProductCards_bulkPrompt {
  display: grid;
  gap: 0.45rem;
  margin-top: 1rem;
  color: var(--foreground);
  font-size: 0.65rem;
  font-weight: 700;
}
.TutorStackProductCards_bulkPrompt textarea {
  min-height: 9.5rem;
  resize: none;
  cursor: default;
  background: color-mix(in srgb, var(--muted) 38%, var(--card));
  font-size: 0.75rem;
  line-height: 1.55;
}
.TutorStackProductCards_bulkFooter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 1rem;
  border-top: 1px solid var(--border);
  padding-top: 0.85rem;
}
.TutorStackProductCards_bulkFooter > span {
  color: var(--muted-foreground);
  font-size: 0.6rem;
}
.TutorStackProductCards_bulkReviewHeader {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 1rem;
}
.TutorStackProductCards_bulkReviewHeader > span {
  border-radius: 999px;
  padding: 0.3rem 0.6rem;
  background: var(--muted);
  color: var(--muted-foreground);
  font-size: 0.58rem;
  font-weight: 700;
}
.TutorStackProductCards_bulkReviewGrid {
  display: grid;
  grid-template-columns: 12.5rem minmax(0, 1fr);
  gap: 0.75rem;
  margin-top: 0.9rem;
}
.TutorStackProductCards_bulkRecipients {
  display: grid;
  align-content: start;
  gap: 0.35rem;
}
.TutorStackProductCards_bulkRecipients button {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr) auto;
  gap: 0.5rem;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 0.6rem;
  padding: 0.5rem;
  background: transparent;
  color: var(--foreground);
  cursor: pointer;
  text-align: left;
}
.TutorStackProductCards_bulkRecipients button > span:first-child {
  width: 2rem;
  height: 2rem;
}
.TutorStackProductCards_bulkRecipients button > span:nth-child(2) {
  display: grid;
  min-width: 0;
}
.TutorStackProductCards_bulkRecipients b,
.TutorStackProductCards_bulkRecipients small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_bulkRecipients b {
  font-size: 0.64rem;
}
.TutorStackProductCards_bulkRecipients small {
  margin-top: 0.12rem;
  color: var(--muted-foreground);
  font-size: 0.5rem;
}
.TutorStackProductCards_bulkRecipients svg {
  width: 0.8rem;
  height: 0.8rem;
  color: var(--primary);
}
.TutorStackProductCards_bulkRecipientActive {
  border-color: var(--border) !important;
  background: color-mix(in srgb, var(--primary) 7%, var(--card)) !important;
}
.TutorStackProductCards_bulkDraftEditor {
  display: grid;
  gap: 0.4rem;
  color: var(--muted-foreground);
  font-size: 0.58rem;
  font-weight: 700;
}
.TutorStackProductCards_bulkDraftEditor textarea {
  min-height: 9.5rem;
  resize: none;
  color: var(--foreground);
  font-size: 0.68rem;
  line-height: 1.55;
}
.TutorStackProductCards_bulkSent {
  display: grid;
  align-content: center;
  justify-items: center;
  text-align: center;
}
.TutorStackProductCards_bulkSent > svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--primary);
}
.TutorStackProductCards_bulkSent h4 {
  margin: 0.65rem 0 0;
  font-size: 1.2rem;
}
.TutorStackProductCards_bulkSent > p {
  max-width: 34rem;
  margin: 0.35rem 0 0;
  color: var(--muted-foreground);
  font-size: 0.7rem;
}
.TutorStackProductCards_bulkSent > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem;
  margin: 1rem 0;
}
.TutorStackProductCards_bulkSent > div > span {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 0.35rem 0.55rem 0.35rem 0.35rem;
  font-size: 0.58rem;
}
.TutorStackProductCards_bulkSent > div > span > .TutorStackProductCards_demoAvatar {
  width: 1.5rem;
  height: 1.5rem;
}
.TutorStackProductCards_bulkSent > div .TutorStackProductCards_bulkGroupAvatar {
  width: 2rem;
  height: 1.5rem;
}
.TutorStackProductCards_bulkSent > div svg {
  width: 0.7rem;
  height: 0.7rem;
  color: var(--primary);
}
.TutorStackProductCards_chatFrame {
  height: clamp(35rem, 57vw, 48rem);
  min-height: 35rem;
  background: var(--background);
}
.TutorStackProductCards_chatCard {
  display: grid;
  grid-template-columns: minmax(15rem, 22%) minmax(0, 1fr);
  grid-template-rows: 4.6rem minmax(0, 1fr);
  width: 100%;
  height: 100%;
}
.TutorStackProductCards_chatPageHeader {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: 0.9rem 1.05rem;
  background: var(--card);
}
.TutorStackProductCards_chatPageHeader h3,
.TutorStackProductCards_chatPageHeader p {
  margin: 0;
}
.TutorStackProductCards_chatPageHeader h3 {
  font-size: 1.18rem;
  font-weight: 800;
  letter-spacing: -0.035em;
}
.TutorStackProductCards_chatPageHeader p {
  margin-top: 0.12rem;
  color: var(--muted-foreground);
  font-size: 0.64rem;
}
.TutorStackProductCards_chatIcon {
  display: grid;
  width: 2.35rem;
  height: 2.35rem;
  place-items: center;
  border-radius: 999px;
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_chatPageHeader svg,
.TutorStackProductCards_threadHeader svg {
  width: 1rem;
  height: 1rem;
}
.TutorStackProductCards_conversationPane {
  grid-column: 1;
  grid-row: 2;
  position: relative;
  display: flex;
  min-height: 0;
  flex-direction: column;
  border-right: 1px solid var(--border);
  background: var(--card);
}
.TutorStackProductCards_conversationList {
  min-height: 0;
  flex: 1;
  overflow: hidden;
  padding-bottom: 3.7rem;
}
.TutorStackProductCards_conversationRow {
  position: relative;
  display: grid;
  width: 100%;
  grid-template-columns: 2.45rem minmax(0, 1fr) auto;
  gap: 0.68rem;
  align-items: center;
  min-height: 4.7rem;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid var(--border);
  border-left: 0;
  padding: 0.7rem 0.75rem;
  background: transparent;
  color: inherit;
  text-align: left;
}
.TutorStackProductCards_activeConversation {
  background: color-mix(in srgb, var(--primary) 8%, var(--card));
  box-shadow: inset 0.22rem 0 var(--primary);
}
.TutorStackProductCards_listAvatar,
.TutorStackProductCards_listGroupAvatar {
  width: 2.35rem;
  height: 2.35rem;
}
.TutorStackProductCards_conversationCopy {
  min-width: 0;
}
.TutorStackProductCards_conversationCopy strong,
.TutorStackProductCards_conversationCopy p {
  display: block;
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_conversationCopy strong {
  font-size: 0.72rem;
}
.TutorStackProductCards_conversationCopy p {
  margin-top: 0.2rem;
  color: var(--muted-foreground);
  font-size: 0.58rem;
}
.TutorStackProductCards_conversationRow > time {
  align-self: start;
  color: var(--muted-foreground);
  font-size: 0.5rem;
}
.TutorStackProductCards_unreadCount {
  position: absolute;
  right: 0.75rem;
  bottom: 0.65rem;
  display: grid;
  width: 1rem;
  height: 1rem;
  place-items: center;
  border-radius: 999px;
  background: var(--primary);
  color: var(--primary-foreground);
  font-size: 0.5rem;
  font-weight: 800;
}
.TutorStackProductCards_conversationSearch {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  border-top: 1px solid var(--border);
  padding: 0.7rem;
  background: color-mix(in srgb, var(--card) 92%, transparent);
  backdrop-filter: blur(0.75rem);
}
.TutorStackProductCards_conversationSearch > div {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  height: 2.15rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 0 0.75rem;
  color: var(--muted-foreground);
  font-size: 0.6rem;
}
.TutorStackProductCards_conversationSearch svg {
  width: 0.8rem;
  height: 0.8rem;
}
.TutorStackProductCards_thread {
  grid-column: 2;
  grid-row: 1 / span 2;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}
.TutorStackProductCards_threadHeaderWrap {
  position: relative;
  z-index: 3;
  padding: 0.72rem 0.85rem 0;
}
.TutorStackProductCards_threadHeader {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  min-height: 3.7rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 0.45rem 0.55rem 0.45rem 0.65rem;
  background: color-mix(in srgb, var(--card) 92%, transparent);
  box-shadow: 0 0.65rem 1.8rem color-mix(in srgb, var(--foreground) 7%, transparent);
  backdrop-filter: blur(1rem);
}
.TutorStackProductCards_threadGroupAvatar {
  width: 2.55rem;
  height: 2.55rem;
}
.TutorStackProductCards_threadHeader strong,
.TutorStackProductCards_threadHeader p {
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_threadHeader strong {
  display: block;
  font-size: 0.75rem;
}
.TutorStackProductCards_threadHeader p {
  margin-top: 0.12rem;
  color: var(--muted-foreground);
  font-size: 0.56rem;
}
.TutorStackProductCards_threadMessages {
  display: flex;
  min-height: 0;
  flex-direction: column;
  gap: 0.55rem;
  justify-content: flex-end;
  overflow: hidden;
  padding: 0.75rem 1rem 1rem;
}
.TutorStackProductCards_threadMessages > * {
  flex-shrink: 0;
}
.TutorStackProductCards_datePill {
  align-self: center;
  border-radius: 999px;
  padding: 0.25rem 0.65rem;
  background: var(--muted);
  color: var(--muted-foreground);
  font-size: 0.52rem;
  font-weight: 700;
}
.TutorStackProductCards_messageRow,
.TutorStackProductCards_cardMessage {
  display: flex;
  gap: 0.45rem;
  align-items: flex-end;
  max-width: min(78%, 36rem);
}
.TutorStackProductCards_messageOutgoing {
  align-self: flex-end;
  justify-content: flex-end;
}
.TutorStackProductCards_messageAvatar,
.TutorStackProductCards_agentAvatar {
  width: 1.8rem;
  height: 1.8rem;
}
.TutorStackProductCards_messageBody {
  min-width: 0;
}
.TutorStackProductCards_messageBody > p {
  margin: 0 0 0.18rem 0.45rem;
  color: var(--muted-foreground);
  font-size: 0.52rem;
  font-weight: 700;
}
.TutorStackProductCards_bubble {
  position: relative;
  border: 1px solid var(--border);
  border-radius: 1rem 1rem 1rem 0.28rem;
  padding: 0.58rem 2.8rem 0.58rem 0.75rem;
  background: var(--card);
  box-shadow: 0 0.35rem 1rem color-mix(in srgb, var(--foreground) 4%, transparent);
  font-size: 0.63rem;
  line-height: 1.45;
}
.TutorStackProductCards_outgoingBubble {
  border-color: var(--primary);
  border-radius: 1rem 1rem 0.28rem 1rem;
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_bubble time {
  position: absolute;
  right: 0.55rem;
  bottom: 0.32rem;
  opacity: 0.65;
  font-size: 0.43rem;
}
.TutorStackProductCards_cardMessage {
  align-items: flex-start;
  max-width: min(88%, 41rem);
}
.TutorStackProductCards_agentAvatar {
  margin-top: 0.5rem;
  border: 1px solid var(--border);
  background: var(--card);
}
.TutorStackProductCards_workflowWrap {
  position: relative;
  min-width: 0;
  flex: 1;
}
.TutorStackProductCards_workflowWrap > time {
  position: absolute;
  right: 0.68rem;
  bottom: 0.55rem;
  color: var(--muted-foreground);
  font-size: 0.43rem;
  font-weight: 500;
  line-height: 1;
}
.TutorStackProductCards_schedulingCard {
  margin-block: 0.34rem;
  width: 100%;
  border-radius: 0.34rem;
  padding: 0.67rem 0.67rem 1.25rem;
}
.TutorStackProductCards_schedulingCard > div:first-child,
.TutorStackProductCards_schedulingCard > div:first-child > div:first-child {
  gap: 0.5rem;
}
.TutorStackProductCards_schedulingCard > div:first-child > div:first-child > div:first-child {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0.3rem;
}
.TutorStackProductCards_schedulingCard > div:first-child > div:first-child > div:first-child svg {
  width: 0.85rem;
  height: 0.85rem;
}
.TutorStackProductCards_schedulingCard > div:first-child > div:first-child > div:last-child > div:first-child {
  gap: 0.34rem;
}
.TutorStackProductCards_schedulingCard h3 {
  margin-top: 0.34rem;
  font-size: 0.67rem;
}
.TutorStackProductCards_schedulingCard > div:last-child {
  margin-top: 0.67rem;
}
.TutorStackProductCards_schedulingCard > div:last-child > div {
  gap: 0.42rem;
  padding-inline: 0.17rem;
}
.TutorStackProductCards_confirmationBadge {
  inline-size: auto;
  max-inline-size: 100%;
  justify-content: center;
  padding: 0.17rem 0.42rem;
  font-size: 0.55rem;
  font-variant-numeric: tabular-nums;
  text-align: center;
}
.TutorStackProductCards_schedulingCard > div:last-child > div > div > p:first-child {
  font-size: 0.46rem;
}
.TutorStackProductCards_schedulingCard > div:last-child > div > div > p:last-child {
  font-size: 0.59rem;
}
.TutorStackProductCards_demoActive .TutorStackProductCards_confirmationBadgeConfirmed {
  animation: TutorStackProductCards_confirmationSettle 280ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes TutorStackProductCards_confirmationSettle {
  from {
    opacity: 0.35;
    transform: translateY(0.2rem) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.TutorStackProductCards_composerWrap {
  position: relative;
  z-index: 2;
  padding: 0 0.85rem 0.75rem;
}
.TutorStackProductCards_composer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.7rem;
  align-items: center;
  min-height: 2.8rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 0.3rem 0.35rem;
  background: var(--card);
  box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, var(--foreground) 5%, transparent);
  color: var(--muted-foreground);
  font-size: 0.62rem;
}
.TutorStackProductCards_composerIcon {
  display: grid;
  width: 2.05rem;
  height: 2.05rem;
  place-items: center;
  border-radius: 999px;
  background: var(--muted);
  color: var(--foreground);
}
.TutorStackProductCards_composerSendIcon {
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_composer svg {
  width: 0.85rem;
  height: 0.85rem;
}
.TutorStackProductCards_mobileMessagingFrame {
  min-height: 39rem;
  padding: 2.5rem 1.25rem 0;
  background:
    radial-gradient(
      circle at 18% 18%,
      color-mix(in srgb, var(--accent) 15%, transparent),
      transparent 32%),
    radial-gradient(
      circle at 82% 78%,
      color-mix(in srgb, var(--primary) 10%, transparent),
      transparent 34%),
    color-mix(in srgb, var(--muted) 46%, var(--background));
}
.TutorStackProductCards_mobilePhonePair {
  display: flex;
  height: 36.5rem;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(0.8rem, 3vw, 2rem);
}
.TutorStackProductCards_mobilePhone {
  position: relative;
  display: grid;
  width: min(47%, 17.5rem);
  height: 35rem;
  overflow: hidden;
  border: 0.45rem solid var(--foreground);
  border-radius: 2.25rem 2.25rem 0 0;
  background: var(--background);
  box-shadow: 0 1.8rem 3.5rem color-mix(in srgb, var(--foreground) 18%, transparent);
}
.TutorStackProductCards_mobileInbox {
  grid-template-rows: 1.55rem auto minmax(0, 1fr) auto;
  transform: translateY(1.5rem) rotate(-1.5deg);
}
.TutorStackProductCards_mobileThread {
  grid-template-rows: 1.55rem auto auto minmax(0, 1fr) auto;
  transform: rotate(1.5deg);
}
.TutorStackProductCards_mobileStatusBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem;
  color: var(--foreground);
  font-size: 0.52rem;
  font-weight: 750;
}
.TutorStackProductCards_mobileAppHeader,
.TutorStackProductCards_mobileThreadHeader {
  display: grid;
  align-items: center;
  border-bottom: 1px solid var(--border);
  background: var(--card);
}
.TutorStackProductCards_mobileAppHeader {
  grid-template-columns: 2rem minmax(0, 1fr) 1.2rem;
  gap: 0.65rem;
  padding: 0.75rem;
}
.TutorStackProductCards_mobileAppHeader img {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}
.TutorStackProductCards_mobileAppHeader div,
.TutorStackProductCards_mobileThreadHeader div {
  display: grid;
  min-width: 0;
}
.TutorStackProductCards_mobileAppHeader strong,
.TutorStackProductCards_mobileThreadHeader strong {
  overflow: hidden;
  font-size: 0.76rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_mobileAppHeader span,
.TutorStackProductCards_mobileThreadHeader span {
  overflow: hidden;
  margin-top: 0.1rem;
  color: var(--muted-foreground);
  font-size: 0.48rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_mobileAppHeader > svg,
.TutorStackProductCards_mobileThreadHeader > svg {
  width: 0.95rem;
  height: 0.95rem;
  color: var(--primary);
}
.TutorStackProductCards_mobileConversationList {
  min-height: 0;
  overflow: hidden;
}
.TutorStackProductCards_mobileConversationRow {
  position: relative;
  display: grid;
  grid-template-columns: 2.15rem minmax(0, 1fr) auto;
  gap: 0.55rem;
  align-items: center;
  min-height: 4.65rem;
  border-bottom: 1px solid var(--border);
  padding: 0.55rem 0.65rem;
  background: var(--card);
}
.TutorStackProductCards_mobileConversationRow > :first-child {
  width: 2.1rem;
  height: 2.1rem;
}
.TutorStackProductCards_mobileConversationRow > div {
  min-width: 0;
}
.TutorStackProductCards_mobileConversationRow strong,
.TutorStackProductCards_mobileConversationRow p {
  display: block;
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TutorStackProductCards_mobileConversationRow strong {
  font-size: 0.62rem;
}
.TutorStackProductCards_mobileConversationRow p {
  margin-top: 0.2rem;
  color: var(--muted-foreground);
  font-size: 0.49rem;
}
.TutorStackProductCards_mobileConversationRow time {
  align-self: start;
  color: var(--muted-foreground);
  font-size: 0.42rem;
}
.TutorStackProductCards_mobileConversationRow > span {
  position: absolute;
  right: 0.65rem;
  bottom: 0.65rem;
  display: grid;
  width: 0.9rem;
  height: 0.9rem;
  place-items: center;
  border-radius: 999px;
  background: var(--primary);
  color: var(--primary-foreground);
  font-size: 0.44rem;
  font-weight: 800;
}
.TutorStackProductCards_mobileTabBar {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid var(--border);
  padding: 0.55rem;
  background: color-mix(in srgb, var(--card) 94%, transparent);
}
.TutorStackProductCards_mobileTabBar span {
  display: grid;
  justify-items: center;
  gap: 0.15rem;
  color: var(--muted-foreground);
  font-size: 0.43rem;
}
.TutorStackProductCards_mobileTabBar span:first-child {
  color: var(--primary);
}
.TutorStackProductCards_mobileTabBar svg {
  width: 0.9rem;
  height: 0.9rem;
}
.TutorStackProductCards_mobileThreadHeader {
  grid-template-columns: 1rem 2.3rem minmax(0, 1fr);
  gap: 0.6rem;
  padding: 0.65rem 0.75rem;
}
.TutorStackProductCards_mobileThreadAvatar {
  width: 2.2rem;
  height: 2.2rem;
}
.TutorStackProductCards_mobileReminder {
  display: grid;
  grid-template-columns: 1.4rem minmax(0, 1fr) 1rem;
  gap: 0.5rem;
  align-items: center;
  border-bottom: 1px solid color-mix(in srgb, var(--primary) 18%, var(--border));
  padding: 0.6rem 0.75rem;
  background: color-mix(in srgb, var(--primary) 7%, var(--card));
}
.TutorStackProductCards_mobileReminder > svg:first-child {
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 0.4rem;
  padding: 0.25rem;
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_mobileReminder > svg:last-child {
  width: 0.9rem;
  height: 0.9rem;
  color: var(--primary);
}
.TutorStackProductCards_mobileReminder div {
  display: grid;
  min-width: 0;
}
.TutorStackProductCards_mobileReminder strong {
  font-size: 0.54rem;
}
.TutorStackProductCards_mobileReminder span {
  margin-top: 0.08rem;
  color: var(--muted-foreground);
  font-size: 0.43rem;
}
.TutorStackProductCards_mobileMessages {
  display: flex;
  min-height: 0;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: flex-end;
  overflow: hidden;
  padding: 0.65rem;
  background: color-mix(in srgb, var(--muted) 20%, var(--background));
}
.TutorStackProductCards_mobileDatePill {
  align-self: center;
  border-radius: 999px;
  padding: 0.2rem 0.5rem;
  background: var(--muted);
  color: var(--muted-foreground);
  font-size: 0.42rem;
  font-weight: 700;
}
.TutorStackProductCards_mobileIncomingMessage {
  display: flex;
  gap: 0.35rem;
  align-items: flex-end;
  max-width: 92%;
}
.TutorStackProductCards_mobileIncomingMessage > :first-child {
  width: 1.45rem;
  height: 1.45rem;
}
.TutorStackProductCards_mobileIncomingMessage > div {
  position: relative;
  border: 1px solid var(--border);
  border-radius: 0.8rem 0.8rem 0.8rem 0.2rem;
  padding: 0.45rem 1.8rem 0.45rem 0.55rem;
  background: var(--card);
  font-size: 0.48rem;
  line-height: 1.4;
}
.TutorStackProductCards_mobileIncomingMessage b {
  display: block;
  margin-bottom: 0.12rem;
  color: var(--muted-foreground);
  font-size: 0.42rem;
}
.TutorStackProductCards_mobileIncomingMessage p {
  margin: 0;
}
.TutorStackProductCards_mobileIncomingMessage time {
  position: absolute;
  right: 0.4rem;
  bottom: 0.25rem;
  color: var(--muted-foreground);
  font-size: 0.36rem;
}
.TutorStackProductCards_mobileScheduleCard {
  display: grid;
  gap: 0.55rem;
  margin-left: 1.8rem;
  border: 1px solid var(--border);
  border-radius: 0.75rem;
  padding: 0.65rem;
  background: var(--card);
  box-shadow: 0 0.5rem 1rem color-mix(in srgb, var(--foreground) 5%, transparent);
}
.TutorStackProductCards_mobileScheduleCard > div:first-child {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr);
  gap: 0.45rem;
  align-items: center;
}
.TutorStackProductCards_mobileScheduleCard > div:first-child > svg {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0.4rem;
  padding: 0.3rem;
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_mobileScheduleCard > div:first-child span {
  display: grid;
}
.TutorStackProductCards_mobileScheduleCard b {
  font-size: 0.55rem;
}
.TutorStackProductCards_mobileScheduleCard small {
  margin-top: 0.08rem;
  color: var(--muted-foreground);
  font-size: 0.42rem;
}
.TutorStackProductCards_mobileScheduleCard dl {
  display: grid;
  gap: 0.25rem;
  margin: 0;
}
.TutorStackProductCards_mobileScheduleCard dl div {
  display: grid;
  grid-template-columns: 2.6rem 1fr;
  gap: 0.4rem;
}
.TutorStackProductCards_mobileScheduleCard dt {
  color: var(--muted-foreground);
  font-size: 0.4rem;
  text-transform: uppercase;
}
.TutorStackProductCards_mobileScheduleCard dd {
  margin: 0;
  font-size: 0.48rem;
  font-weight: 650;
}
.TutorStackProductCards_mobileScheduleCard > span {
  display: flex;
  gap: 0.3rem;
  align-items: center;
  color: var(--primary);
  font-size: 0.45rem;
  font-weight: 750;
}
.TutorStackProductCards_mobileScheduleCard > span svg {
  width: 0.75rem;
  height: 0.75rem;
}
.TutorStackProductCards_mobileComposer {
  display: grid;
  grid-template-columns: 1.7rem minmax(0, 1fr) 1.7rem;
  gap: 0.4rem;
  align-items: center;
  margin: 0.55rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 0.25rem;
  color: var(--muted-foreground);
  font-size: 0.48rem;
}
.TutorStackProductCards_mobileComposer svg {
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 999px;
  padding: 0.38rem;
  background: var(--muted);
  color: var(--foreground);
}
.TutorStackProductCards_mobileComposer svg:last-child {
  background: var(--primary);
  color: var(--primary-foreground);
}
.TutorStackProductCards_mobileCommunicationViews {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 17.5rem));
  gap: clamp(0.8rem, 2.5vw, 1.5rem);
  justify-content: center;
  width: 100%;
  color: var(--foreground);
  font-family: var(--font-sans);
}
.TutorStackProductCards_mobileProductView {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1206 / 2622;
  overflow: hidden;
  border: 0.42rem solid var(--foreground);
  border-radius: 2.65rem;
  padding-top: 1.6rem;
  background: var(--background);
  box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--foreground) 9%, transparent);
}
.TutorStackProductCards_mobileProductView::before {
  position: absolute;
  z-index: 10;
  top: 0.42rem;
  left: 50%;
  width: 4.8rem;
  height: 1.22rem;
  border-radius: 999px;
  background: var(--foreground);
  content: "";
  transform: translateX(-50%);
}
.TutorStackProductCards_mobileInboxView {
  display: grid;
  grid-template-rows: 4.6rem minmax(0, 1fr);
  background: var(--card);
}
.TutorStackProductCards_mobileInboxView .TutorStackProductCards_chatPageHeader {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  border-right: 0;
}
.TutorStackProductCards_mobileInboxView .TutorStackProductCards_conversationPane {
  grid-column: 1;
  grid-row: 2;
  display: flex;
  border-right: 0;
}
.TutorStackProductCards_mobileInboxView .TutorStackProductCards_conversationRow {
  grid-template-columns: 2.45rem minmax(0, 1fr) auto;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_thread {
  grid-column: 1;
  width: 100%;
  height: 100%;
}
.TutorStackProductCards_mobileThreadView {
  background:
    radial-gradient(
      circle at top left,
      color-mix(in srgb, var(--accent) 14%, transparent),
      transparent 28rem),
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--card) 98%, transparent),
      color-mix(in srgb, var(--background) 96%, transparent));
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadHeader {
  grid-template-columns: 2.75rem minmax(0, 1fr) auto;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadMessages {
  gap: 0.65rem;
  padding: 0.8rem;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_messageRow,
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_cardMessage {
  max-width: 96%;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_messageOutgoing {
  max-width: 88%;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_cardMessage {
  width: 100%;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_schedulingCard {
  padding-right: 0.55rem;
  padding-left: 0.55rem;
}
.TutorStackProductCards_mobileThreadView .TutorStackProductCards_confirmationBadge {
  white-space: normal;
}
@media (max-width: 620px) {
  .TutorStackProductCards_mobileCommunicationViews {
    gap: 0.55rem;
  }
  .TutorStackProductCards_mobileProductView {
    height: auto;
    border-width: 0.3rem;
    border-radius: 1.75rem;
    padding-top: 1.25rem;
  }
  .TutorStackProductCards_mobileProductView::before {
    top: 0.3rem;
    width: 3.25rem;
    height: 0.85rem;
  }
  .TutorStackProductCards_mobileInboxView .TutorStackProductCards_conversationRow {
    grid-template-columns: 2rem minmax(0, 1fr) auto;
    gap: 0.45rem;
    min-height: 4rem;
    padding: 0.55rem 0.45rem;
  }
  .TutorStackProductCards_mobileInboxView .TutorStackProductCards_listAvatar,
  .TutorStackProductCards_mobileInboxView .TutorStackProductCards_listGroupAvatar {
    width: 1.95rem;
    height: 1.95rem;
  }
  .TutorStackProductCards_mobileInboxView .TutorStackProductCards_conversationRow:nth-child(n+5) {
    display: none;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadHeaderWrap {
    padding-right: 0.45rem;
    padding-left: 0.45rem;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_thread {
    width: 140%;
    height: 140%;
    transform: scale(0.7143);
    transform-origin: top left;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadHeader {
    grid-template-columns: 2.2rem minmax(0, 1fr);
    gap: 0.45rem;
    padding-right: 0.45rem;
    padding-left: 0.45rem;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadHeader .TutorStackProductCards_chatIcon {
    display: none;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadGroupAvatar {
    width: 2.1rem;
    height: 2.1rem;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_threadMessages {
    gap: 0.45rem;
    padding: 0.55rem;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_messageAvatar,
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_agentAvatar {
    display: none;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_bubble {
    padding-right: 2.1rem;
    padding-left: 0.55rem;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_cardMessage {
    max-width: 100%;
  }
  .TutorStackProductCards_mobileThreadView .TutorStackProductCards_confirmationBadge {
    font-size: 0.44rem;
  }
}
.TutorStackProductCards_applicationsFrame,
.TutorStackProductCards_financeFrame {
  padding: clamp(0.8rem, 2.5vw, 1.8rem);
  background: color-mix(in srgb, var(--muted) 45%, var(--background));
}
.TutorStackProductCards_applicationsPanel {
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 0.85rem;
  background: var(--background);
}
.TutorStackProductCards_applicationFilters {
  display: grid;
  gap: 0.85rem;
  border-bottom: 1px solid var(--border);
  padding: 1rem;
  background: var(--card);
}
.TutorStackProductCards_filterTabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}
.TutorStackProductCards_filterTabs button {
  display: flex;
  min-height: 2.4rem;
  align-items: center;
  gap: 0.45rem;
  border: 1px solid transparent;
  border-radius: 0.55rem;
  padding: 0.45rem 0.75rem;
  background: transparent;
  color: var(--muted-foreground);
  cursor: pointer;
  font-size: 0.72rem;
  font-weight: 700;
}
.TutorStackProductCards_filterTabs button[aria-pressed=true] {
  border-color: color-mix(in srgb, var(--primary) 18%, transparent);
  background: color-mix(in srgb, var(--primary) 8%, var(--card));
  color: var(--primary);
}
.TutorStackProductCards_filterTabs b {
  display: grid;
  min-width: 1.3rem;
  height: 1.3rem;
  place-items: center;
  border-radius: 999px;
  background: var(--muted);
  font-size: 0.58rem;
}
.TutorStackProductCards_filterRow {
  display: grid;
  grid-template-columns: minmax(14rem, 1fr) 9rem 9rem;
  gap: 0.65rem;
}
.TutorStackProductCards_filterRow label {
  position: relative;
}
.TutorStackProductCards_filterRow label svg {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0.75rem;
  width: 0.9rem;
  height: 0.9rem;
  color: var(--muted-foreground);
  translate: 0 -50%;
}
.TutorStackProductCards_filterRow input {
  padding-left: 2.2rem;
  font-size: 0.7rem;
}
.TutorStackProductCards_filterRow select {
  min-height: 2.25rem;
  border: 1px solid var(--input);
  border-radius: 0.55rem;
  padding: 0 0.7rem;
  background: var(--background);
  color: var(--foreground);
  font-size: 0.7rem;
}
.TutorStackProductCards_applicationList {
  display: grid;
  gap: 0.7rem;
  padding: 0.85rem;
}
.TutorStackProductCards_applicationCard {
  position: relative;
  border: 1px solid var(--border);
  border-radius: 0.7rem;
  padding: 0.95rem;
  background: var(--card);
  box-shadow: 0 0.15rem 0.4rem color-mix(in srgb, var(--foreground) 4%, transparent);
}
.TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoPending .TutorStackProductCards_applicationCard,
.TutorStackProductCards_financeFrame.TutorStackProductCards_demoPending tbody tr {
  opacity: 0;
  transform: translateY(0.45rem);
}
.TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoActive .TutorStackProductCards_applicationCard,
.TutorStackProductCards_financeFrame.TutorStackProductCards_demoActive tbody tr {
  animation: TutorStackProductCards_rowReveal 340ms cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--demo-index, 0) * 45ms);
}
.TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoActive .TutorStackProductCards_applicationBadges > * {
  animation: TutorStackProductCards_badgeReveal 240ms cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(150ms + (var(--demo-index, 0) * 45ms));
}
@keyframes TutorStackProductCards_rowReveal {
  from {
    opacity: 0;
    transform: translateY(0.45rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes TutorStackProductCards_badgeReveal {
  from {
    opacity: 0;
    transform: translateY(0.15rem) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.TutorStackProductCards_applicationContent {
  display: flex;
  justify-content: space-between;
  gap: 1.25rem;
}
.TutorStackProductCards_applicationBadges,
.TutorStackProductCards_applicationSubjects > div,
.TutorStackProductCards_applicationActions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.TutorStackProductCards_applicationCard h3 {
  margin: 0.65rem 0 0;
  color: var(--primary);
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: -0.025em;
}
.TutorStackProductCards_applicationSubjects {
  margin-top: 0.65rem;
}
.TutorStackProductCards_applicationSubjects p {
  margin: 0 0 0.3rem;
  color: var(--muted-foreground);
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.TutorStackProductCards_applicationActions {
  align-content: flex-start;
  justify-content: flex-end;
}
.TutorStackProductCards_applicationCard > time {
  display: block;
  margin-top: 0.55rem;
  color: var(--muted-foreground);
  font-size: 0.55rem;
  text-align: right;
}
.TutorStackProductCards_applicationDraft {
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
  margin-top: 0.8rem;
  border: 1px solid color-mix(in srgb, var(--primary) 20%, var(--border));
  border-radius: 0.65rem;
  padding: 0.7rem;
  background: color-mix(in srgb, var(--primary) 6%, var(--card));
}
.TutorStackProductCards_applicationDraft > svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  color: var(--primary);
}
.TutorStackProductCards_applicationDraft b,
.TutorStackProductCards_applicationDraft p {
  margin: 0;
}
.TutorStackProductCards_applicationDraft b {
  font-size: 0.68rem;
}
.TutorStackProductCards_applicationDraft p {
  margin-top: 0.2rem;
  color: var(--muted-foreground);
  font-size: 0.62rem;
  line-height: 1.45;
}
.TutorStackProductCards_applicationEmpty {
  margin: 0;
  border: 1px dashed var(--border);
  border-radius: 0.7rem;
  padding: 2.5rem 1rem;
  color: var(--muted-foreground);
  font-size: 0.72rem;
  text-align: center;
}
.TutorStackProductCards_financeGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
}
.TutorStackProductCards_financeGrid > div {
  min-width: 0;
  overflow: hidden;
  border-radius: 0.8rem;
}
.TutorStackProductCards_summaryHeader,
.TutorStackProductCards_payrollHeader {
  display: grid;
  height: 6rem;
  grid-template-rows: 1.75rem 1rem;
  align-content: center;
  gap: 0.75rem;
  border-bottom: 1px solid var(--border);
  padding: 1rem;
}
.TutorStackProductCards_financeHeaderTop {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
}
.TutorStackProductCards_summaryHeader strong,
.TutorStackProductCards_payrollHeader strong {
  color: var(--primary);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.TutorStackProductCards_summaryHeader strong span,
.TutorStackProductCards_payrollHeader strong span {
  display: inline-block;
  min-inline-size: 5.7rem;
  text-align: right;
}
.TutorStackProductCards_payrollAction {
  min-height: 1.75rem !important;
  border-radius: 0.45rem !important;
  padding: 0 0.55rem !important;
  font-size: 0.58rem !important;
}
.TutorStackProductCards_financeGrid table {
  font-size: 0.64rem;
}
.TutorStackProductCards_financeGrid th,
.TutorStackProductCards_financeGrid td {
  height: 3rem;
  padding-right: 0.55rem;
  padding-left: 0.55rem;
  white-space: nowrap;
}
.TutorStackProductCards_dashboardFrame {
  height: clamp(28rem, 47vw, 40rem);
  min-height: 28rem;
}
.TutorStackProductCards_dashboardCard {
  display: grid;
  grid-template-columns: 13rem minmax(0, 1fr);
  width: 100%;
  height: 100%;
  background: var(--background);
}
.TutorStackProductCards_dashboardSidebar {
  display: flex;
  min-height: 0;
  flex-direction: column;
  border-right: 1px solid var(--border);
  padding: 1.15rem 0.85rem 0.85rem;
  background: var(--card);
}
.TutorStackProductCards_brandSlot {
  display: flex;
  width: 100%;
  height: 3.6rem;
  align-items: center;
  margin-bottom: 1.1rem;
  animation: TutorStackProductCards_brandFade 260ms ease-out both;
}
.TutorStackProductCards_brandLogo {
  display: flex;
  width: 100%;
  align-items: center;
}
.TutorStackProductCards_wideLogo {
  width: auto;
  max-width: 10rem;
  height: auto;
  max-height: 2.65rem;
  object-fit: contain;
  object-position: left center;
}
.TutorStackProductCards_t4tWideLogo {
  width: 100%;
  max-width: none;
  max-height: none;
}
.TutorStackProductCards_compactLogoViewport {
  display: none;
}
.TutorStackProductCards_generatedBrand {
  display: flex;
  align-items: center;
  gap: 0.62rem;
  color: var(--foreground);
}
.TutorStackProductCards_generatedBrand > span {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border-radius: 0.62rem;
  color: white;
}
.TutorStackProductCards_generatedBrand svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}
.TutorStackProductCards_generatedBrand strong {
  font-size: 0.94rem;
  letter-spacing: -0.035em;
}
.TutorStackProductCards_dashboardSidebar nav {
  display: grid;
  gap: 0.35rem;
}
.TutorStackProductCards_skeletonNavItem {
  display: flex;
  min-height: 2.35rem;
  align-items: center;
  gap: 0.75rem;
  border-radius: 0.55rem;
  padding: 0 0.7rem;
  color: var(--muted-foreground);
}
.TutorStackProductCards_skeletonNavItem svg {
  width: 0.95rem;
  height: 0.95rem;
}
.TutorStackProductCards_skeletonNavItem span {
  display: block;
  height: 0.42rem;
  border-radius: 999px;
  background: color-mix(in srgb, currentColor 32%, transparent);
}
.TutorStackProductCards_skeletonNavActive {
  background: color-mix(in srgb, var(--primary) 9%, var(--card));
  color: var(--primary);
}
.TutorStackProductCards_dashboardProfile {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-top: auto;
  border-top: 1px solid var(--border);
  padding: 0.85rem 0.5rem 0.1rem;
}
.TutorStackProductCards_dashboardProfile > span {
  width: 2rem;
  height: 2rem;
}
.TutorStackProductCards_dashboardProfile > div {
  display: grid;
  flex: 1;
  gap: 0.38rem;
}
.TutorStackProductCards_dashboardProfile > div span {
  display: block;
  width: 72%;
  height: 0.4rem;
  border-radius: 999px;
  background: var(--border);
}
.TutorStackProductCards_dashboardProfile > div span:last-child {
  width: 48%;
  opacity: 0.72;
}
.TutorStackProductCards_dashboardMain {
  display: grid;
  grid-template-rows: 3.8rem minmax(0, 1fr);
  min-width: 0;
}
.TutorStackProductCards_dashboardMain > header {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--border);
  padding: 0 1.3rem;
  background: var(--card);
}
.TutorStackProductCards_dashboardMain > header span {
  display: block;
  width: 7.5rem;
  height: 0.55rem;
  border-radius: 999px;
  background: var(--border);
}
.TutorStackProductCards_dashboardContent {
  min-height: 0;
  overflow: hidden;
  padding: clamp(1rem, 3vw, 2rem);
}
.TutorStackProductCards_dashboardHeading {
  display: grid;
  gap: 0.55rem;
}
.TutorStackProductCards_dashboardHeading span {
  display: block;
  width: min(42%, 18rem);
  height: 0.8rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--primary) 20%, var(--border));
}
.TutorStackProductCards_dashboardHeading span:last-child {
  width: min(66%, 28rem);
  height: 0.46rem;
  background: var(--border);
}
.TutorStackProductCards_skeletonMetrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.7rem;
  margin-top: 1.35rem;
}
.TutorStackProductCards_skeletonMetrics > div,
.TutorStackProductCards_chartPanel,
.TutorStackProductCards_activityPanel {
  border: 1px solid var(--border);
  border-radius: 0.72rem;
  background: var(--card);
}
.TutorStackProductCards_skeletonMetrics > div {
  display: grid;
  gap: 0.7rem;
  min-height: 5rem;
  padding: 1rem;
}
.TutorStackProductCards_skeletonMetrics span,
.TutorStackProductCards_skeletonMetrics b,
.TutorStackProductCards_panelSkeletonHeader span,
.TutorStackProductCards_activityRows b {
  display: block;
  border-radius: 999px;
  background: var(--border);
}
.TutorStackProductCards_skeletonMetrics span {
  height: 0.42rem;
}
.TutorStackProductCards_skeletonMetrics b {
  height: 0.72rem;
  background: color-mix(in srgb, var(--primary) 18%, var(--border));
}
.TutorStackProductCards_dashboardGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(12rem, 0.8fr);
  gap: 0.7rem;
  min-height: 13rem;
  margin-top: 0.7rem;
}
.TutorStackProductCards_chartPanel,
.TutorStackProductCards_activityPanel {
  min-height: 0;
  padding: 1rem;
}
.TutorStackProductCards_panelSkeletonHeader {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}
.TutorStackProductCards_panelSkeletonHeader span {
  width: 34%;
  height: 0.45rem;
}
.TutorStackProductCards_panelSkeletonHeader span:last-child {
  width: 18%;
}
.TutorStackProductCards_chartBars {
  display: flex;
  height: calc(100% - 1.6rem);
  align-items: end;
  gap: 6%;
  padding: 1.4rem 0.3rem 0;
}
.TutorStackProductCards_chartBars i {
  display: block;
  width: 8%;
  border-radius: 0.4rem 0.4rem 0 0;
  background: var(--primary);
}
.TutorStackProductCards_activityRows {
  display: grid;
  gap: 0.9rem;
  margin-top: 1.2rem;
}
.TutorStackProductCards_activityRows > div {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.TutorStackProductCards_activityRows i {
  display: block;
  width: 1.65rem;
  height: 1.65rem;
  flex: 0 0 auto;
  border-radius: 999px;
  background: color-mix(in srgb, var(--primary) 14%, var(--muted));
}
.TutorStackProductCards_activityRows span {
  display: grid;
  flex: 1;
  gap: 0.3rem;
}
.TutorStackProductCards_activityRows b {
  height: 0.35rem;
}
@keyframes TutorStackProductCards_brandFade {
  from {
    opacity: 0;
    transform: translateY(0.25rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@container (max-width: 760px) {
  .TutorStackProductCards_bulkReviewGrid {
    grid-template-columns: 1fr;
  }
  .TutorStackProductCards_bulkRecipients {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .TutorStackProductCards_financeGrid {
    grid-template-columns: 1fr;
  }
  .TutorStackProductCards_applicationContent {
    flex-direction: column;
  }
  .TutorStackProductCards_applicationActions {
    justify-content: flex-start;
  }
  .TutorStackProductCards_dashboardCard {
    grid-template-columns: 9rem minmax(0, 1fr);
  }
  .TutorStackProductCards_wideLogo {
    max-width: 7rem;
  }
  .TutorStackProductCards_generatedBrand strong {
    font-size: 0.75rem;
  }
  .TutorStackProductCards_skeletonMetrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@container (max-width: 480px) {
  .TutorStackProductCards_chatCard {
    grid-template-columns: minmax(0, 1fr);
  }
  .TutorStackProductCards_chatPageHeader,
  .TutorStackProductCards_conversationPane {
    display: none;
  }
  .TutorStackProductCards_thread {
    grid-column: 1;
  }
  .TutorStackProductCards_mobileMessagingFrame {
    min-height: 31rem;
    padding: 1.5rem 0.45rem 0;
  }
  .TutorStackProductCards_mobilePhonePair {
    height: 29.5rem;
    gap: 0.35rem;
  }
  .TutorStackProductCards_mobilePhone {
    width: 49%;
    height: 29rem;
    border-width: 0.3rem;
    border-radius: 1.55rem 1.55rem 0 0;
  }
  .TutorStackProductCards_mobileConversationRow {
    min-height: 3.8rem;
    padding-inline: 0.45rem;
  }
  .TutorStackProductCards_mobileConversationRow:nth-child(4) {
    display: none;
  }
  .TutorStackProductCards_mobileIncomingMessage:first-of-type {
    display: none;
  }
}
@container (max-width: 560px) {
  .TutorStackProductCards_financeGrid table {
    font-size: 0.58rem;
  }
  .TutorStackProductCards_financeGrid th,
  .TutorStackProductCards_financeGrid td {
    height: 2.45rem;
    padding-right: 0.35rem;
    padding-left: 0.35rem;
    white-space: normal;
  }
  .TutorStackProductCards_summaryHeader,
  .TutorStackProductCards_payrollHeader {
    height: auto;
    min-height: 6rem;
    grid-template-rows: auto auto;
  }
  .TutorStackProductCards_financeHeaderTop {
    flex-wrap: wrap;
  }
  .TutorStackProductCards_bulkStageList li:not(:last-child)::after {
    display: none;
  }
  .TutorStackProductCards_bulkStageList {
    gap: 0.4rem;
  }
  .TutorStackProductCards_bulkStageList li {
    font-size: 0.58rem;
  }
  .TutorStackProductCards_bulkRecipients {
    grid-template-columns: 1fr;
  }
  .TutorStackProductCards_bulkReviewHeader {
    align-items: flex-start;
    flex-direction: column;
  }
  .TutorStackProductCards_bulkFooter {
    align-items: stretch;
    flex-direction: column;
  }
  .TutorStackProductCards_bulkFooter > span {
    order: 2;
  }
  .TutorStackProductCards_purchaseRow {
    grid-template-columns: minmax(0, 1fr) 4.2rem;
    gap: 0.65rem;
    padding: 1rem 0;
  }
  .TutorStackProductCards_rowTotal {
    grid-column: 1 / -1;
    text-align: left;
  }
  .TutorStackProductCards_purchaseTotal {
    align-items: stretch;
    flex-direction: column;
  }
  .TutorStackProductCards_parentPaymentsGrid {
    grid-template-columns: 1fr;
  }
  .TutorStackProductCards_filterRow {
    grid-template-columns: 1fr 1fr;
  }
  .TutorStackProductCards_filterRow label {
    grid-column: 1 / -1;
  }
  .TutorStackProductCards_dashboardCard {
    grid-template-columns: 4.2rem minmax(0, 1fr);
  }
  .TutorStackProductCards_brandSlot {
    justify-content: center;
  }
  .TutorStackProductCards_brandLogo {
    justify-content: center;
  }
  .TutorStackProductCards_wideLogo {
    display: none;
  }
  .TutorStackProductCards_compactLogoViewport {
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    overflow: hidden;
    flex: 0 0 auto;
    place-items: center;
  }
  .TutorStackProductCards_compactLogoViewport[data-cropped-brand=halcyon] {
    width: 2rem;
  }
  .TutorStackProductCards_compactLogoViewport[data-cropped-brand=lumora] {
    width: 1.8rem;
  }
  .TutorStackProductCards_compactLogoViewport[data-cropped-brand=elmwise] {
    width: 1.95rem;
  }
  .TutorStackProductCards_compactLogo {
    width: 2.15rem;
    height: 2.15rem;
    object-fit: contain;
  }
  .TutorStackProductCards_croppedCompactLogo {
    width: auto;
    max-width: none;
    height: 2.15rem;
    justify-self: start;
    object-fit: initial;
    object-position: left center;
  }
  .TutorStackProductCards_generatedBrand strong,
  .TutorStackProductCards_skeletonNavItem span,
  .TutorStackProductCards_dashboardProfile > div {
    display: none;
  }
  .TutorStackProductCards_generatedBrand > span {
    width: 2rem;
  }
  .TutorStackProductCards_skeletonNavItem {
    justify-content: center;
    padding: 0;
  }
  .TutorStackProductCards_dashboardProfile {
    justify-content: center;
    padding-right: 0;
    padding-left: 0;
  }
  .TutorStackProductCards_dashboardGrid {
    grid-template-columns: 1fr;
  }
  .TutorStackProductCards_activityPanel {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .TutorStackProductCards_brandSlot,
  .TutorStackProductCards_demoActive .TutorStackProductCards_confirmationBadgeConfirmed,
  .TutorStackProductCards_demoActive .TutorStackProductCards_rowTotal span,
  .TutorStackProductCards_demoActive .TutorStackProductCards_purchaseTotal strong,
  .TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoActive .TutorStackProductCards_applicationCard,
  .TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoActive .TutorStackProductCards_applicationBadges > *,
  .TutorStackProductCards_financeFrame.TutorStackProductCards_demoActive tbody tr {
    animation: none;
  }
  .TutorStackProductCards_applicationsFrame.TutorStackProductCards_demoPending .TutorStackProductCards_applicationCard,
  .TutorStackProductCards_financeFrame.TutorStackProductCards_demoPending tbody tr {
    opacity: 1;
    transform: none;
  }
}

@font-face{font-family:"Plus Jakarta Sans";font-weight:200 800;src:url("./plus-jakarta-sans.woff2")}html{--font-jakarta:"Plus Jakarta Sans";--font-sans:"Plus Jakarta Sans"}body{margin:0;font-family:"Plus Jakarta Sans",sans-serif} [class*="productFrame"]{border:0;border-radius:0;box-shadow:none} [class*="chatComposer"]{pointer-events:none}

/* The phone preview carries its own iOS chrome. Keep its status and notification proportions distinct from product UI. */
.ios-status{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",Helvetica,Arial,sans-serif!important;font-size:13px!important;font-weight:600!important;letter-spacing:-.01em!important}
.ios-status .status-icons{display:block!important;width:58px!important;height:14px!important;background:center/58px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 58 14'%3E%3Cg fill='%23111827'%3E%3Crect x='0' y='8' width='3' height='6' rx='.7'/%3E%3Crect x='4' y='6' width='3' height='8' rx='.7'/%3E%3Crect x='8' y='4' width='3' height='10' rx='.7'/%3E%3Crect x='12' y='1' width='3' height='13' rx='.7'/%3E%3C/g%3E%3Cg fill='none' stroke='%23111827' stroke-width='1.55' stroke-linecap='round'%3E%3Cpath d='M23 5.5c3.2-3.2 8.4-3.2 11.6 0M25.8 8.2c1.7-1.7 4.5-1.7 6.2 0M28.9 10.8h.2'/%3E%3Crect x='40' y='2.5' width='15' height='9' rx='2'/%3E%3Cpath d='M56 5v4'/%3E%3C/g%3E%3Crect x='42' y='4.5' width='10' height='5' rx='1' fill='%23111827'/%3E%3C/svg%3E")!important}
.ios-status .status-icons svg{display:none!important}
/* Opaque surfaces avoid backdrop-filter artefacts inside the scaled phone iframe. */
#hero-t4t-push{top:45px!important;left:11px!important;right:11px!important;gap:8px!important;padding:10px 11px!important;border-radius:17px!important;background:#f8fafc!important;box-shadow:0 3px 8px rgba(32,50,77,.12),inset 0 1px #fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",Helvetica,Arial,sans-serif!important}
.ios-status + .TutorStackProductCards_thread .TutorStackProductCards_threadHeader {
  background: var(--card, #fff);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
#hero-t4t-push img{width:28px!important;height:28px!important;padding:0!important;border-radius:7px!important;background:transparent!important}
#hero-t4t-push header{font-size:11px!important;line-height:1.1!important;letter-spacing:-.01em!important}
#hero-t4t-push header strong{font-weight:650!important;color:#4c5564!important}#hero-t4t-push header span{font-size:11px!important;color:#7b8797!important}
#hero-t4t-push p{margin-top:3px!important;font-size:12px!important;line-height:1.26!important;letter-spacing:-.012em!important;color:#364152!important}
#hero-t4t-push p b{font-weight:700!important;color:#1f2937!important}
