/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    :root,
    :host {
      --shimmer-angle: 20deg;
    }
    *,
    :before,
    :after,
    ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: 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-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-content: "";
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --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;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
  }
}
@layer theme {
  :root,
  :host {
    --font-mono:
      ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-lg: 32rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-xs: 0.125rem;
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --aspect-video: 16 / 9;
    --default-transition-duration: 0.15s;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    --default-mono-font-family: var(--font-mono);
    --color-border: var(--border);
  }
}
@layer base {
  *,
  :after,
  :before,
  ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  html,
  :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(
      --default-font-family,
      ui-sans-serif,
      system-ui,
      sans-serif,
      "Apple Color Emoji",
      "Segoe UI Emoji",
      "Segoe UI Symbol",
      "Noto Color Emoji"
    );
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: 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 {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol,
  ul,
  menu {
    list-style: none;
  }
  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    vertical-align: middle;
    display: block;
  }
  img,
  video {
    max-width: 100%;
    height: auto;
  }
  button,
  input,
  select,
  optgroup,
  textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  :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)) {
      ::placeholder {
        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 {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }
  ::-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"]) {
    appearance: button;
  }
  ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button {
    height: auto;
  }
  ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer components;
@layer utilities {
  .\@container\/card-header {
    container: card-header/inline-size;
  }
  .\@container\/field-group {
    container: field-group/inline-size;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .inset-s-1\/2 {
    inset-inline-start: 50%;
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .-top-12 {
    top: calc(var(--spacing) * -12);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\.5 {
    top: calc(var(--spacing) * 1.5);
  }
  .top-1\/2 {
    top: 50%;
  }
  .top-3\.5 {
    top: calc(var(--spacing) * 3.5);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-\[1px\] {
    top: 1px;
  }
  .top-\[50\%\] {
    top: 50%;
  }
  .top-\[60\%\] {
    top: 60%;
  }
  .top-full {
    top: 100%;
  }
  .-right-12 {
    right: calc(var(--spacing) * -12);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-1 {
    right: calc(var(--spacing) * 1);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-3\.5 {
    right: calc(var(--spacing) * 3.5);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .-bottom-12 {
    bottom: calc(var(--spacing) * -12);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .-left-12 {
    left: calc(var(--spacing) * -12);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: 50%;
  }
  .left-2 {
    left: calc(var(--spacing) * 2);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-\[50\%\] {
    left: 50%;
  }
  .isolate {
    isolation: isolate;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[1\] {
    z-index: 1;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-2 {
    grid-row: span 2 / span 2;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .m-0\! {
    margin: calc(var(--spacing) * 0) !important;
  }
  .m-7 {
    margin: calc(var(--spacing) * 7);
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }
  .mx-3\.5 {
    margin-inline: calc(var(--spacing) * 3.5);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-my-2 {
    margin-block: calc(var(--spacing) * -2);
  }
  .my-0 {
    margin-block: calc(var(--spacing) * 0);
  }
  .my-0\.5 {
    margin-block: calc(var(--spacing) * 0.5);
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .-mt-4 {
    margin-top: calc(var(--spacing) * -4);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .-ml-1 {
    margin-left: calc(var(--spacing) * -1);
  }
  .-ml-4 {
    margin-left: calc(var(--spacing) * -4);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-1 {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }
  .line-clamp-2 {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }
  .scrollbar-none {
    scrollbar-width: none;
  }
  .scrollbar-none::-webkit-scrollbar {
    display: none;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .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;
  }
  .aspect-video {
    aspect-ratio: var(--aspect-video);
  }
  .size-\(--cell-size\) {
    width: var(--cell-size);
    height: var(--cell-size);
  }
  .size-2 {
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
  }
  .size-2\.5 {
    width: calc(var(--spacing) * 2.5);
    height: calc(var(--spacing) * 2.5);
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .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-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-7 {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
  }
  .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-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-16 {
    width: calc(var(--spacing) * 16);
    height: calc(var(--spacing) * 16);
  }
  .size-auto {
    width: auto;
    height: auto;
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-\(--cell-size\) {
    height: var(--cell-size);
  }
  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-\[calc\(--spacing\(5\.5\)\)\] {
    height: calc(calc(var(--spacing) * 5.5));
  }
  .h-\[calc\(100\%-1px\)\] {
    height: calc(100% - 1px);
  }
  .h-\[var\(--radix-navigation-menu-viewport-height\)\] {
    height: var(--radix-navigation-menu-viewport-height);
  }
  .h-\[var\(--radix-select-trigger-height\)\] {
    height: var(--radix-select-trigger-height);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-max {
    height: max-content;
  }
  .h-px {
    height: 1px;
  }
  .h-svh {
    height: 100svh;
  }
  .max-h-\(--radix-context-menu-content-available-height\) {
    max-height: var(--radix-context-menu-content-available-height);
  }
  .max-h-\(--radix-dropdown-menu-content-available-height\) {
    max-height: var(--radix-dropdown-menu-content-available-height);
  }
  .max-h-\(--radix-select-content-available-height\) {
    max-height: var(--radix-select-content-available-height);
  }
  .max-h-96 {
    max-height: calc(var(--spacing) * 96);
  }
  .max-h-\[300px\] {
    max-height: 300px;
  }
  .max-h-\[min\(calc\(--spacing\(96\)---spacing\(9\)\)\,calc\(var\(--available-height\)---spacing\(9\)\)\)\] {
    max-height: min(
      calc(calc(var(--spacing) * 96) - calc(var(--spacing) * 9)),
      calc(var(--available-height) - calc(var(--spacing) * 9))
    );
  }
  .min-h-0 {
    min-height: calc(var(--spacing) * 0);
  }
  .min-h-4 {
    min-height: calc(var(--spacing) * 4);
  }
  .min-h-9 {
    min-height: calc(var(--spacing) * 9);
  }
  .min-h-16 {
    min-height: calc(var(--spacing) * 16);
  }
  .min-h-full {
    min-height: 100%;
  }
  .min-h-svh {
    min-height: 100svh;
  }
  .w-\(--anchor-width\) {
    width: var(--anchor-width);
  }
  .w-\(--cell-size\) {
    width: var(--cell-size);
  }
  .w-\(--sidebar-width\) {
    width: var(--sidebar-width);
  }
  .w-0 {
    width: calc(var(--spacing) * 0);
  }
  .w-1 {
    width: calc(var(--spacing) * 1);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\/4 {
    width: 75%;
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-64 {
    width: calc(var(--spacing) * 64);
  }
  .w-72 {
    width: calc(var(--spacing) * 72);
  }
  .w-\[100px\] {
    width: 100px;
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .w-max {
    width: max-content;
  }
  .w-px {
    width: 1px;
  }
  .max-w-\(--available-width\) {
    max-width: var(--available-width);
  }
  .max-w-\(--skeleton-width\) {
    max-width: var(--skeleton-width);
  }
  .max-w-\[80\%\] {
    max-width: 80%;
  }
  .max-w-\[calc\(100\%-2rem\)\] {
    max-width: calc(100% - 2rem);
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-max {
    max-width: max-content;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .min-w-\(--cell-size\) {
    min-width: var(--cell-size);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-5 {
    min-width: calc(var(--spacing) * 5);
  }
  .min-w-8 {
    min-width: calc(var(--spacing) * 8);
  }
  .min-w-9 {
    min-width: calc(var(--spacing) * 9);
  }
  .min-w-10 {
    min-width: calc(var(--spacing) * 10);
  }
  .min-w-16 {
    min-width: calc(var(--spacing) * 16);
  }
  .min-w-40 {
    min-width: calc(var(--spacing) * 40);
  }
  .min-w-\[8rem\] {
    min-width: 8rem;
  }
  .min-w-\[12rem\] {
    min-width: 12rem;
  }
  .min-w-\[calc\(var\(--anchor-width\)\+--spacing\(7\)\)\] {
    min-width: calc(var(--anchor-width) + calc(var(--spacing) * 7));
  }
  .min-w-\[var\(--radix-select-trigger-width\)\] {
    min-width: var(--radix-select-trigger-width);
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .grow {
    flex-grow: 1;
  }
  .grow-0 {
    flex-grow: 0;
  }
  .basis-full {
    flex-basis: 100%;
  }
  .caption-bottom {
    caption-side: bottom;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .origin-\(--radix-context-menu-content-transform-origin\) {
    transform-origin: var(--radix-context-menu-content-transform-origin);
  }
  .origin-\(--radix-dropdown-menu-content-transform-origin\) {
    transform-origin: var(--radix-dropdown-menu-content-transform-origin);
  }
  .origin-\(--radix-hover-card-content-transform-origin\) {
    transform-origin: var(--radix-hover-card-content-transform-origin);
  }
  .origin-\(--radix-menubar-content-transform-origin\) {
    transform-origin: var(--radix-menubar-content-transform-origin);
  }
  .origin-\(--radix-popover-content-transform-origin\) {
    transform-origin: var(--radix-popover-content-transform-origin);
  }
  .origin-\(--radix-select-content-transform-origin\) {
    transform-origin: var(--radix-select-content-transform-origin);
  }
  .origin-\(--radix-tooltip-content-transform-origin\) {
    transform-origin: var(--radix-tooltip-content-transform-origin);
  }
  .origin-\(--transform-origin\) {
    transform-origin: var(--transform-origin);
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-x-px {
    --tw-translate-x: -1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[-50\%\] {
    --tw-translate-x: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-px {
    --tw-translate-x: 1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-3\/4 {
    --tw-translate-y: calc(calc(3 / 4 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-0\.5 {
    --tw-translate-y: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-3\/4 {
    --tw-translate-y: calc(3 / 4 * 100%);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[-50\%\] {
    --tw-translate-y: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[calc\(-50\%_-_2px\)\] {
    --tw-translate-y: calc(-50% - 2px);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-45 {
    rotate: 45deg;
  }
  .rotate-90 {
    rotate: 90deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,)
      var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .scroll-fade-x {
    --_scroll-fade-size-s: var(
      --scroll-fade-s-size,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
    --_scroll-fade-size-e: var(
      --scroll-fade-e-size,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
    --scroll-fade-inline: linear-gradient(
      to right,
      transparent 0,
      #000 var(--scroll-fade-s, 0px),
      #000 calc(100% - var(--scroll-fade-e, 0px)),
      transparent 100%
    );
  }
  .scroll-fade-x:where([dir="rtl"], [dir="rtl"] *) {
    --scroll-fade-inline: linear-gradient(
      to left,
      transparent 0,
      #000 var(--scroll-fade-s, 0px),
      #000 calc(100% - var(--scroll-fade-e, 0px)),
      transparent 100%
    );
  }
  .scroll-fade-x {
    -webkit-mask-image: var(--scroll-fade-mask, var(--scroll-fade-inline));
    -webkit-mask-image: var(--scroll-fade-mask, var(--scroll-fade-inline));
    -webkit-mask-image: var(--scroll-fade-mask, var(--scroll-fade-inline));
    -webkit-mask-image: var(--scroll-fade-mask, var(--scroll-fade-inline));
    mask-image: var(--scroll-fade-mask, var(--scroll-fade-inline));
    -webkit-mask-composite: source-in;
    -webkit-mask-composite: source-in;
    -webkit-mask-composite: source-in;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
  }
  @supports (animation-timeline: scroll()) {
    .scroll-fade-x {
      animation:
        1ms ease-in-out scroll-fade-reveal-s,
        1ms ease-in-out scroll-fade-reveal-e;
      animation-timeline: scroll(self inline), scroll(self inline);
      animation-range:
        0 var(--scroll-fade-reveal, calc(var(--spacing) * 24)),
        calc(100% - var(--scroll-fade-reveal, calc(var(--spacing) * 24))) 100%;
      animation-fill-mode: both;
    }
  }
  @supports not (animation-timeline: scroll()) {
    .scroll-fade-x {
      --scroll-fade-s: var(--_scroll-fade-size-s);
      --scroll-fade-e: var(--_scroll-fade-size-e);
    }
  }
  .scroll-fade-b {
    --_scroll-fade-size-b: var(
      --scroll-fade-b-size,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
    --scroll-fade-mask: linear-gradient(
      to bottom,
      #000 0,
      #000 calc(100% - var(--scroll-fade-b, 0px)),
      transparent 100%
    );
    -webkit-mask-image: var(--scroll-fade-mask);
    -webkit-mask-image: var(--scroll-fade-mask);
    -webkit-mask-image: var(--scroll-fade-mask);
    -webkit-mask-image: var(--scroll-fade-mask);
    mask-image: var(--scroll-fade-mask);
    -webkit-mask-composite: source-in;
    -webkit-mask-composite: source-in;
    -webkit-mask-composite: source-in;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
  }
  @supports (animation-timeline: scroll()) {
    .scroll-fade-b {
      animation: 1ms ease-in-out scroll-fade-reveal-b;
      animation-timeline: scroll(self y);
      animation-range: calc(
          100% - var(--scroll-fade-reveal, calc(var(--spacing) * 24))
        )
        100%;
      animation-fill-mode: both;
    }
  }
  @supports not (animation-timeline: scroll()) {
    .scroll-fade-b {
      --scroll-fade-b: var(--_scroll-fade-size-b);
    }
  }
  .animate-caret-blink {
    animation: 1.25s ease-out infinite caret-blink;
  }
  .animate-in {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-text {
    cursor: text;
  }
  .touch-none {
    touch-action: none;
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .snap-x {
    scroll-snap-type: x var(--tw-scroll-snap-strictness);
  }
  .snap-mandatory {
    --tw-scroll-snap-strictness: mandatory;
  }
  .scroll-my-1 {
    scroll-margin-block: calc(var(--spacing) * 1);
  }
  .scroll-px-1 {
    scroll-padding-inline: calc(var(--spacing) * 1);
  }
  .scroll-py-1 {
    scroll-padding-block: calc(var(--spacing) * 1);
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: none;
  }
  .appearance-none {
    appearance: none;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .grid-cols-\[0_1fr\] {
    grid-template-columns: 0 1fr;
  }
  .grid-rows-\[auto_1fr\] {
    grid-template-rows: auto 1fr;
  }
  .grid-rows-\[auto_auto\] {
    grid-template-rows: auto auto;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .place-content-center {
    place-content: center;
  }
  .place-items-center {
    place-items: center;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .justify-items-start {
    justify-items: start;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-\[--spacing\(var\(--gap\)\)\] {
    gap: calc(var(--spacing) * var(--gap));
  }
  :where(.-space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(
      calc(var(--spacing) * -2) * var(--tw-space-x-reverse)
    );
    margin-inline-end: calc(
      calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse))
    );
  }
  .gap-y-0\.5 {
    row-gap: calc(var(--spacing) * 0.5);
  }
  .self-end {
    align-self: flex-end;
  }
  .self-start {
    align-self: flex-start;
  }
  .self-stretch {
    align-self: stretch;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overscroll-contain {
    overscroll-behavior: contain;
  }
  .overscroll-x-contain {
    overscroll-behavior-x: contain;
  }
  .rounded-\[2px\] {
    border-radius: 2px;
  }
  .rounded-\[4px\] {
    border-radius: 4px;
  }
  .rounded-\[calc\(var\(--radius\)-5px\)\] {
    border-radius: calc(var(--radius) - 5px);
  }
  .rounded-\[inherit\] {
    border-radius: inherit;
  }
  .rounded-full {
    border-radius: 3.40282e38px;
  }
  .rounded-lg {
    border-radius: 18px;
  }
  .rounded-md {
    border-radius: 14px;
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: 10px;
  }
  .rounded-xl {
    border-radius: 22px;
  }
  .rounded-xs {
    border-radius: var(--radius-xs);
  }
  .rounded-l-md {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .rounded-tl-sm {
    border-top-left-radius: 10px;
  }
  .rounded-r-md {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0;
  }
  .border-\[1\.5px\] {
    border-style: var(--tw-border-style);
    border-width: 1.5px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-\(--color-border\) {
    border-color: var(--color-border);
  }
  .border-border,
  .border-border\/50 {
    border-color: var(--border);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .border-border\/50 {
      border-color: color-mix(in oklab, var(--border) 50%, transparent);
    }
  }
  .border-input {
    border-color: var(--input);
  }
  .border-primary {
    border-color: var(--primary);
  }
  .border-transparent {
    border-color: #0000;
  }
  .border-t-transparent {
    border-top-color: #0000;
  }
  .border-l-transparent {
    border-left-color: #0000;
  }
  .bg-\(--color-bg\) {
    background-color: var(--color-bg);
  }
  .bg-\[Canvas\] {
    background-color: canvas;
  }
  .bg-accent {
    background-color: var(--accent);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-black\/50 {
    background-color: #00000080;
  }
  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/50 {
      background-color: color-mix(
        in oklab,
        var(--color-black) 50%,
        transparent
      );
    }
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-destructive {
    background-color: var(--destructive);
  }
  .bg-foreground {
    background-color: var(--foreground);
  }
  .bg-input {
    background-color: var(--input);
  }
  .bg-muted,
  .bg-muted\/50 {
    background-color: var(--muted);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .bg-muted\/50 {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }
  .bg-popover {
    background-color: var(--popover);
  }
  .bg-primary,
  .bg-primary\/20 {
    background-color: var(--primary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary\/20 {
      background-color: color-mix(in oklab, var(--primary) 20%, transparent);
    }
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-transparent {
    background-color: #0000;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .fill-current {
    fill: currentColor;
  }
  .fill-foreground {
    fill: var(--foreground);
  }
  .fill-primary {
    fill: var(--primary);
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-\[3px\] {
    padding: 3px;
  }
  .p-px {
    padding: 1px;
  }
  .px-\(--cell-size\) {
    padding-inline: var(--cell-size);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .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-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pr-1 {
    padding-right: calc(var(--spacing) * 1);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-2\.5 {
    padding-right: calc(var(--spacing) * 2.5);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-8 {
    padding-right: calc(var(--spacing) * 8);
  }
  .pr-9 {
    padding-right: calc(var(--spacing) * 9);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-8 {
    padding-left: calc(var(--spacing) * 8);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .align-middle {
    vertical-align: middle;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-sans {
    font-family:
      Helvetica Neue,
      Helvetica,
      Arial,
      sans-serif;
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-sm\/relaxed {
    font-size: var(--text-sm);
    line-height: var(--leading-relaxed);
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[0\.8rem\] {
    font-size: 0.8rem;
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .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-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .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);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .text-balance {
    text-wrap: balance;
  }
  .break-words,
  .wrap-break-word {
    overflow-wrap: break-word;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-\[CanvasText\] {
    color: canvastext;
  }
  .text-accent-foreground {
    color: var(--accent-foreground);
  }
  .text-background {
    color: var(--background);
  }
  .text-card-foreground {
    color: var(--card-foreground);
  }
  .text-current {
    color: currentColor;
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground,
  .text-foreground\/60 {
    color: var(--foreground);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .text-foreground\/60 {
      color: color-mix(in oklab, var(--foreground) 60%, transparent);
    }
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-popover-foreground {
    color: var(--popover-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
      var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
      var(--tw-numeric-fraction,);
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .opacity-0 {
    opacity: 0;
  }
  .opacity-50 {
    opacity: 0.5;
  }
  .opacity-60 {
    opacity: 0.6;
  }
  .opacity-70 {
    opacity: 0.7;
  }
  .shadow {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0_0_0_1px_var\(--sidebar-border\)\] {
    --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-border));
    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, #0000001a),
      0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow:
      0 4px 6px -1px var(--tw-shadow-color, #0000001a),
      0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    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, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow:
      0 20px 25px -5px var(--tw-shadow-color, #0000001a),
      0 8px 10px -6px var(--tw-shadow-color, #0000001a);
    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, #0000000d);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-0 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(0px + 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);
  }
  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(1px + 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);
  }
  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + 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);
  }
  .ring-3 {
    --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);
  }
  .ring-background {
    --tw-ring-color: var(--background);
  }
  .ring-card {
    --tw-ring-color: var(--card);
  }
  .ring-foreground\/10 {
    --tw-ring-color: var(--foreground);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .ring-foreground\/10 {
      --tw-ring-color: color-mix(in oklab, var(--foreground) 10%, transparent);
    }
  }
  .ring-ring\/50 {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .ring-ring\/50 {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .ring-offset-background {
    --tw-ring-offset-color: var(--background);
  }
  .outline-hidden {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .outline-hidden {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
      var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
      var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property:
      color,
      background-color,
      border-color,
      outline-color,
      text-decoration-color,
      fill,
      stroke,
      --tw-gradient-from,
      --tw-gradient-via,
      --tw-gradient-to,
      opacity,
      box-shadow,
      transform,
      translate,
      scale,
      rotate,
      filter,
      -webkit-backdrop-filter,
      backdrop-filter,
      display,
      content-visibility,
      overlay,
      pointer-events;
    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-\[left\,right\,width\] {
    transition-property: left, right, width;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[margin\,opacity\] {
    transition-property: margin, opacity;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[translate\,scale\,opacity\] {
    transition-property: translate, scale, opacity;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[width\,height\,padding\] {
    transition-property: width, height, padding;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[width\] {
    transition-property: width;
    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-opacity {
    transition-property: opacity;
    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-transform {
    transition-property: transform, translate, scale, rotate;
    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-100 {
    --tw-duration: 0.1s;
    transition-duration: 0.1s;
  }
  .duration-200 {
    --tw-duration: 0.2s;
    transition-duration: 0.2s;
  }
  .duration-300 {
    --tw-duration: 0.3s;
    transition-duration: 0.3s;
  }
  .duration-1000 {
    --tw-duration: 1s;
    transition-duration: 1s;
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .ease-linear {
    --tw-ease: linear;
    transition-timing-function: linear;
  }
  .contain-content {
    contain: content;
  }
  .fade-in-0 {
    --tw-enter-opacity: 0;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .zoom-in-95 {
    --tw-enter-scale: 0.95;
  }
  .\[--cell-size\:--spacing\(8\)\] {
    --cell-size: calc(var(--spacing) * 8);
  }
  .\[contain-intrinsic-size\:auto_10rem\] {
    contain-intrinsic-size: auto 10rem;
  }
  .\[content-visibility\:auto\] {
    content-visibility: auto;
  }
  .paused {
    animation-play-state: paused;
  }
  .running {
    animation-play-state: running;
  }
  .scrollbar-thin {
    scrollbar-width: thin;
  }
  .group-focus-within\/menu-item\:opacity-100:is(
    :where(.group\/menu-item):focus-within *
  ) {
    opacity: 1;
  }
  @media (hover: hover) {
    .group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *) {
      opacity: 1;
    }
  }
  .group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(
    :where(.group\/menu-item):has([data-sidebar="menu-action"]) *
  ) {
    padding-right: calc(var(--spacing) * 8);
  }
  .group-has-data-\[size\=lg\]\/avatar-group\:size-10:is(
    :where(.group\/avatar-group):has([data-size="lg"]) *
  ) {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .group-has-data-\[size\=sm\]\/avatar-group\:size-6:is(
    :where(.group\/avatar-group):has([data-size="sm"]) *
  ) {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .group-has-data-\[slot\=combobox-clear\]\/input-group\:hidden:is(
    :where(.group\/input-group):has([data-slot="combobox-clear"]) *
  ) {
    display: none;
  }
  .group-has-data-\[slot\=message-footer\]\/message\:-translate-y-8:is(
    :where(.group\/message):has([data-slot="message-footer"]) *
  ) {
    --tw-translate-y: calc(var(--spacing) * -8);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-has-data-\[variant\=ghost\]\/message\:px-0:is(
    :where(.group\/message):has([data-variant="ghost"]) *
  ) {
    padding-inline: calc(var(--spacing) * 0);
  }
  .group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(
    :where(.group\/field):has([data-orientation="horizontal"]) *
  ) {
    text-wrap: balance;
  }
  .group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(
      :where(.group\/item):has([data-slot="item-description"]) *
    ) {
    --tw-translate-y: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(
    :where(.group\/item):has([data-slot="item-description"]) *
  ) {
    align-self: flex-start;
  }
  .group-has-\[\>input\]\/input-group\:pt-2\.5:is(
      :where(.group\/input-group):has(> input) *
    ) {
    padding-top: calc(var(--spacing) * 2.5);
  }
  .group-has-\[\>input\]\/input-group\:pb-2\.5:is(
      :where(.group\/input-group):has(> input) *
    ) {
    padding-bottom: calc(var(--spacing) * 2.5);
  }
  .group-data-empty\/combobox-content\:flex:is(
    :where(.group\/combobox-content)[data-empty] *
  ) {
    display: flex;
  }
  .group-data-\[align\=end\]\/bubble\:self-end:is(
    :where(.group\/bubble)[data-align="end"] *
  ) {
    align-self: flex-end;
  }
  .group-data-\[align\=end\]\/message\:justify-end:is(
    :where(.group\/message)[data-align="end"] *
  ) {
    justify-content: flex-end;
  }
  .group-data-\[align\=end\]\/message\:self-end:is(
    :where(.group\/message)[data-align="end"] *
  ) {
    align-self: flex-end;
  }
  .group-data-\[collapsible\=icon\]\:-mt-8:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    margin-top: calc(var(--spacing) * -8);
  }
  .group-data-\[collapsible\=icon\]\:hidden:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    display: none;
  }
  .group-data-\[collapsible\=icon\]\:size-8\!:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    width: calc(var(--spacing) * 8) !important;
    height: calc(var(--spacing) * 8) !important;
  }
  .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    width: var(--sidebar-width-icon);
  }
  .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    width: calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)));
  }
  .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    width: calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px);
  }
  .group-data-\[collapsible\=icon\]\:overflow-hidden:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    overflow: hidden;
  }
  .group-data-\[collapsible\=icon\]\:p-0\!:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    padding: calc(var(--spacing) * 0) !important;
  }
  .group-data-\[collapsible\=icon\]\:p-2\!:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    padding: calc(var(--spacing) * 2) !important;
  }
  .group-data-\[collapsible\=icon\]\:opacity-0:is(
    :where(.group)[data-collapsible="icon"] *
  ) {
    opacity: 0;
  }
  .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(
    :where(.group)[data-collapsible="offcanvas"] *
  ) {
    right: calc(var(--sidebar-width) * -1);
  }
  .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(
    :where(.group)[data-collapsible="offcanvas"] *
  ) {
    left: calc(var(--sidebar-width) * -1);
  }
  .group-data-\[collapsible\=offcanvas\]\:w-0:is(
    :where(.group)[data-collapsible="offcanvas"] *
  ) {
    width: calc(var(--spacing) * 0);
  }
  .group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(
    :where(.group)[data-collapsible="offcanvas"] *
  ) {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-data-\[disabled\=true\]\:pointer-events-none:is(
    :where(.group)[data-disabled="true"] *
  ) {
    pointer-events: none;
  }
  .group-data-\[disabled\=true\]\:opacity-50:is(
    :where(.group)[data-disabled="true"] *
  ),
  .group-data-\[disabled\=true\]\/field\:opacity-50:is(
    :where(.group\/field)[data-disabled="true"] *
  ),
  .group-data-\[disabled\=true\]\/input-group\:opacity-50:is(
    :where(.group\/input-group)[data-disabled="true"] *
  ) {
    opacity: 0.5;
  }
  .group-data-\[focused\=true\]\/day\:relative:is(
    :where(.group\/day)[data-focused="true"] *
  ) {
    position: relative;
  }
  .group-data-\[focused\=true\]\/day\:z-10:is(
    :where(.group\/day)[data-focused="true"] *
  ) {
    z-index: 10;
  }
  .group-data-\[focused\=true\]\/day\:border-ring:is(
    :where(.group\/day)[data-focused="true"] *
  ) {
    border-color: var(--ring);
  }
  .group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(
    :where(.group\/day)[data-focused="true"] *
  ) {
    --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);
  }
  .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(
    :where(.group\/day)[data-focused="true"] *
  ) {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(
      :where(.group\/day)[data-focused="true"] *
    ) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(
    :where(.group\/tabs)[data-orientation="horizontal"] *
  ) {
    height: calc(var(--spacing) * 9);
  }
  .group-data-\[orientation\=vertical\]\/attachment\:absolute:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    position: absolute;
  }
  .group-data-\[orientation\=vertical\]\/attachment\:top-3:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    top: calc(var(--spacing) * 3);
  }
  .group-data-\[orientation\=vertical\]\/attachment\:right-3:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    right: calc(var(--spacing) * 3);
  }
  .group-data-\[orientation\=vertical\]\/attachment\:w-full:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    width: 100%;
  }
  .group-data-\[orientation\=vertical\]\/attachment\:gap-1:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    gap: calc(var(--spacing) * 1);
  }
  .group-data-\[orientation\=vertical\]\/attachment\:px-1:is(
    :where(.group\/attachment)[data-orientation="vertical"] *
  ) {
    padding-inline: calc(var(--spacing) * 1);
  }
  .group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(
    :where(.group\/tabs)[data-orientation="vertical"] *
  ) {
    height: fit-content;
  }
  .group-data-\[orientation\=vertical\]\/tabs\:w-full:is(
    :where(.group\/tabs)[data-orientation="vertical"] *
  ) {
    width: 100%;
  }
  .group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(
    :where(.group\/tabs)[data-orientation="vertical"] *
  ) {
    flex-direction: column;
  }
  .group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(
    :where(.group\/tabs)[data-orientation="vertical"] *
  ) {
    justify-content: flex-start;
  }
  .group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side="left"] *) {
    right: calc(var(--spacing) * -4);
  }
  .group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side="left"] *) {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side="right"] *) {
    left: calc(var(--spacing) * 0);
  }
  .group-data-\[side\=right\]\:rotate-180:is(
    :where(.group)[data-side="right"] *
  ) {
    rotate: 180deg;
  }
  .group-data-\[side\=right\]\:border-l:is(
    :where(.group)[data-side="right"] *
  ) {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .group-data-\[size\=default\]\/avatar\:size-2\.5:is(
      :where(.group\/avatar)[data-size="default"] *
    ) {
    width: calc(var(--spacing) * 2.5);
    height: calc(var(--spacing) * 2.5);
  }
  .group-data-\[size\=default\]\/switch\:size-4:is(
    :where(.group\/switch)[data-size="default"] *
  ) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .group-data-\[size\=lg\]\/avatar\:size-3:is(
    :where(.group\/avatar)[data-size="lg"] *
  ) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(
    :where(.group\/alert-dialog-content)[data-size="sm"] *
  ) {
    display: grid;
  }
  .group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(
    :where(.group\/alert-dialog-content)[data-size="sm"] *
  ) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .group-data-\[size\=sm\]\/attachment\:w-8:is(
    :where(.group\/attachment)[data-size="sm"] *
  ) {
    width: calc(var(--spacing) * 8);
  }
  .group-data-\[size\=sm\]\/avatar\:size-2:is(
    :where(.group\/avatar)[data-size="sm"] *
  ) {
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
  }
  .group-data-\[size\=sm\]\/avatar\:text-xs:is(
    :where(.group\/avatar)[data-size="sm"] *
  ) {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .group-data-\[size\=sm\]\/switch\:size-3:is(
    :where(.group\/switch)[data-size="sm"] *
  ) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .group-data-\[size\=xs\]\/attachment\:w-7:is(
    :where(.group\/attachment)[data-size="xs"] *
  ) {
    width: calc(var(--spacing) * 7);
  }
  .group-data-\[size\=xs\]\/attachment\:rounded-md:is(
    :where(.group\/attachment)[data-size="xs"] *
  ) {
    border-radius: 14px;
  }
  .group-data-\[state\=done\]\/attachment\:opacity-100:is(
    :where(.group\/attachment)[data-state="done"] *
  ) {
    opacity: 1;
  }
  .group-data-\[state\=error\]\/attachment\:bg-destructive\/10:is(
    :where(.group\/attachment)[data-state="error"] *
  ) {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .group-data-\[state\=error\]\/attachment\:bg-destructive\/10:is(
      :where(.group\/attachment)[data-state="error"] *
    ) {
      background-color: color-mix(
        in oklab,
        var(--destructive) 10%,
        transparent
      );
    }
  }
  .group-data-\[state\=error\]\/attachment\:text-destructive:is(
    :where(.group\/attachment)[data-state="error"] *
  ),
  .group-data-\[state\=error\]\/attachment\:text-destructive\/80:is(
    :where(.group\/attachment)[data-state="error"] *
  ) {
    color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .group-data-\[state\=error\]\/attachment\:text-destructive\/80:is(
      :where(.group\/attachment)[data-state="error"] *
    ) {
      color: color-mix(in oklab, var(--destructive) 80%, transparent);
    }
  }
  .group-data-\[state\=idle\]\/attachment\:opacity-100:is(
    :where(.group\/attachment)[data-state="idle"] *
  ) {
    opacity: 1;
  }
  .group-data-\[state\=open\]\:rotate-180:is(
    :where(.group)[data-state="open"] *
  ) {
    rotate: 180deg;
  }
  .group-data-\[state\=processing\]\/attachment\:shimmer:is(
    :where(.group\/attachment)[data-state="processing"] *
  ) {
    --_spread: var(--shimmer-spread, calc(3ch + 40px));
    --_base: currentColor;
    --_highlight: var(
      --shimmer-color,
      oklch(from currentColor l c h / calc(alpha * 0.2))
    );
    background-image: var(
      --shimmer-image,
      linear-gradient(
        calc(90deg + var(--shimmer-angle)),
        var(--_base) calc(50% - var(--_spread)),
        var(--_highlight) calc(50% - var(--_spread) * 0.5),
        var(--_highlight) 50%,
        var(--_highlight) calc(50% + var(--_spread) * 0.5),
        var(--_base) calc(50% + var(--_spread))
      )
    );
  }
  @supports (color: color-mix(in lab, red, red)) {
    .group-data-\[state\=processing\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="processing"] *
    ) {
      background-image: var(
        --shimmer-image,
        linear-gradient(
          calc(90deg + var(--shimmer-angle)),
          var(--_base) calc(50% - var(--_spread)),
          color-mix(in oklch, var(--_highlight), var(--_base) 50%)
            calc(50% - var(--_spread) * 0.5),
          var(--_highlight) 50%,
          color-mix(in oklch, var(--_highlight), var(--_base) 50%)
            calc(50% + var(--_spread) * 0.5),
          var(--_base) calc(50% + var(--_spread))
        )
      );
    }
  }
  .group-data-\[state\=processing\]\/attachment\:shimmer:is(
    :where(.group\/attachment)[data-state="processing"] *
  ) {
    background-repeat: no-repeat;
    background-size: calc(200% + var(--_spread) * 2) 100%;
    -webkit-text-fill-color: var(--shimmer-text-fill, transparent);
    animation: tw-shimmer var(--shimmer-duration, 2s) linear infinite;
    background-position: 0 0;
    -webkit-background-clip: text;
    background-clip: text;
  }
  @media (prefers-color-scheme: dark) {
    .group-data-\[state\=processing\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="processing"] *
    ) {
      --_highlight: var(
        --shimmer-color,
        oklch(from currentColor max(0.8, calc(l + 0.4)) c h / calc(alpha + 0.4))
      );
    }
  }
  .group-data-\[state\=processing\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="processing"] *
    ):where([dir="rtl"], [dir="rtl"] *) {
    animation-direction: reverse;
  }
  .group-data-\[state\=uploading\]\/attachment\:shimmer:is(
    :where(.group\/attachment)[data-state="uploading"] *
  ) {
    --_spread: var(--shimmer-spread, calc(3ch + 40px));
    --_base: currentColor;
    --_highlight: var(
      --shimmer-color,
      oklch(from currentColor l c h / calc(alpha * 0.2))
    );
    background-image: var(
      --shimmer-image,
      linear-gradient(
        calc(90deg + var(--shimmer-angle)),
        var(--_base) calc(50% - var(--_spread)),
        var(--_highlight) calc(50% - var(--_spread) * 0.5),
        var(--_highlight) 50%,
        var(--_highlight) calc(50% + var(--_spread) * 0.5),
        var(--_base) calc(50% + var(--_spread))
      )
    );
  }
  @supports (color: color-mix(in lab, red, red)) {
    .group-data-\[state\=uploading\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="uploading"] *
    ) {
      background-image: var(
        --shimmer-image,
        linear-gradient(
          calc(90deg + var(--shimmer-angle)),
          var(--_base) calc(50% - var(--_spread)),
          color-mix(in oklch, var(--_highlight), var(--_base) 50%)
            calc(50% - var(--_spread) * 0.5),
          var(--_highlight) 50%,
          color-mix(in oklch, var(--_highlight), var(--_base) 50%)
            calc(50% + var(--_spread) * 0.5),
          var(--_base) calc(50% + var(--_spread))
        )
      );
    }
  }
  .group-data-\[state\=uploading\]\/attachment\:shimmer:is(
    :where(.group\/attachment)[data-state="uploading"] *
  ) {
    background-repeat: no-repeat;
    background-size: calc(200% + var(--_spread) * 2) 100%;
    -webkit-text-fill-color: var(--shimmer-text-fill, transparent);
    animation: tw-shimmer var(--shimmer-duration, 2s) linear infinite;
    background-position: 0 0;
    -webkit-background-clip: text;
    background-clip: text;
  }
  @media (prefers-color-scheme: dark) {
    .group-data-\[state\=uploading\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="uploading"] *
    ) {
      --_highlight: var(
        --shimmer-color,
        oklch(from currentColor max(0.8, calc(l + 0.4)) c h / calc(alpha + 0.4))
      );
    }
  }
  .group-data-\[state\=uploading\]\/attachment\:shimmer:is(
      :where(.group\/attachment)[data-state="uploading"] *
    ):where([dir="rtl"], [dir="rtl"] *) {
    animation-direction: reverse;
  }
  .group-data-\[variant\=floating\]\:rounded-lg:is(
    :where(.group)[data-variant="floating"] *
  ) {
    border-radius: 18px;
  }
  .group-data-\[variant\=floating\]\:border:is(
    :where(.group)[data-variant="floating"] *
  ) {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .group-data-\[variant\=floating\]\:shadow-sm:is(
    :where(.group)[data-variant="floating"] *
  ) {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(
    :where(.group\/tabs-list)[data-variant="line"] *
  ) {
    background-color: #0000;
  }
  .group-data-\[variant\=outline\]\/field-group\:-mb-2:is(
    :where(.group\/field-group)[data-variant="outline"] *
  ) {
    margin-bottom: calc(var(--spacing) * -2);
  }
  .group-data-\[variant\=separator\]\/marker\:flex-none:is(
    :where(.group\/marker)[data-variant="separator"] *
  ) {
    flex: none;
  }
  .group-data-\[variant\=separator\]\/marker\:text-center:is(
    :where(.group\/marker)[data-variant="separator"] *
  ) {
    text-align: center;
  }
  .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(
    :where(.group\/drawer-content)[data-vaul-drawer-direction="bottom"] *
  ) {
    display: block;
  }
  .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(
    :where(.group\/drawer-content)[data-vaul-drawer-direction="bottom"] *
  ),
  .group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(
    :where(.group\/drawer-content)[data-vaul-drawer-direction="top"] *
  ) {
    text-align: center;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    top: 100%;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    overflow: hidden;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    border-radius: 14px;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:border:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    background-color: var(--popover);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    color: var(--popover-foreground);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(
    :where(.group\/navigation-menu)[data-viewport="false"] *
  ) {
    --tw-duration: 0.2s;
    transition-duration: 0.2s;
  }
  .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
    cursor: not-allowed;
  }
  .peer-disabled\:opacity-50:is(:where(.peer):disabled ~ *) {
    opacity: 0.5;
  }
  .peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(
      :where(.peer\/menu-button)[data-size="default"] ~ *
    ) {
    top: calc(var(--spacing) * 1.5);
  }
  .peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(
      :where(.peer\/menu-button)[data-size="lg"] ~ *
    ) {
    top: calc(var(--spacing) * 2.5);
  }
  .peer-data-\[size\=sm\]\/menu-button\:top-1:is(
    :where(.peer\/menu-button)[data-size="sm"] ~ *
  ) {
    top: calc(var(--spacing) * 1);
  }
  .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: 0;
  }
  .file\:bg-transparent::file-selector-button {
    background-color: #0000;
  }
  .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);
  }
  .before\:mr-1:before {
    content: var(--tw-content);
    margin-right: calc(var(--spacing) * 1);
  }
  .before\:h-px:before {
    content: var(--tw-content);
    height: 1px;
  }
  .before\:min-w-0:before {
    content: var(--tw-content);
    min-width: calc(var(--spacing) * 0);
  }
  .before\:flex-1:before {
    content: var(--tw-content);
    flex: 1;
  }
  .before\:bg-border:before {
    content: var(--tw-content);
    background-color: var(--border);
  }
  .after\:absolute:after {
    content: var(--tw-content);
    position: absolute;
  }
  .after\:-inset-2:after {
    content: var(--tw-content);
    inset: calc(var(--spacing) * -2);
  }
  .after\:inset-y-0:after {
    content: var(--tw-content);
    inset-block: calc(var(--spacing) * 0);
  }
  .after\:left-1\/2:after {
    content: var(--tw-content);
    left: 50%;
  }
  .after\:ml-1:after {
    content: var(--tw-content);
    margin-left: calc(var(--spacing) * 1);
  }
  .after\:h-px:after {
    content: var(--tw-content);
    height: 1px;
  }
  .after\:w-1:after {
    content: var(--tw-content);
    width: calc(var(--spacing) * 1);
  }
  .after\:w-\[2px\]:after {
    content: var(--tw-content);
    width: 2px;
  }
  .after\:min-w-0:after {
    content: var(--tw-content);
    min-width: calc(var(--spacing) * 0);
  }
  .after\:flex-1:after {
    content: var(--tw-content);
    flex: 1;
  }
  .after\:-translate-x-1\/2:after {
    content: var(--tw-content);
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .after\:bg-border:after {
    content: var(--tw-content);
    background-color: var(--border);
  }
  .after\:bg-foreground:after {
    content: var(--tw-content);
    background-color: var(--foreground);
  }
  .after\:opacity-0:after {
    content: var(--tw-content);
    opacity: 0;
  }
  .after\:transition-opacity:after {
    content: var(--tw-content);
    transition-property: opacity;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(
      :where(.group)[data-collapsible="offcanvas"] *
    ):after {
    content: var(--tw-content);
    left: 100%;
  }
  .group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(
      :where(.group\/tabs)[data-orientation="horizontal"] *
    ):after {
    content: var(--tw-content);
    inset-inline: calc(var(--spacing) * 0);
  }
  .group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(
      :where(.group\/tabs)[data-orientation="horizontal"] *
    ):after {
    content: var(--tw-content);
    bottom: -5px;
  }
  .group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(
      :where(.group\/tabs)[data-orientation="horizontal"] *
    ):after {
    content: var(--tw-content);
    height: calc(var(--spacing) * 0.5);
  }
  .group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(
      :where(.group\/tabs)[data-orientation="vertical"] *
    ):after {
    content: var(--tw-content);
    inset-block: calc(var(--spacing) * 0);
  }
  .group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(
      :where(.group\/tabs)[data-orientation="vertical"] *
    ):after {
    content: var(--tw-content);
    right: calc(var(--spacing) * -1);
  }
  .group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(
      :where(.group\/tabs)[data-orientation="vertical"] *
    ):after {
    content: var(--tw-content);
    width: calc(var(--spacing) * 0.5);
  }
  .first\:rounded-l-md:first-child {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .first\:border-l:first-child {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .last\:mt-0:last-child {
    margin-top: calc(var(--spacing) * 0);
  }
  .last\:rounded-r-md:last-child {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .last\:border-b-0:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }
  .focus-within\:border-ring:focus-within {
    border-color: var(--ring);
  }
  .focus-within\:ring-1:focus-within {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(1px + 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-within\:ring-\[3px\]:focus-within {
    --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-within\:ring-ring\/50:focus-within {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .focus-within\:ring-ring\/50:focus-within {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  @media (hover: hover) {
    .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:hover,
    .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\:text-foreground:hover {
      color: var(--foreground);
    }
    .hover\:text-muted-foreground:hover {
      color: var(--muted-foreground);
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:opacity-100:hover {
      opacity: 1;
    }
    .hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover {
      --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-accent));
      box-shadow:
        var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
        var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:ring-4:hover {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
        calc(4px + 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\:z-10:focus {
    z-index: 10;
  }
  .focus\:bg-accent:focus {
    background-color: var(--accent);
  }
  .focus\:text-accent-foreground:focus {
    color: var(--accent-foreground);
  }
  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + 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\:ring-ring:focus {
    --tw-ring-color: var(--ring);
  }
  .focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
      var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .focus\:outline-hidden:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .focus\:outline-hidden:focus {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .focus-visible\:z-10:focus-visible {
    z-index: 10;
  }
  .focus-visible\:border-ring:focus-visible {
    border-color: var(--ring);
  }
  .focus-visible\:ring-0:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(0px + 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-1:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(1px + 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-2:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + 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-4:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(4px + 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-\[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)) {
    .focus-visible\:ring-destructive\/20:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .focus-visible\:ring-ring:focus-visible,
  .focus-visible\:ring-ring\/50:focus-visible {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .focus-visible\:ring-ring\/50:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .focus-visible\:ring-offset-1:focus-visible {
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
      var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .focus-visible\:outline-hidden:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .focus-visible\:outline-hidden:focus-visible {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .focus-visible\:outline-1:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .focus-visible\:outline-ring:focus-visible {
    outline-color: var(--ring);
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:opacity-50:disabled {
    opacity: 0.5;
  }
  :where([data-side="left"]) .in-data-\[side\=left\]\:cursor-w-resize {
    cursor: w-resize;
  }
  :where([data-side="right"]) .in-data-\[side\=right\]\:cursor-e-resize {
    cursor: e-resize;
  }
  .has-focus\:border-ring:has(:focus) {
    border-color: var(--ring);
  }
  .has-focus\:ring-\[3px\]:has(:focus) {
    --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);
  }
  .has-focus\:ring-ring\/50:has(:focus) {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-focus\:ring-ring\/50:has(:focus) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .has-disabled\:pointer-events-none:has(:disabled) {
    pointer-events: none;
  }
  .has-disabled\:cursor-not-allowed:has(:disabled) {
    cursor: not-allowed;
  }
  .has-disabled\:opacity-50:has(:disabled) {
    opacity: 0.5;
  }
  .has-aria-expanded\:bg-muted\/50:has([aria-expanded="true"]) {
    background-color: var(--muted);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-aria-expanded\:bg-muted\/50:has([aria-expanded="true"]) {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }
  .has-aria-invalid\:border-destructive:has([aria-invalid="true"]) {
    border-color: var(--destructive);
  }
  .has-aria-invalid\:ring-\[3px\]:has([aria-invalid="true"]) {
    --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);
  }
  .has-aria-invalid\:ring-destructive\/20:has([aria-invalid="true"]) {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-aria-invalid\:ring-destructive\/20:has([aria-invalid="true"]) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has(
    [data-slot="alert-dialog-media"]
  ) {
    grid-template-rows: auto auto 1fr;
  }
  .has-data-\[slot\=alert-dialog-media\]\:gap-x-6:has(
    [data-slot="alert-dialog-media"]
  ) {
    column-gap: calc(var(--spacing) * 6);
  }
  .has-data-\[slot\=attachment-content\]\:w-30:has(
    [data-slot="attachment-content"]
  ) {
    width: calc(var(--spacing) * 30);
  }
  .has-data-\[slot\=attachment-content\]\:px-1\.5:has(
      [data-slot="attachment-content"]
    ) {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .has-data-\[slot\=attachment-content\]\:px-2:has(
    [data-slot="attachment-content"]
  ) {
    padding-inline: calc(var(--spacing) * 2);
  }
  .has-data-\[slot\=attachment-content\]\:px-2\.5:has(
      [data-slot="attachment-content"]
    ) {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .has-data-\[slot\=attachment-content\]\:py-1:has(
    [data-slot="attachment-content"]
  ) {
    padding-block: calc(var(--spacing) * 1);
  }
  .has-data-\[slot\=attachment-content\]\:py-1\.5:has(
      [data-slot="attachment-content"]
    ) {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .has-data-\[slot\=attachment-content\]\:py-2:has(
    [data-slot="attachment-content"]
  ) {
    padding-block: calc(var(--spacing) * 2);
  }
  .has-data-\[slot\=attachment-media\]\:p-1:has(
    [data-slot="attachment-media"]
  ) {
    padding: calc(var(--spacing) * 1);
  }
  .has-data-\[slot\=attachment-media\]\:p-1\.5:has(
      [data-slot="attachment-media"]
    ) {
    padding: calc(var(--spacing) * 1.5);
  }
  .has-data-\[slot\=attachment-media\]\:p-2:has(
    [data-slot="attachment-media"]
  ) {
    padding: calc(var(--spacing) * 2);
  }
  .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has(
    [data-slot="card-action"]
  ) {
    grid-template-columns: 1fr auto;
  }
  .has-data-\[slot\=combobox-chip\]\:px-1\.5:has([data-slot="combobox-chip"]) {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .has-data-\[slot\=combobox-chip-remove\]\:pr-0:has(
    [data-slot="combobox-chip-remove"]
  ) {
    padding-right: calc(var(--spacing) * 0);
  }
  .has-data-\[state\=checked\]\:border-primary:has([data-state="checked"]) {
    border-color: var(--primary);
  }
  .has-data-\[state\=checked\]\:bg-primary\/5:has([data-state="checked"]) {
    background-color: var(--primary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-data-\[state\=checked\]\:bg-primary\/5:has([data-state="checked"]) {
      background-color: color-mix(in oklab, var(--primary) 5%, transparent);
    }
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has(
    [data-slot="input-group-control"]:focus-visible
  ) {
    border-color: var(--ring);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has(
    [data-slot="input-group-control"]: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);
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has(
    [data-slot="input-group-control"]:focus-visible
  ) {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has(
      [data-slot="input-group-control"]:focus-visible
    ) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has(
    [data-slot][aria-invalid="true"]
  ) {
    border-color: var(--destructive);
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(
    [data-slot][aria-invalid="true"]
  ) {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has(
      [data-slot][aria-invalid="true"]
    ) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .has-\[button\]\:p-0:has(:is(button)) {
    padding: calc(var(--spacing) * 0);
  }
  .has-\[select\:disabled\]\:opacity-50:has(:is(select:disabled)) {
    opacity: 0.5;
  }
  .has-\[\>\[data-align\=block-end\]\]\:h-auto:has(> [data-align="block-end"]) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-end\]\]\:flex-col:has(
    > [data-align="block-end"]
  ) {
    flex-direction: column;
  }
  .has-\[\>\[data-align\=block-start\]\]\:h-auto:has(
    > [data-align="block-start"]
  ) {
    height: auto;
  }
  .has-\[\>\[data-align\=block-start\]\]\:flex-col:has(
    > [data-align="block-start"]
  ) {
    flex-direction: column;
  }
  .has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(
    > [data-slot="button-group"]
  ) {
    gap: calc(var(--spacing) * 2);
  }
  .has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(
    > [data-slot="checkbox-group"]
  ) {
    gap: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-slot\=field-content\]\]\:items-start:has(
    > [data-slot="field-content"]
  ) {
    align-items: flex-start;
  }
  .has-\[\>\[data-slot\=field\]\]\:w-full:has(> [data-slot="field"]) {
    width: 100%;
  }
  .has-\[\>\[data-slot\=field\]\]\:flex-col:has(> [data-slot="field"]) {
    flex-direction: column;
  }
  .has-\[\>\[data-slot\=field\]\]\:rounded-md:has(> [data-slot="field"]) {
    border-radius: 14px;
  }
  .has-\[\>\[data-slot\=field\]\]\:border:has(> [data-slot="field"]) {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(
    > [data-slot="radio-group"]
  ) {
    gap: calc(var(--spacing) * 3);
  }
  @media (hover: hover) {
    .has-\[\>a\,\>button\]\:hover\:bg-muted\/50:has(> a, > button):hover {
      background-color: var(--muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .has-\[\>a\,\>button\]\:hover\:bg-muted\/50:has(> a, > button):hover {
        background-color: color-mix(in oklab, var(--muted) 50%, transparent);
      }
    }
  }
  .has-\[\>button\]\:mr-\[-0\.45rem\]:has(> button) {
    margin-right: -0.45rem;
  }
  .has-\[\>button\]\:ml-\[-0\.45rem\]:has(> button) {
    margin-left: -0.45rem;
  }
  .has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(> kbd) {
    margin-right: -0.35rem;
  }
  .has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(> kbd) {
    margin-left: -0.35rem;
  }
  .has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(> svg) {
    grid-template-columns: calc(var(--spacing) * 4) 1fr;
  }
  .has-\[\>svg\]\:gap-x-3:has(> svg) {
    column-gap: calc(var(--spacing) * 3);
  }
  .has-\[\>svg\]\:p-0:has(> svg) {
    padding: calc(var(--spacing) * 0);
  }
  .has-\[\>svg\]\:px-1\.5:has(> svg) {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .has-\[\>svg\]\:px-2:has(> svg) {
    padding-inline: calc(var(--spacing) * 2);
  }
  .has-\[\>svg\]\:px-2\.5:has(> svg) {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .has-\[\>svg\]\:px-3:has(> svg) {
    padding-inline: calc(var(--spacing) * 3);
  }
  .has-\[\>svg\]\:px-4:has(> svg) {
    padding-inline: calc(var(--spacing) * 4);
  }
  .has-\[\>textarea\]\:h-auto:has(> textarea) {
    height: auto;
  }
  .aria-disabled\:pointer-events-none[aria-disabled="true"] {
    pointer-events: none;
  }
  .aria-disabled\:opacity-50[aria-disabled="true"] {
    opacity: 0.5;
  }
  .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)) {
    .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .aria-selected\:text-muted-foreground[aria-selected="true"] {
    color: var(--muted-foreground);
  }
  .aria-\[orientation\=horizontal\]\:h-px[aria-orientation="horizontal"] {
    height: 1px;
  }
  .aria-\[orientation\=horizontal\]\:w-full[aria-orientation="horizontal"] {
    width: 100%;
  }
  .aria-\[orientation\=horizontal\]\:after\:left-0[aria-orientation="horizontal"]:after {
    content: var(--tw-content);
    left: calc(var(--spacing) * 0);
  }
  .aria-\[orientation\=horizontal\]\:after\:h-1[aria-orientation="horizontal"]:after {
    content: var(--tw-content);
    height: calc(var(--spacing) * 1);
  }
  .aria-\[orientation\=horizontal\]\:after\:w-full[aria-orientation="horizontal"]:after {
    content: var(--tw-content);
    width: 100%;
  }
  .aria-\[orientation\=horizontal\]\:after\:translate-x-0[aria-orientation="horizontal"]:after {
    content: var(--tw-content);
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .aria-\[orientation\=horizontal\]\:after\:-translate-y-1\/2[aria-orientation="horizontal"]:after {
    content: var(--tw-content);
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .aria-\[orientation\=vertical\]\:flex-col[aria-orientation="vertical"] {
    flex-direction: column;
  }
  .data-autoscrolling\:scrollbar-none[data-autoscrolling] {
    scrollbar-width: none;
  }
  .data-autoscrolling\:scrollbar-none[data-autoscrolling]::-webkit-scrollbar {
    display: none;
  }
  .data-empty\:p-0[data-empty] {
    padding: calc(var(--spacing) * 0);
  }
  .data-highlighted\:bg-accent[data-highlighted] {
    background-color: var(--accent);
  }
  .data-highlighted\:text-accent-foreground[data-highlighted] {
    color: var(--accent-foreground);
  }
  .data-pressed\:bg-transparent[data-pressed] {
    background-color: #0000;
  }
  :is(
    .group-data-\[align\=end\]\/message\:\*\:data-slot\:self-end:is(
        :where(.group\/message)[data-align="end"] *
      )
      > *
  )[data-slot] {
    align-self: flex-end;
  }
  .data-\[active\=false\]\:pointer-events-none[data-active="false"] {
    pointer-events: none;
  }
  .data-\[active\=false\]\:scale-95[data-active="false"] {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .data-\[active\=false\]\:opacity-0[data-active="false"] {
    opacity: 0;
  }
  .data-\[active\=false\]\:duration-400[data-active="false"] {
    --tw-duration: 0.4s;
    transition-duration: 0.4s;
  }
  .data-\[active\=false\]\:ease-\[cubic-bezier\(0\.7\,0\,0\.84\,0\)\][data-active="false"] {
    --tw-ease: cubic-bezier(0.7, 0, 0.84, 0);
    transition-timing-function: cubic-bezier(0.7, 0, 0.84, 0);
  }
  .data-\[active\=true\]\:z-10[data-active="true"] {
    z-index: 10;
  }
  .data-\[active\=true\]\:translate-y-0[data-active="true"] {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[active\=true\]\:scale-100[data-active="true"] {
    --tw-scale-x: 100%;
    --tw-scale-y: 100%;
    --tw-scale-z: 100%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .data-\[active\=true\]\:border-ring[data-active="true"] {
    border-color: var(--ring);
  }
  .data-\[active\=true\]\:bg-accent\/50[data-active="true"] {
    background-color: var(--accent);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[active\=true\]\:bg-accent\/50[data-active="true"] {
      background-color: color-mix(in oklab, var(--accent) 50%, transparent);
    }
  }
  .data-\[active\=true\]\:font-medium[data-active="true"] {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .data-\[active\=true\]\:text-accent-foreground[data-active="true"] {
    color: var(--accent-foreground);
  }
  .data-\[active\=true\]\:opacity-100[data-active="true"] {
    opacity: 1;
  }
  .data-\[active\=true\]\:ring-\[3px\][data-active="true"] {
    --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);
  }
  .data-\[active\=true\]\:ring-ring\/50[data-active="true"] {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[active\=true\]\:ring-ring\/50[data-active="true"] {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .data-\[active\=true\]\:ease-\[cubic-bezier\(0\.23\,1\,0\.32\,1\)\][data-active="true"] {
    --tw-ease: cubic-bezier(0.23, 1, 0.32, 1);
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  @media (hover: hover) {
    .data-\[active\=true\]\:hover\:bg-accent[data-active="true"]:hover {
      background-color: var(--accent);
    }
  }
  .data-\[active\=true\]\:focus\:bg-accent[data-active="true"]:focus {
    background-color: var(--accent);
  }
  .data-\[active\=true\]\:aria-invalid\:border-destructive[data-active="true"][aria-invalid="true"] {
    border-color: var(--destructive);
  }
  .data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active="true"][aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active="true"][aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .data-\[align\=end\]\:flex-row-reverse[data-align="end"] {
    flex-direction: row-reverse;
  }
  .data-\[align\=end\]\:self-end[data-align="end"] {
    align-self: flex-end;
  }
  .data-\[chips\=true\]\:min-w-\(--anchor-width\)[data-chips="true"] {
    min-width: var(--anchor-width);
  }
  .data-\[direction\=end\]\:bottom-4[data-direction="end"] {
    bottom: calc(var(--spacing) * 4);
  }
  .data-\[direction\=end\]\:data-\[active\=false\]\:translate-y-full[data-direction="end"][data-active="false"] {
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[direction\=start\]\:top-4[data-direction="start"] {
    top: calc(var(--spacing) * 4);
  }
  .data-\[direction\=start\]\:data-\[active\=false\]\:-translate-y-full[data-direction="start"][data-active="false"] {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[disabled\]\:pointer-events-none[data-disabled] {
    pointer-events: none;
  }
  .data-\[disabled\]\:opacity-50[data-disabled] {
    opacity: 0.5;
  }
  .data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] {
    pointer-events: none;
  }
  .data-\[disabled\=true\]\:opacity-50[data-disabled="true"] {
    opacity: 0.5;
  }
  .data-\[error\=true\]\:text-destructive[data-error="true"] {
    color: var(--destructive);
  }
  .data-\[inset\]\:pl-8[data-inset] {
    padding-left: calc(var(--spacing) * 8);
  }
  .data-\[invalid\=true\]\:text-destructive[data-invalid="true"] {
    color: var(--destructive);
  }
  .data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion="from-end"] {
    --tw-enter-translate-x: calc(52 * var(--spacing));
  }
  .data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion="from-start"] {
    --tw-enter-translate-x: calc(52 * var(--spacing) * -1);
  }
  .data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion="to-end"] {
    --tw-exit-translate-x: calc(52 * var(--spacing));
  }
  .data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion="to-start"] {
    --tw-exit-translate-x: calc(52 * var(--spacing) * -1);
  }
  .data-\[motion\^\=from-\]\:animate-in[data-motion^="from-"] {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[motion\^\=from-\]\:fade-in[data-motion^="from-"] {
    --tw-enter-opacity: 0;
  }
  .data-\[motion\^\=to-\]\:animate-out[data-motion^="to-"] {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[motion\^\=to-\]\:fade-out[data-motion^="to-"] {
    --tw-exit-opacity: 0;
  }
  .data-\[orientation\=horizontal\]\:h-1\.5[data-orientation="horizontal"] {
    height: calc(var(--spacing) * 1.5);
  }
  .data-\[orientation\=horizontal\]\:h-full[data-orientation="horizontal"] {
    height: 100%;
  }
  .data-\[orientation\=horizontal\]\:h-px[data-orientation="horizontal"] {
    height: 1px;
  }
  .data-\[orientation\=horizontal\]\:w-full[data-orientation="horizontal"] {
    width: 100%;
  }
  .data-\[orientation\=horizontal\]\:flex-col[data-orientation="horizontal"] {
    flex-direction: column;
  }
  .data-\[orientation\=vertical\]\:h-auto[data-orientation="vertical"] {
    height: auto;
  }
  .data-\[orientation\=vertical\]\:h-full[data-orientation="vertical"] {
    height: 100%;
  }
  .data-\[orientation\=vertical\]\:min-h-44[data-orientation="vertical"] {
    min-height: calc(var(--spacing) * 44);
  }
  .data-\[orientation\=vertical\]\:w-1\.5[data-orientation="vertical"] {
    width: calc(var(--spacing) * 1.5);
  }
  .data-\[orientation\=vertical\]\:w-auto[data-orientation="vertical"] {
    width: auto;
  }
  .data-\[orientation\=vertical\]\:w-full[data-orientation="vertical"] {
    width: 100%;
  }
  .data-\[orientation\=vertical\]\:w-px[data-orientation="vertical"] {
    width: 1px;
  }
  .data-\[orientation\=vertical\]\:flex-col[data-orientation="vertical"] {
    flex-direction: column;
  }
  .data-\[placeholder\]\:text-muted-foreground[data-placeholder] {
    color: var(--muted-foreground);
  }
  .data-\[range-end\=true\]\:rounded-md[data-range-end="true"] {
    border-radius: 14px;
  }
  .data-\[range-end\=true\]\:rounded-r-md[data-range-end="true"] {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .data-\[range-end\=true\]\:bg-primary[data-range-end="true"] {
    background-color: var(--primary);
  }
  .data-\[range-end\=true\]\:text-primary-foreground[data-range-end="true"] {
    color: var(--primary-foreground);
  }
  .data-\[range-middle\=true\]\:rounded-none[data-range-middle="true"] {
    border-radius: 0;
  }
  .data-\[range-middle\=true\]\:bg-accent[data-range-middle="true"] {
    background-color: var(--accent);
  }
  .data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle="true"] {
    color: var(--accent-foreground);
  }
  .data-\[range-start\=true\]\:rounded-md[data-range-start="true"] {
    border-radius: 14px;
  }
  .data-\[range-start\=true\]\:rounded-l-md[data-range-start="true"] {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .data-\[range-start\=true\]\:bg-primary[data-range-start="true"] {
    background-color: var(--primary);
  }
  .data-\[range-start\=true\]\:text-primary-foreground[data-range-start="true"] {
    color: var(--primary-foreground);
  }
  .data-\[selected-single\=true\]\:bg-primary[data-selected-single="true"] {
    background-color: var(--primary);
  }
  .data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single="true"] {
    color: var(--primary-foreground);
  }
  .data-\[selected\=true\]\:rounded-none[data-selected="true"] {
    border-radius: 0;
  }
  .data-\[selected\=true\]\:bg-accent[data-selected="true"] {
    background-color: var(--accent);
  }
  .data-\[selected\=true\]\:text-accent-foreground[data-selected="true"] {
    color: var(--accent-foreground);
  }
  .data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
    --tw-translate-y: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
    --tw-enter-translate-y: calc(2 * var(--spacing) * -1);
  }
  .data-\[side\=left\]\:-translate-x-1[data-side="left"] {
    --tw-translate-x: calc(var(--spacing) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
    --tw-enter-translate-x: calc(2 * var(--spacing));
  }
  .data-\[side\=right\]\:translate-x-1[data-side="right"] {
    --tw-translate-x: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
    --tw-enter-translate-x: calc(2 * var(--spacing) * -1);
  }
  .data-\[side\=top\]\:-translate-y-1[data-side="top"] {
    --tw-translate-y: calc(var(--spacing) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
    --tw-enter-translate-y: calc(2 * var(--spacing));
  }
  .data-\[size\=default\]\:h-9[data-size="default"] {
    height: calc(var(--spacing) * 9);
  }
  .data-\[size\=default\]\:h-\[1\.15rem\][data-size="default"] {
    height: 1.15rem;
  }
  .data-\[size\=default\]\:w-8[data-size="default"] {
    width: calc(var(--spacing) * 8);
  }
  .data-\[size\=lg\]\:size-10[data-size="lg"] {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .data-\[size\=sm\]\:size-6[data-size="sm"] {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .data-\[size\=sm\]\:h-3\.5[data-size="sm"] {
    height: calc(var(--spacing) * 3.5);
  }
  .data-\[size\=sm\]\:h-8[data-size="sm"] {
    height: calc(var(--spacing) * 8);
  }
  .data-\[size\=sm\]\:w-6[data-size="sm"] {
    width: calc(var(--spacing) * 6);
  }
  .data-\[size\=sm\]\:max-w-xs[data-size="sm"] {
    max-width: var(--container-xs);
  }
  .data-\[size\=sm\]\:py-1[data-size="sm"] {
    padding-block: calc(var(--spacing) * 1);
  }
  :is(
    .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
  )[data-slot="alert-description"] {
    color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
    )[data-slot="alert-description"] {
      color: color-mix(in oklab, var(--destructive) 90%, transparent);
    }
  }
  :is(.\*\:data-\[slot\=attachment\]\:flex-none > *)[data-slot="attachment"] {
    flex: none;
  }
  :is(.\*\:data-\[slot\=attachment\]\:snap-start > *)[data-slot="attachment"] {
    scroll-snap-align: start;
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-2 > *)[data-slot="avatar"] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + 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);
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-background > *)[data-slot="avatar"] {
    --tw-ring-color: var(--background);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:rounded-none > *
  )[data-slot="bubble-content"] {
    border-radius: 0;
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:border-border > *
  )[data-slot="bubble-content"] {
    border-color: var(--border);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-\[oklch\(from_var\(--primary\)_0\.93_calc\(c\*0\.4\)_h\)\]
      > *
  )[data-slot="bubble-content"] {
    background-color: oklch(from var(--primary) 0.93 calc(c * 0.4) h);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-background > *
  )[data-slot="bubble-content"] {
    background-color: var(--background);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-destructive\/10 > *
  )[data-slot="bubble-content"] {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=bubble-content\]\:bg-destructive\/10 > *
    )[data-slot="bubble-content"] {
      background-color: color-mix(
        in oklab,
        var(--destructive) 10%,
        transparent
      );
    }
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-muted > *
  )[data-slot="bubble-content"] {
    background-color: var(--muted);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-primary > *
  )[data-slot="bubble-content"] {
    background-color: var(--primary);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-secondary > *
  )[data-slot="bubble-content"] {
    background-color: var(--secondary);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-transparent > *
  )[data-slot="bubble-content"] {
    background-color: #0000;
  }
  :is(.\*\:data-\[slot\=bubble-content\]\:p-0 > *)[data-slot="bubble-content"] {
    padding: calc(var(--spacing) * 0);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-destructive > *
  )[data-slot="bubble-content"] {
    color: var(--destructive);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-foreground > *
  )[data-slot="bubble-content"] {
    color: var(--foreground);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-primary-foreground > *
  )[data-slot="bubble-content"] {
    color: var(--primary-foreground);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-secondary-foreground > *
  )[data-slot="bubble-content"] {
    color: var(--secondary-foreground);
  }
  .data-\[slot\=checkbox-group\]\:gap-3[data-slot="checkbox-group"] {
    gap: calc(var(--spacing) * 3);
  }
  :is(
    .\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *
  )[data-slot="command-input-wrapper"] {
    height: calc(var(--spacing) * 12);
  }
  :is(.\*\:data-\[slot\=input-group\]\:m-1 > *)[data-slot="input-group"] {
    margin: calc(var(--spacing) * 1);
  }
  :is(.\*\:data-\[slot\=input-group\]\:mb-0 > *)[data-slot="input-group"] {
    margin-bottom: calc(var(--spacing) * 0);
  }
  :is(.\*\:data-\[slot\=input-group\]\:h-8 > *)[data-slot="input-group"] {
    height: calc(var(--spacing) * 8);
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
  )[data-slot="input-group"] {
    border-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
    )[data-slot="input-group"] {
      border-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
  )[data-slot="input-group"] {
    background-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
    )[data-slot="input-group"] {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:shadow-none > *
  )[data-slot="input-group"] {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  :is(
      .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *
    )[data-slot="navigation-menu-link"]:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(0px + 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);
  }
  :is(
      .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *
    )[data-slot="navigation-menu-link"]:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  :is(
    .\*\:data-\[slot\=select-value\]\:line-clamp-1 > *
  )[data-slot="select-value"] {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }
  :is(.\*\:data-\[slot\=select-value\]\:flex > *)[data-slot="select-value"] {
    display: flex;
  }
  :is(
    .\*\:data-\[slot\=select-value\]\:items-center > *
  )[data-slot="select-value"] {
    align-items: center;
  }
  :is(.\*\:data-\[slot\=select-value\]\:gap-2 > *)[data-slot="select-value"] {
    gap: calc(var(--spacing) * 2);
  }
  :is(
    .group-data-\[orientation\=vertical\]\/attachment\:\*\:data-\[slot\=spinner\]\:size-6\!:is(
        :where(.group\/attachment)[data-orientation="vertical"] *
      )
      > *
  )[data-slot="spinner"] {
    width: calc(var(--spacing) * 6) !important;
    height: calc(var(--spacing) * 6) !important;
  }
  .data-\[spacing\=0\]\:rounded-none[data-spacing="0"] {
    border-radius: 0;
  }
  .data-\[spacing\=0\]\:shadow-none[data-spacing="0"] {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .data-\[spacing\=0\]\:first\:rounded-l-md[data-spacing="0"]:first-child {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .data-\[spacing\=0\]\:last\:rounded-r-md[data-spacing="0"]:last-child {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .data-\[state\=active\]\:bg-background[data-state="active"] {
    background-color: var(--background);
  }
  .data-\[state\=active\]\:text-foreground[data-state="active"] {
    color: var(--foreground);
  }
  .group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(
      :where(.group\/tabs-list)[data-variant="default"] *
    )[data-state="active"] {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(
      :where(.group\/tabs-list)[data-variant="line"] *
    )[data-state="active"] {
    background-color: #0000;
  }
  .group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(
      :where(.group\/tabs-list)[data-variant="line"] *
    )[data-state="active"] {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(
      :where(.group\/tabs-list)[data-variant="line"] *
    )[data-state="active"]:after {
    content: var(--tw-content);
    opacity: 1;
  }
  .data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state="checked"] {
    --tw-translate-x: calc(100% - 2px);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .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\=closed\]\:animate-accordion-up[data-state="closed"] {
    animation: accordion-up
      var(--tw-animation-duration, var(--tw-duration, 0.2s))
      var(--tw-ease, ease-out) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=closed\]\:animate-out[data-state="closed"] {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=closed\]\:duration-300[data-state="closed"] {
    --tw-duration: 0.3s;
    transition-duration: 0.3s;
  }
  .data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
    --tw-exit-opacity: 0;
  }
  .data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
    --tw-exit-scale: 0.95;
  }
  .data-\[state\=closed\]\:slide-out-to-bottom[data-state="closed"] {
    --tw-exit-translate-y: 100%;
  }
  .data-\[state\=closed\]\:slide-out-to-left[data-state="closed"] {
    --tw-exit-translate-x: -100%;
  }
  .data-\[state\=closed\]\:slide-out-to-right[data-state="closed"] {
    --tw-exit-translate-x: 100%;
  }
  .data-\[state\=closed\]\:slide-out-to-top[data-state="closed"] {
    --tw-exit-translate-y: -100%;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="closed"] {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="closed"] {
    --tw-exit-opacity: 0;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="closed"] {
    --tw-exit-scale: 0.95;
  }
  .data-\[state\=error\]\:border-destructive\/30[data-state="error"] {
    border-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[state\=error\]\:border-destructive\/30[data-state="error"] {
      border-color: color-mix(in oklab, var(--destructive) 30%, transparent);
    }
  }
  .data-\[state\=hidden\]\:animate-out[data-state="hidden"] {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=hidden\]\:fade-out[data-state="hidden"] {
    --tw-exit-opacity: 0;
  }
  .data-\[state\=idle\]\:border-dashed[data-state="idle"] {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .data-\[state\=on\]\:bg-accent[data-state="on"] {
    background-color: var(--accent);
  }
  .data-\[state\=on\]\:text-accent-foreground[data-state="on"] {
    color: var(--accent-foreground);
  }
  .data-\[state\=open\]\:animate-accordion-down[data-state="open"] {
    animation: accordion-down
      var(--tw-animation-duration, var(--tw-duration, 0.2s))
      var(--tw-ease, ease-out) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=open\]\:animate-in[data-state="open"] {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=open\]\:bg-accent[data-state="open"],
  .data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
    background-color: var(--accent);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
      background-color: color-mix(in oklab, var(--accent) 50%, transparent);
    }
  }
  .data-\[state\=open\]\:bg-secondary[data-state="open"] {
    background-color: var(--secondary);
  }
  .data-\[state\=open\]\:text-accent-foreground[data-state="open"] {
    color: var(--accent-foreground);
  }
  .data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
    color: var(--muted-foreground);
  }
  .data-\[state\=open\]\:opacity-100[data-state="open"] {
    opacity: 1;
  }
  .data-\[state\=open\]\:duration-500[data-state="open"] {
    --tw-duration: 0.5s;
    transition-duration: 0.5s;
  }
  .data-\[state\=open\]\:fade-in-0[data-state="open"] {
    --tw-enter-opacity: 0;
  }
  .data-\[state\=open\]\:zoom-in-90[data-state="open"] {
    --tw-enter-scale: 0.9;
  }
  .data-\[state\=open\]\:zoom-in-95[data-state="open"] {
    --tw-enter-scale: 0.95;
  }
  .data-\[state\=open\]\:slide-in-from-bottom[data-state="open"] {
    --tw-enter-translate-y: 100%;
  }
  .data-\[state\=open\]\:slide-in-from-left[data-state="open"] {
    --tw-enter-translate-x: -100%;
  }
  .data-\[state\=open\]\:slide-in-from-right[data-state="open"] {
    --tw-enter-translate-x: 100%;
  }
  .data-\[state\=open\]\:slide-in-from-top[data-state="open"] {
    --tw-enter-translate-y: -100%;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="open"] {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="open"] {
    --tw-enter-opacity: 0;
  }
  .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(
      :where(.group\/navigation-menu)[data-viewport="false"] *
    )[data-state="open"] {
    --tw-enter-scale: 0.95;
  }
  @media (hover: hover) {
    .data-\[state\=open\]\:hover\:bg-accent[data-state="open"]:hover {
      background-color: var(--accent);
    }
  }
  .data-\[state\=open\]\:focus\:bg-accent[data-state="open"]:focus {
    background-color: var(--accent);
  }
  .data-\[state\=selected\]\:bg-muted[data-state="selected"] {
    background-color: var(--muted);
  }
  .data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
    background-color: var(--input);
  }
  .data-\[state\=visible\]\:animate-in[data-state="visible"] {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-\[state\=visible\]\:fade-in[data-state="visible"] {
    --tw-enter-opacity: 0;
  }
  .data-\[variant\=destructive\]\:text-destructive[data-variant="destructive"] {
    color: var(--destructive);
  }
  .data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant="destructive"]:focus {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant="destructive"]:focus {
      background-color: color-mix(
        in oklab,
        var(--destructive) 10%,
        transparent
      );
    }
  }
  .data-\[variant\=destructive\]\:focus\:text-destructive[data-variant="destructive"]:focus {
    color: var(--destructive);
  }
  .data-\[variant\=ghost\]\:max-w-full[data-variant="ghost"] {
    max-width: 100%;
  }
  .data-\[variant\=label\]\:text-sm[data-variant="label"] {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .data-\[variant\=legend\]\:text-base[data-variant="legend"] {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .data-\[variant\=line\]\:rounded-none[data-variant="line"] {
    border-radius: 0;
  }
  .data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0[data-spacing="0"][data-variant="outline"] {
    border-left-style: var(--tw-border-style);
    border-left-width: 0;
  }
  .data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l[data-spacing="0"][data-variant="outline"]:first-child {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .data-\[spacing\=default\]\:data-\[variant\=outline\]\:shadow-xs[data-spacing="default"][data-variant="outline"] {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction="bottom"] {
    inset-inline: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction="bottom"] {
    bottom: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction="bottom"] {
    margin-top: calc(var(--spacing) * 24);
  }
  .data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction="bottom"] {
    max-height: 80vh;
  }
  .data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction="bottom"] {
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
  }
  .data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction="bottom"] {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction="left"] {
    inset-block: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction="left"] {
    left: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction="left"] {
    width: 75%;
  }
  .data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction="left"] {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction="right"] {
    inset-block: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction="right"] {
    right: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction="right"] {
    width: 75%;
  }
  .data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction="right"] {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction="top"] {
    inset-inline: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction="top"] {
    top: calc(var(--spacing) * 0);
  }
  .data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction="top"] {
    margin-bottom: calc(var(--spacing) * 24);
  }
  .data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction="top"] {
    max-height: 80vh;
  }
  .data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction="top"] {
    border-bottom-right-radius: 18px;
    border-bottom-left-radius: 18px;
  }
  .data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction="top"] {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .nth-last-2\:-mt-1:nth-last-child(2) {
    margin-top: calc(var(--spacing) * -1);
  }
  @media (width>=40rem) {
    .sm\:block {
      display: block;
    }
    .sm\:flex {
      display: flex;
    }
    .sm\:max-w-lg {
      max-width: var(--container-lg);
    }
    .sm\:max-w-sm {
      max-width: var(--container-sm);
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
    .sm\:gap-2\.5 {
      gap: calc(var(--spacing) * 2.5);
    }
    .sm\:pr-2\.5 {
      padding-right: calc(var(--spacing) * 2.5);
    }
    .sm\:pl-2\.5 {
      padding-left: calc(var(--spacing) * 2.5);
    }
    .sm\:text-left {
      text-align: left;
    }
    .sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(
      :where(.group\/alert-dialog-content)[data-size="default"] *
    ) {
      grid-row: span 2 / span 2;
    }
    .sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(
      :where(.group\/alert-dialog-content)[data-size="default"] *
    ) {
      place-items: start;
    }
    .sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(
      :where(.group\/alert-dialog-content)[data-size="default"] *
    ) {
      text-align: left;
    }
    .sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(
        :where(.group\/alert-dialog-content)[data-size="default"] *
      ):is(
        :where(.group\/alert-dialog-content):has(
            [data-slot="alert-dialog-media"]
          )
          *
      ) {
      grid-column-start: 2;
    }
    .sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(
        :where(.group\/alert-dialog-content)[data-size="default"] *
      ):has([data-slot="alert-dialog-media"]) {
      grid-template-rows: auto 1fr;
    }
    .data-\[size\=default\]\:sm\:max-w-lg[data-size="default"] {
      max-width: var(--container-lg);
    }
    .data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction="left"],
    .data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction="right"] {
      max-width: var(--container-sm);
    }
  }
  @media (width>=48rem) {
    .md\:absolute {
      position: absolute;
    }
    .md\:block {
      display: block;
    }
    .md\:flex {
      display: flex;
    }
    .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] {
      width: var(--radix-navigation-menu-viewport-width);
    }
    .md\:w-auto {
      width: auto;
    }
    .md\:flex-row {
      flex-direction: row;
    }
    .md\:gap-1\.5 {
      gap: calc(var(--spacing) * 1.5);
    }
    .md\:p-12 {
      padding: calc(var(--spacing) * 12);
    }
    .md\:text-left {
      text-align: left;
    }
    .md\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .md\:opacity-0 {
      opacity: 0;
    }
    .md\:peer-data-\[variant\=inset\]\:m-2:is(
      :where(.peer)[data-variant="inset"] ~ *
    ) {
      margin: calc(var(--spacing) * 2);
    }
    .md\:peer-data-\[variant\=inset\]\:ml-0:is(
      :where(.peer)[data-variant="inset"] ~ *
    ) {
      margin-left: calc(var(--spacing) * 0);
    }
    .md\:peer-data-\[variant\=inset\]\:rounded-xl:is(
      :where(.peer)[data-variant="inset"] ~ *
    ) {
      border-radius: 22px;
    }
    .md\:peer-data-\[variant\=inset\]\:shadow-sm:is(
      :where(.peer)[data-variant="inset"] ~ *
    ) {
      --tw-shadow:
        0 1px 3px 0 var(--tw-shadow-color, #0000001a),
        0 1px 2px -1px var(--tw-shadow-color, #0000001a);
      box-shadow:
        var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
        var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(
        :where(.peer)[data-variant="inset"] ~ *
      ):is(:where(.peer)[data-state="collapsed"] ~ *) {
      margin-left: calc(var(--spacing) * 2);
    }
    .md\:after\:hidden:after {
      content: var(--tw-content);
      display: none;
    }
  }
  @container field-group (width>=28rem) {
    .\@md\/field-group\:flex-row {
      flex-direction: row;
    }
    .\@md\/field-group\:items-center {
      align-items: center;
    }
    .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(
      > [data-slot="field-content"]
    ) {
      align-items: flex-start;
    }
  }
  .rtl\:translate-x-1\/2:where(
    :is(
      :lang(ae),
      :lang(ar),
      :lang(arc),
      :lang(bcc),
      :lang(bqi),
      :lang(ckb),
      :lang(dv),
      :lang(fa),
      :lang(glk),
      :lang(he),
      :lang(ku),
      :lang(mzn),
      :lang(nqo),
      :lang(pnb),
      :lang(ps),
      :lang(sd),
      :lang(ug),
      :lang(ur),
      :lang(yi)
    ),
    [dir="rtl"],
    [dir="rtl"] *
  ) {
    --tw-translate-x: calc(1 / 2 * 100%);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  @media (prefers-color-scheme: dark) {
    .dark\:border-input {
      border-color: var(--input);
    }
    .dark\:bg-destructive\/60 {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:bg-destructive\/60 {
        background-color: color-mix(
          in oklab,
          var(--destructive) 60%,
          transparent
        );
      }
    }
    .dark\:bg-input\/30 {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:bg-input\/30 {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
    .dark\:bg-transparent {
      background-color: #0000;
    }
    .dark\:text-muted-foreground {
      color: var(--muted-foreground);
    }
    @media (hover: hover) {
      .dark\:hover\:bg-accent\/50:hover {
        background-color: var(--accent);
      }
      @supports (color: color-mix(in lab, red, red)) {
        .dark\:hover\:bg-accent\/50:hover {
          background-color: color-mix(in oklab, var(--accent) 50%, transparent);
        }
      }
      .dark\:hover\:bg-input\/50:hover {
        background-color: var(--input);
      }
      @supports (color: color-mix(in lab, red, red)) {
        .dark\:hover\:bg-input\/50:hover {
          background-color: color-mix(in oklab, var(--input) 50%, transparent);
        }
      }
      .dark\:hover\:text-accent-foreground:hover {
        color: var(--accent-foreground);
      }
      .dark\:hover\:text-foreground:hover {
        color: var(--foreground);
      }
    }
    .dark\:focus-visible\:ring-destructive\/40:focus-visible {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:focus-visible\:ring-destructive\/40:focus-visible {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:has-aria-invalid\:border-destructive\/50:has([aria-invalid="true"]) {
      border-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-aria-invalid\:border-destructive\/50:has(
        [aria-invalid="true"]
      ) {
        border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
      }
    }
    .dark\:has-aria-invalid\:ring-destructive\/40:has([aria-invalid="true"]) {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-aria-invalid\:ring-destructive\/40:has([aria-invalid="true"]) {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:has-data-\[state\=checked\]\:bg-primary\/10:has(
      [data-state="checked"]
    ) {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-data-\[state\=checked\]\:bg-primary\/10:has(
        [data-state="checked"]
      ) {
        background-color: color-mix(in oklab, var(--primary) 10%, transparent);
      }
    }
    .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has(
      [data-slot][aria-invalid="true"]
    ) {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has(
        [data-slot][aria-invalid="true"]
      ) {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:aria-invalid\:ring-destructive\/40[aria-invalid="true"] {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:aria-invalid\:ring-destructive\/40[aria-invalid="true"] {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    .dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40[data-active="true"][aria-invalid="true"] {
      --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40[data-active="true"][aria-invalid="true"] {
        --tw-ring-color: color-mix(
          in oklab,
          var(--destructive) 40%,
          transparent
        );
      }
    }
    :is(
      .dark\:\*\:data-\[slot\=bubble-content\]\:bg-\[oklch\(from_var\(--primary\)_0\.3_calc\(c\*0\.4\)_h\)\]
        > *
    )[data-slot="bubble-content"] {
      background-color: oklch(from var(--primary) 0.3 calc(c * 0.4) h);
    }
    :is(
      .dark\:\*\:data-\[slot\=bubble-content\]\:bg-destructive\/20 > *
    )[data-slot="bubble-content"] {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      :is(
        .dark\:\*\:data-\[slot\=bubble-content\]\:bg-destructive\/20 > *
      )[data-slot="bubble-content"] {
        background-color: color-mix(
          in oklab,
          var(--destructive) 20%,
          transparent
        );
      }
    }
    .dark\:data-\[state\=active\]\:border-input[data-state="active"] {
      border-color: var(--input);
    }
    .dark\:data-\[state\=active\]\:bg-input\/30[data-state="active"] {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:data-\[state\=active\]\:bg-input\/30[data-state="active"] {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
    .dark\:data-\[state\=active\]\:text-foreground[data-state="active"] {
      color: var(--foreground);
    }
    .dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(
        :where(.group\/tabs-list)[data-variant="line"] *
      )[data-state="active"] {
      border-color: #0000;
    }
    .dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(
        :where(.group\/tabs-list)[data-variant="line"] *
      )[data-state="active"] {
      background-color: #0000;
    }
    .dark\:data-\[state\=checked\]\:bg-primary[data-state="checked"] {
      background-color: var(--primary);
    }
    .dark\:data-\[state\=checked\]\:bg-primary-foreground[data-state="checked"] {
      background-color: var(--primary-foreground);
    }
    .dark\:data-\[state\=unchecked\]\:bg-foreground[data-state="unchecked"] {
      background-color: var(--foreground);
    }
    .dark\:data-\[state\=unchecked\]\:bg-input\/80[data-state="unchecked"] {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:data-\[state\=unchecked\]\:bg-input\/80[data-state="unchecked"] {
        background-color: color-mix(in oklab, var(--input) 80%, transparent);
      }
    }
    .dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant="destructive"]:focus {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant="destructive"]:focus {
        background-color: color-mix(
          in oklab,
          var(--destructive) 20%,
          transparent
        );
      }
    }
  }
  @media (pointer: coarse) {
    .pointer-coarse\:size-5 {
      width: calc(var(--spacing) * 5);
      height: calc(var(--spacing) * 5);
    }
    .pointer-coarse\:px-3 {
      padding-inline: calc(var(--spacing) * 3);
    }
    .pointer-coarse\:py-2 {
      padding-block: calc(var(--spacing) * 2);
    }
    .pointer-coarse\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .data-open\:animate-in:where([data-state="open"]),
  .data-open\:animate-in:where([data-open]:not([data-open="false"])) {
    animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-open\:fade-in-0:where([data-state="open"]),
  .data-open\:fade-in-0:where([data-open]:not([data-open="false"])) {
    --tw-enter-opacity: 0;
  }
  .data-open\:zoom-in-95:where([data-state="open"]),
  .data-open\:zoom-in-95:where([data-open]:not([data-open="false"])) {
    --tw-enter-scale: 0.95;
  }
  .data-closed\:animate-out:where([data-state="closed"]),
  .data-closed\:animate-out:where([data-closed]:not([data-closed="false"])) {
    animation: exit var(--tw-animation-duration, var(--tw-duration, 0.15s))
      var(--tw-ease, ease) var(--tw-animation-delay, 0s)
      var(--tw-animation-iteration-count, 1)
      var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
  }
  .data-closed\:fade-out-0:where([data-state="closed"]),
  .data-closed\:fade-out-0:where([data-closed]:not([data-closed="false"])) {
    --tw-exit-opacity: 0;
  }
  .data-closed\:zoom-out-95:where([data-state="closed"]),
  .data-closed\:zoom-out-95:where([data-closed]:not([data-closed="false"])) {
    --tw-exit-scale: 0.95;
  }
  .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground
    .recharts-cartesian-axis-tick
    text {
    fill: var(--muted-foreground);
  }
  .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50
    .recharts-cartesian-grid
    line[stroke="\#ccc"] {
    stroke: var(--border);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50
      .recharts-cartesian-grid
      line[stroke="\#ccc"] {
      stroke: color-mix(in oklab, var(--border) 50%, transparent);
    }
  }
  .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border
    .recharts-curve.recharts-tooltip-cursor {
    stroke: var(--border);
  }
  .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent
    .recharts-dot[stroke="\#fff"] {
    stroke: #0000;
  }
  .\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border
    .recharts-polar-grid
    [stroke="\#ccc"] {
    stroke: var(--border);
  }
  .\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted
    .recharts-radial-bar-background-sector,
  .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted
    .recharts-rectangle.recharts-tooltip-cursor {
    fill: var(--muted);
  }
  .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border
    .recharts-reference-line
    [stroke="\#ccc"] {
    stroke: var(--border);
  }
  .\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent
    .recharts-sector[stroke="\#fff"] {
    stroke: #0000;
  }
  .\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface {
    --tw-outline-style: none;
    outline-style: none;
  }
  @media (forced-colors: active) {
    .\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }
  .\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
    padding-inline: calc(var(--spacing) * 2);
  }
  .\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
    color: var(--muted-foreground);
  }
  .\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
    padding-inline: calc(var(--spacing) * 2);
  }
  .\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0
    [cmdk-group]:not([hidden])
    ~ [cmdk-group] {
    padding-top: calc(var(--spacing) * 0);
  }
  .\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
    height: calc(var(--spacing) * 5);
  }
  .\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
    width: calc(var(--spacing) * 5);
  }
  .\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
    height: calc(var(--spacing) * 12);
  }
  .\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
    padding-inline: calc(var(--spacing) * 2);
  }
  .\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
    padding-block: calc(var(--spacing) * 3);
  }
  .\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
    height: calc(var(--spacing) * 5);
  }
  .\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
    width: calc(var(--spacing) * 5);
  }
  .\[\&_img\]\:size-full img {
    width: 100%;
    height: 100%;
  }
  .\[\&_img\]\:object-cover img {
    object-fit: cover;
  }
  .\[\&_p\]\:leading-relaxed p {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .data-\[direction\=start\]\:\[\&_svg\]\:rotate-180[data-direction="start"]
    svg {
    rotate: 180deg;
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*="size-"]),
  .group-data-\[orientation\=vertical\]\/attachment\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6:is(
      :where(.group\/attachment)[data-orientation="vertical"] *
    )
    svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .group-data-\[size\=xs\]\/attachment\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5:is(
      :where(.group\/attachment)[data-size="xs"] *
    )
    svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground
    svg:not([class*="text-"]) {
    color: var(--muted-foreground);
  }
  .\[\&_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: 0;
  }
  .\[\&\+\[data-slot\=item-content\]\]\:flex-none + [data-slot="item-content"] {
    flex: none;
  }
  .\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected="true"]
    button {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
    padding-right: calc(var(--spacing) * 0);
  }
  .\[\.border-b\]\:pb-3.border-b {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .\[\.border-b\]\:pb-6.border-b {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .\[\.border-t\]\:pt-3.border-t {
    padding-top: calc(var(--spacing) * 3);
  }
  .\[\.border-t\]\:pt-6.border-t {
    padding-top: calc(var(--spacing) * 6);
  }
  :is(
    .rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(
        :is(
          :lang(ae),
          :lang(ar),
          :lang(arc),
          :lang(bcc),
          :lang(bqi),
          :lang(ckb),
          :lang(dv),
          :lang(fa),
          :lang(glk),
          :lang(he),
          :lang(ku),
          :lang(mzn),
          :lang(nqo),
          :lang(pnb),
          :lang(ps),
          :lang(sd),
          :lang(ug),
          :lang(ur),
          :lang(yi)
        ),
        [dir="rtl"],
        [dir="rtl"] *
      )
      *
  ):is(.rdp-button_next > svg),
  :is(
    .rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(
        :is(
          :lang(ae),
          :lang(ar),
          :lang(arc),
          :lang(bcc),
          :lang(bqi),
          :lang(ckb),
          :lang(dv),
          :lang(fa),
          :lang(glk),
          :lang(he),
          :lang(ku),
          :lang(mzn),
          :lang(nqo),
          :lang(pnb),
          :lang(ps),
          :lang(sd),
          :lang(ug),
          :lang(ur),
          :lang(yi)
        ),
        [dir="rtl"],
        [dir="rtl"] *
      )
      *
  ):is(.rdp-button_previous > svg) {
    rotate: 180deg;
  }
  .\[a\]\:underline:is(a) {
    text-decoration-line: underline;
  }
  .\[a\]\:underline-offset-3:is(a) {
    text-underline-offset: 3px;
  }
  .\[a\]\:transition-colors:is(a) {
    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));
  }
  :is(.\*\:\[a\]\:underline > *):is(a) {
    text-decoration-line: underline;
  }
  :is(.\*\:\[a\]\:underline-offset-3 > *):is(a) {
    text-underline-offset: 3px;
  }
  @media (hover: hover) {
    .\[a\]\:hover\:bg-accent\/50:is(a):hover {
      background-color: var(--accent);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-accent\/50:is(a):hover {
        background-color: color-mix(in oklab, var(--accent) 50%, transparent);
      }
    }
    .\[a\]\:hover\:text-foreground:is(a):hover,
    :is(.\*\:\[a\]\:hover\:text-foreground > *):is(a):hover {
      color: var(--foreground);
    }
  }
  .\[button\]\:text-left:is(button) {
    text-align: left;
  }
  .\[button\,a\]\:transition-colors:is(button, a) {
    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));
  }
  .\[button\,a\]\:outline-none:is(button, a) {
    --tw-outline-style: none;
    outline-style: none;
  }
  .\[button\,a\]\:focus-visible\:border-ring:is(button, a):focus-visible {
    border-color: var(--ring);
  }
  .\[button\,a\]\:focus-visible\:ring-3:is(button, a):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);
  }
  .\[button\,a\]\:focus-visible\:ring-ring\/50:is(button, a):focus-visible {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[button\,a\]\:focus-visible\:ring-ring\/50:is(button, a):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  :is(.\*\:\[img\]\:aspect-square > *):is(img) {
    aspect-ratio: 1;
  }
  :is(.\*\:\[img\]\:w-full > *):is(img) {
    width: 100%;
  }
  :is(.\*\:\[img\]\:object-cover > *):is(img) {
    object-fit: cover;
  }
  :is(.\*\:\[span\]\:last\:flex > *):is(span):last-child {
    display: flex;
  }
  :is(.\*\:\[span\]\:last\:items-center > *):is(span):last-child {
    align-items: center;
  }
  :is(.\*\:\[span\]\:last\:gap-2 > *):is(span):last-child {
    gap: calc(var(--spacing) * 2);
  }
  :is(
    .data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive\![data-variant="destructive"]
      > *
  ):is(svg) {
    color: var(--destructive) !important;
  }
  :is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-8 > *):is(
    svg:not([class*="size-"])
  ) {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected="true"]
    button {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .\[\&\:nth-child\(2\)\[data-selected\=true\]_button\]\:rounded-l-md:nth-child(
      2
    )[data-selected="true"]
    button {
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .\[\&\>\*\]\:w-full > * {
    width: 100%;
  }
  .\[\&\>\*\]\:focus-visible\:relative > :focus-visible {
    position: relative;
  }
  .\[\&\>\*\]\:focus-visible\:z-10 > :focus-visible {
    z-index: 10;
  }
  .\[\&\>\*\]\:data-\[slot\=field\]\:p-4 > [data-slot="field"] {
    padding: calc(var(--spacing) * 4);
  }
  @container field-group (width>=28rem) {
    .\@md\/field-group\:\[\&\>\*\]\:w-auto > * {
      width: auto;
    }
  }
  .\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none > :not(:first-child) {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  .\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none > :not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .\[\&\>\*\:not\(\:first-child\)\]\:border-t-0 > :not(:first-child) {
    border-top-style: var(--tw-border-style);
    border-top-width: 0;
  }
  .\[\&\>\*\:not\(\:first-child\)\]\:border-l-0 > :not(:first-child) {
    border-left-style: var(--tw-border-style);
    border-left-width: 0;
  }
  .\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none > :not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none > :not(:last-child) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .\[\&\>\.sr-only\]\:w-auto > .sr-only {
    width: auto;
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: var(--muted);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: color-mix(in oklch, var(--muted), var(--foreground) 5%);
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: var(--secondary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: color-mix(
        in oklch,
        var(--secondary),
        var(--foreground) 5%
      );
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[oklch\(from_var\(--primary\)_0\.88_calc\(c\*0\.5\)_h\)\]
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: oklch(from var(--primary) 0.88 calc(c * 0.5) h);
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/20
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/20
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: color-mix(
        in oklab,
        var(--destructive) 20%,
        transparent
      );
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-muted
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: var(--muted);
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-primary\/80
    > [data-slot="bubble-content"]:is(button, a):hover {
    background-color: var(--primary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-primary\/80
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: color-mix(in oklab, var(--primary) 80%, transparent);
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:text-foreground
    > [data-slot="bubble-content"]:is(button, a):hover {
    color: var(--foreground);
  }
  @media (prefers-color-scheme: dark) {
    .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[oklch\(from_var\(--primary\)_0\.35_calc\(c\*0\.5\)_h\)\]
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: oklch(from var(--primary) 0.35 calc(c * 0.5) h);
    }
    .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/30
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/30
        > [data-slot="bubble-content"]:is(button, a):hover {
        background-color: color-mix(
          in oklab,
          var(--destructive) 30%,
          transparent
        );
      }
    }
    .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-input\/30
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-input\/30
        > [data-slot="bubble-content"]:is(button, a):hover {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
    .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-muted\/50
      > [data-slot="bubble-content"]:is(button, a):hover {
      background-color: var(--muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-muted\/50
        > [data-slot="bubble-content"]:is(button, a):hover {
        background-color: color-mix(in oklab, var(--muted) 50%, transparent);
      }
    }
  }
  .\[\&\>\[data-slot\=field-group\]\]\:gap-4 > [data-slot="field-group"] {
    gap: calc(var(--spacing) * 4);
  }
  .\[\&\>\[data-slot\=field-label\]\]\:flex-auto > [data-slot="field-label"] {
    flex: auto;
  }
  @container field-group (width>=28rem) {
    .\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto
      > [data-slot="field-label"] {
      flex: auto;
    }
  }
  .has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(
      :is(select[aria-hidden="true"]:last-child)
    )
    > [data-slot="select-trigger"]:last-of-type {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  .\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit
    > [data-slot="select-trigger"]:not([class*="w-"]) {
    width: fit-content;
  }
  .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\] > [role="checkbox"] {
    --tw-translate-y: 2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  :is(
    .has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
        > [data-slot="field-content"]
      )
      > [role="checkbox"],
    .has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
        > [data-slot="field-content"]
      )
      [role="radio"]
  ) {
    margin-top: 1px;
  }
  @container field-group (width>=28rem) {
    :is(
      .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
          > [data-slot="field-content"]
        )
        > [role="checkbox"],
      .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
          > [data-slot="field-content"]
        )
        [role="radio"]
    ) {
      margin-top: 1px;
    }
  }
  .\[\&\>a\]\:underline > a {
    text-decoration-line: underline;
  }
  .\[\&\>a\]\:underline-offset-4 > a {
    text-underline-offset: 4px;
  }
  .\[\&\>a\:hover\]\:text-primary > a:hover {
    color: var(--primary);
  }
  .\[\&\>button\]\:hidden > button {
    display: none;
  }
  .\[\&\>input\]\:flex-1 > input {
    flex: 1;
  }
  .has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(
      > [data-align="block-end"]
    )
    > input {
    padding-top: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(
      > [data-align="block-start"]
    )
    > input {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(
      > [data-align="inline-end"]
    )
    > input {
    padding-right: calc(var(--spacing) * 2);
  }
  .has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(
      > [data-align="inline-start"]
    )
    > input {
    padding-left: calc(var(--spacing) * 2);
  }
  .\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\] > kbd {
    border-radius: calc(var(--radius) - 5px);
  }
  .\[\&\>span\]\:text-xs > span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\[\&\>span\]\:opacity-70 > span {
    opacity: 0.7;
  }
  .\[\&\>span\:last-child\]\:truncate > span:last-child {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .\[\&\>svg\]\:pointer-events-none > svg {
    pointer-events: none;
  }
  .\[\&\>svg\]\:size-3 > svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&\>svg\]\:size-3\.5 > svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&\>svg\]\:size-4 > svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&\>svg\]\:h-2\.5 > svg {
    height: calc(var(--spacing) * 2.5);
  }
  .\[\&\>svg\]\:h-3 > svg {
    height: calc(var(--spacing) * 3);
  }
  .\[\&\>svg\]\:w-2\.5 > svg {
    width: calc(var(--spacing) * 2.5);
  }
  .\[\&\>svg\]\:w-3 > svg {
    width: calc(var(--spacing) * 3);
  }
  .\[\&\>svg\]\:shrink-0 > svg {
    flex-shrink: 0;
  }
  .\[\&\>svg\]\:translate-y-0\.5 > svg {
    --tw-translate-y: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .\[\&\>svg\]\:text-current > svg {
    color: currentColor;
  }
  .\[\&\>svg\]\:text-muted-foreground > svg {
    color: var(--muted-foreground);
  }
  .group-has-data-\[size\=lg\]\/avatar-group\:\[\&\>svg\]\:size-5:is(
      :where(.group\/avatar-group):has([data-size="lg"]) *
    )
    > svg {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .group-has-data-\[size\=sm\]\/avatar-group\:\[\&\>svg\]\:size-3:is(
      :where(.group\/avatar-group):has([data-size="sm"]) *
    )
    > svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .group-data-\[size\=default\]\/avatar\:\[\&\>svg\]\:size-2:is(
      :where(.group\/avatar)[data-size="default"] *
    )
    > svg,
  .group-data-\[size\=lg\]\/avatar\:\[\&\>svg\]\:size-2:is(
      :where(.group\/avatar)[data-size="lg"] *
    )
    > svg {
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
  }
  .group-data-\[size\=sm\]\/avatar\:\[\&\>svg\]\:hidden:is(
      :where(.group\/avatar)[data-size="sm"] *
    )
    > svg {
    display: none;
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5
    > svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4
    > svg:not([class*="size-"]) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }
  .\[\&\[aria-orientation\=horizontal\]\>div\]\:rotate-90[aria-orientation="horizontal"]
    > div {
    rotate: 90deg;
  }
  .\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state="open"] > svg {
    rotate: 180deg;
  }
  [data-side="left"][data-collapsible="offcanvas"]
    .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
    right: calc(var(--spacing) * -2);
  }
  [data-side="left"][data-state="collapsed"]
    .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize {
    cursor: e-resize;
  }
  [data-side="right"][data-collapsible="offcanvas"]
    .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
    left: calc(var(--spacing) * -2);
  }
  [data-side="right"][data-state="collapsed"]
    .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
    cursor: w-resize;
  }
  [data-slot="card-content"]
    .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,
  [data-slot="popover-content"]
    .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent {
    background-color: #0000;
  }
  [data-slot="tooltip-content"]
    .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20 {
    background-color: var(--background);
  }
  @supports (color: color-mix(in lab, red, red)) {
    [data-slot="tooltip-content"]
      .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20 {
      background-color: color-mix(in oklab, var(--background) 20%, transparent);
    }
  }
  [data-slot="tooltip-content"]
    .\[\[data-slot\=tooltip-content\]_\&\]\:text-background {
    color: var(--background);
  }
  @media (prefers-color-scheme: dark) {
    [data-slot="tooltip-content"]
      .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10 {
      background-color: var(--background);
    }
    @supports (color: color-mix(in lab, red, red)) {
      [data-slot="tooltip-content"]
        .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10 {
        background-color: color-mix(
          in oklab,
          var(--background) 10%,
          transparent
        );
      }
    }
  }
  [data-variant="legend"] + .\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5 {
    margin-top: calc(var(--spacing) * -1.5);
  }
  @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);
    }
    a.\[a\&\]\:hover\:underline:hover {
      text-decoration-line: underline;
    }
  }
}
@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;
}
@property --scroll-fade-t {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-b {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-s {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-e {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-mask {
  syntax: "*";
  inherits: false;
}
@property --shimmer-angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: 20deg;
}
@property --shimmer-image {
  syntax: "*";
  inherits: false;
}
@property --shimmer-text-fill {
  syntax: "*";
  inherits: false;
}
@media (prefers-reduced-motion: reduce) {
  .shimmer {
    -webkit-text-fill-color: currentColor;
    background-image: none;
    animation: none;
  }
}
:root {
  --background: #050505;
  --foreground: #f4f4f2;
  --card: #111;
  --card-foreground: #f4f4f2;
  --popover: #101010;
  --popover-foreground: #f4f4f2;
  --primary: #f6f6f4;
  --primary-foreground: #0a0a0a;
  --secondary: #1b1b1b;
  --secondary-foreground: #f4f4f2;
  --muted: #181818;
  --muted-foreground: #8f8f91;
  --accent: #202020;
  --accent-foreground: #f4f4f2;
  --destructive: #a93737;
  --border: #333335;
  --input: #3a3a3c;
  --ring: #e6e6e3;
  --radius: 18px;
  --gold: #c7aa75;
  --silver: #d7d7d4;
  --muted-text: #929294;
  --panel: #111112;
  --panel-soft: #151516;
  --line: #ffffff29;
  --side: clamp(18px, 4cqw, 34px);
}
* {
  box-sizing: border-box;
}
html {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
  -webkit-text-size-adjust: 100%;
  scrollbar-gutter: stable;
  background: #000;
}
body {
  color: var(--foreground);
  background: #000;
  min-width: 320px;
  margin: 0;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 400;
}
button,
input,
textarea,
select {
  font: inherit;
}
button {
  -webkit-tap-highlight-color: transparent;
}
button:focus-visible,
[tabindex]:focus-visible {
  outline-offset: 3px;
  outline: 2px solid #f4f4f2;
}
.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}
.v-app {
  min-height: var(--tg-viewport-stable-height, 100svh);
  background: #000;
}
.v-shell {
  background: #000;
  width: min(100%, 480px);
  min-height: 100svh;
  margin: 0 auto;
  position: relative;
  overflow-x: hidden;
  container: v-app/inline-size;
}
.v-header {
  height: clamp(98px, 13cqw, 142px);
  padding: max(22px, env(safe-area-inset-top)) var(--side) 16px;
  z-index: 10;
  background: #000;
  grid-template-columns: 74px 1fr 74px;
  align-items: center;
  display: grid;
  position: relative;
}
.v-logo,
.v-menu {
  color: #f4f4f2;
  cursor: pointer;
  background: 0 0;
  border: 2px solid #e7e7e5;
  border-radius: 50%;
  place-items: center;
  width: clamp(52px, 8cqw, 72px);
  height: clamp(52px, 8cqw, 72px);
  display: grid;
}
.v-logo {
  letter-spacing: -0.04em;
  font-size: clamp(22px, 3.5cqw, 34px);
  font-weight: 500;
}
.v-menu {
  justify-self: end;
}
.v-menu svg {
  stroke-width: 1.7px;
  width: clamp(27px, 4cqw, 38px);
  height: clamp(27px, 4cqw, 38px);
}
.v-profile-trigger {
  color: #bdbdbd;
  cursor: pointer;
  background: #171718;
  border: 0;
  border-radius: 18px;
  place-items: center;
  width: clamp(50px, 8cqw, 68px);
  height: clamp(50px, 8cqw, 68px);
  display: grid;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px #ffffff14;
}
.v-profile-trigger > svg {
  stroke-width: 1.55px;
  width: 45%;
  height: 45%;
}
.v-telegram-photo {
  background-position: 50%;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.v-menu,
.v-logo.v-back {
  background: 0 0;
  border: 0;
  border-radius: 14px;
}
.v-header-center {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  min-width: 0;
  display: flex;
}
.v-header-center h1 {
  color: #f5f5f3;
  margin: 0;
  font-size: clamp(25px, 3.6cqw, 36px);
  font-weight: 500;
  line-height: 1;
}
.v-header-badge {
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #9b9b9e;
  background: #111112;
  border: 1px solid #ffffff1a;
  border-radius: 999px;
  max-width: min(220px, 42cqw);
  padding: 6px 15px 7px;
  font-size: clamp(12px, 2cqw, 18px);
  line-height: 1;
  overflow: hidden;
}
.v-main {
  padding: 10px var(--side) calc(154px + env(safe-area-inset-bottom));
}
.v-screen {
  flex-direction: column;
  gap: clamp(18px, 3cqw, 30px);
  animation: 0.26s ease-out both v-screen-in;
  display: flex;
}
@keyframes v-screen-in {
  0% {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.v-texture {
  isolation: isolate;
  background:
    radial-gradient(circle at 76% 28%, #ffffff0e, #0000 26%),
    radial-gradient(circle at 18% 72%, #ffffff09, #0000 30%),
    linear-gradient(145deg, #171718 0%, #101011 52%, #0d0d0e 100%);
  border: 1px solid #ffffff36;
  position: relative;
  overflow: hidden;
}
.v-texture:before {
  content: "";
  z-index: -1;
  opacity: 0.28;
  pointer-events: none;
  mix-blend-mode: screen;
  background-image:
    repeating-linear-gradient(17deg, #ffffff05 0 1px, #0000 1px 4px),
    repeating-linear-gradient(103deg, #ffffff03 0 1px, #0000 1px 5px);
  position: absolute;
  inset: 0;
}
.v-primary {
  cursor: pointer;
  min-height: 48px;
  color: #090909 !important;
  background: #f5f5f3 !important;
  border: 0 !important;
  border-radius: 18px !important;
  padding: 0 24px !important;
  font-size: clamp(14px, 2.2cqw, 20px) !important;
  font-weight: 500 !important;
  box-shadow: 0 9px 24px #00000047 !important;
}
.v-primary:hover {
  transform: translateY(-1px);
  background: #fff !important;
}
.v-primary:disabled,
.v-outline-button:disabled {
  opacity: 0.55;
  cursor: default;
  transform: none;
}
.v-primary svg,
.v-outline-button svg,
.v-outline-wide svg {
  stroke-width: 2px;
  width: 19px;
  height: 19px;
}
.v-primary.v-small {
  height: 39px;
  min-height: 39px;
  border-radius: 12px !important;
  padding: 0 16px !important;
  font-size: 14px !important;
}
.v-wide {
  width: 100%;
}
.v-outline-button,
.v-outline-wide {
  min-height: 43px;
  color: #ededeb !important;
  box-shadow: none !important;
  background: #ffffff06 !important;
  border: 1px solid #ffffff40 !important;
  border-radius: 14px !important;
}
.v-outline-wide {
  justify-content: flex-start;
  align-items: center;
  gap: 13px;
  width: 100%;
  min-height: 58px;
  padding: 0 20px;
  font-weight: 500;
  display: flex;
}
.v-outline-wide > :last-child {
  margin-left: auto;
}
.v-progress {
  background: #ffffff21 !important;
  border-radius: 999px !important;
  height: 8px !important;
}
.v-progress [data-slot="progress-indicator"] {
  border-radius: inherit;
  background: #efefed !important;
}
.v-hero-card,
.v-ai-hero,
.v-opportunity-hero,
.v-work-hero,
.v-profile-hero {
  border-radius: clamp(18px, 3cqw, 30px);
  min-height: clamp(330px, 51cqw, 500px);
}
.v-hero-card {
  grid-template-columns: minmax(0, 1.25fr) minmax(118px, 0.75fr);
  align-items: center;
  column-gap: clamp(8px, 2cqw, 18px);
  padding: clamp(28px, 6cqw, 58px) clamp(26px, 5cqw, 52px);
  display: grid;
}
.v-hero-copy {
  z-index: 2;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  min-width: 0;
  display: flex;
  position: relative;
}
.v-hero-copy > span,
.v-ai-hero > div:first-child > span,
.v-work-hero > div:first-child > span {
  color: #b0b0b2;
  letter-spacing: 0.02em;
  font-size: clamp(13px, 2.4cqw, 24px);
  font-weight: 500;
}
.v-hero-copy h2,
.v-ai-hero h2,
.v-opportunity-hero h2,
.v-work-hero h2 {
  color: #f5f5f3;
  letter-spacing: -0.035em;
  margin: clamp(25px, 4cqw, 38px) 0 10px;
  font-family:
    Arial Narrow,
    Helvetica Neue Condensed,
    Helvetica Neue,
    sans-serif;
  font-size: clamp(40px, 8cqw, 77px);
  font-weight: 700;
  font-stretch: 75%;
  line-height: 0.96;
}
.v-hero-copy h2 {
  overflow-wrap: break-word;
  max-width: 100%;
}
.v-hero-copy p,
.v-work-hero p {
  color: #99999c;
  margin: 12px 0 clamp(28px, 5cqw, 54px);
  font-size: clamp(16px, 2.8cqw, 27px);
}
.v-media-stack {
  aspect-ratio: 0.78;
  z-index: 1;
  justify-self: end;
  width: min(100%, clamp(132px, 27cqw, 270px));
  position: relative;
  transform: translateY(10px) rotate(4deg);
}
.v-media-stack > i {
  background: linear-gradient(140deg, #333335, #111112 58%);
  border: 1px solid #ffffff38;
  border-radius: 17px;
  position: absolute;
  inset: 8% 4% 7% 18%;
  box-shadow: 10px 18px 28px #0000007a;
}
.v-media-stack > i:first-child {
  transform: translate(24%, -10%) rotate(9deg);
}
.v-media-stack > i:nth-child(2) {
  transform: translate(12%, 5%) rotate(5deg);
}
.v-media-stack > i:nth-child(3) {
  transform: translate(-5%, 12%) rotate(-4deg);
}
.v-media-stack > span {
  aspect-ratio: 1;
  color: #fff;
  z-index: 5;
  background: #0000002e;
  border: 3px solid #f1f1ef;
  border-radius: 50%;
  place-items: center;
  width: clamp(54px, 9cqw, 88px);
  display: grid;
  position: absolute;
  top: 39%;
  left: 22%;
}
.v-media-stack svg {
  fill: currentColor;
  width: 40%;
  height: 40%;
}
.v-reference-art {
  aspect-ratio: 0.78;
  z-index: 1;
  filter: saturate(0.84) contrast(1.05);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 24px;
  place-self: stretch end;
  width: min(100%, clamp(150px, 31cqw, 295px));
  position: relative;
  -webkit-mask-image: linear-gradient(90deg, #0000 0%, #000 18% 100%);
  mask-image: linear-gradient(90deg, #0000 0%, #000 18% 100%);
}
.v-ai-hero .v-reference-art,
.v-opportunity-hero .v-reference-art {
  width: min(48%, 285px);
  min-height: 250px;
}
.v-section-heading,
.v-panel-heading {
  justify-content: space-between;
  align-items: flex-end;
  gap: 18px;
  display: flex;
}
.v-section-heading h3 {
  color: #e9e9e7;
  letter-spacing: -0.025em;
  margin: 4px 0 0;
  font-family:
    Arial Narrow,
    Helvetica Neue Condensed,
    sans-serif;
  font-size: clamp(25px, 4.7cqw, 44px);
  font-weight: 700;
  line-height: 1;
}
.v-section-heading button {
  color: #8f8f92;
  cursor: pointer;
  background: 0 0;
  border: 0;
  font-size: 14px;
}
.v-home-grid,
.v-environment-grid {
  grid-template-columns: 1fr 1fr;
  gap: clamp(12px, 2.3cqw, 22px);
  display: grid;
}
.v-section-card {
  text-align: left;
  color: #f3f3f1;
  cursor: pointer;
  border-radius: clamp(18px, 3cqw, 27px);
  min-height: clamp(300px, 50cqw, 490px);
  padding: clamp(23px, 4cqw, 36px);
}
.v-card-arrow {
  position: absolute;
  top: clamp(22px, 3cqw, 32px);
  right: clamp(20px, 3cqw, 32px);
}
.v-card-arrow svg {
  stroke-width: 2px;
  width: 28px;
  height: 28px;
}
.v-section-card h4 {
  margin: 0 42px 6px 0;
  font-family:
    Arial Narrow,
    Helvetica Neue Condensed,
    sans-serif;
  font-size: clamp(25px, 4.2cqw, 39px);
  line-height: 1;
}
.v-section-card > p {
  color: #99999c;
  margin: 10px 0 0;
  font-size: clamp(14px, 2.7cqw, 25px);
}
.v-mini-stack {
  height: 57%;
  position: absolute;
  inset: auto 8% 7%;
}
.v-mini-stack i {
  color: #b6b6b8;
  background: linear-gradient(145deg, #2a2a2c, #111112);
  border: 1px solid #ffffff47;
  border-radius: 12px;
  place-items: center;
  width: 48%;
  height: 87%;
  display: grid;
  position: absolute;
  bottom: 0;
  box-shadow: 6px 13px 18px #00000073;
}
.v-mini-stack i:first-child {
  z-index: 3;
  left: 2%;
  transform: rotate(-7deg);
}
.v-mini-stack i:nth-child(2) {
  z-index: 2;
  left: 27%;
  transform: rotate(2deg);
}
.v-mini-stack i:nth-child(3) {
  right: 1%;
  transform: rotate(8deg);
}
.v-mini-stack svg {
  width: 30%;
  height: 30%;
}
.v-material-grid {
  grid-template-rows: repeat(2, 1fr);
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  height: 60%;
  display: grid;
  position: absolute;
  bottom: 6%;
  left: 6%;
  right: 6%;
}
.v-material-grid i {
  color: #cacacc;
  background: linear-gradient(145deg, #28282a, #121213);
  border: 1px solid #ffffff3b;
  border-radius: 9px;
  place-items: center;
  display: grid;
}
.v-material-grid svg {
  stroke-width: 1.7px;
  width: 35%;
  height: 35%;
}
.v-continue-card {
  cursor: pointer;
  border-radius: clamp(17px, 3cqw, 25px);
  grid-template-columns: 1fr auto;
  gap: 16px;
  min-height: clamp(180px, 27cqw, 260px);
  padding: clamp(25px, 4cqw, 36px);
  display: grid;
}
.v-continue-card > div:first-child > span {
  color: #adadaf;
  font-size: clamp(13px, 2.3cqw, 21px);
}
.v-continue-card h4 {
  margin: 8px 0 4px;
  font-size: clamp(20px, 4cqw, 36px);
  font-weight: 500;
  line-height: 1.12;
}
.v-continue-card p {
  color: #8c8c8f;
  margin: 0;
  font-size: clamp(14px, 2.5cqw, 22px);
}
.v-progress-row {
  grid-column: 1/-1;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 20px;
  margin-top: 8px;
  display: grid;
}
.v-progress-row b {
  border: 1px solid #ffffff30;
  border-radius: 999px;
  place-items: center;
  min-width: 72px;
  min-height: 43px;
  padding: 0 14px;
  font-size: clamp(16px, 2.5cqw, 22px);
  font-weight: 500;
  display: grid;
}
.v-next-step-card,
.v-subscription-card {
  background: #0f0f10;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 18px 20px;
  display: flex;
}
.v-next-step-card > div,
.v-subscription-card > div {
  align-items: center;
  gap: 14px;
  min-width: 0;
  display: flex;
}
.v-next-step-card > div > svg,
.v-subscription-card > div > svg {
  color: #c5c5c3;
  flex: none;
  width: 28px;
  height: 28px;
}
.v-next-step-card span,
.v-subscription-card span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-next-step-card small,
.v-subscription-card small {
  color: #838386;
  font-size: 12px;
}
.v-next-step-card strong,
.v-subscription-card strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 15px;
  font-weight: 500;
  overflow: hidden;
}
.v-work-hero {
  grid-template-rows: 1fr auto;
  grid-template-columns: 1fr 0.85fr;
  align-items: center;
  padding: clamp(28px, 5cqw, 48px);
  display: grid;
}
.v-work-hero h2 {
  margin-bottom: 0;
}
.v-work-hero p {
  margin: 10px 0 0;
}
.v-work-orbit {
  aspect-ratio: 1;
  background: radial-gradient(circle, #29292b, #111 64%);
  border: 1px solid #fff3;
  border-radius: 50%;
  justify-self: end;
  place-items: center;
  width: clamp(145px, 28cqw, 270px);
  display: grid;
  position: relative;
  box-shadow: 0 23px 28px #0000006e;
}
.v-work-orbit > svg {
  stroke-width: 1.4px;
  color: #e7e7e4;
  width: 36%;
  height: 36%;
}
.v-work-orbit i {
  background: var(--gold);
  border-radius: 50%;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 23%;
  right: 17%;
  box-shadow: 0 0 0 7px #c7aa7514;
}
.v-work-hero-footer {
  grid-column: 1/-1;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 24px;
  display: grid;
}
.v-work-hero-footer > span {
  border-top: 1px solid #ffffff24;
  flex-direction: column;
  gap: 4px;
  padding-top: 17px;
  display: flex;
}
.v-work-hero-footer small {
  color: #8d8d90;
  font-size: 13px;
}
.v-work-hero-footer strong {
  font-size: clamp(19px, 3cqw, 29px);
  font-weight: 500;
}
.v-tab-list {
  border-bottom: 1px solid #ffffff21;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 !important;
  width: 100% !important;
  height: 50px !important;
  padding: 0 !important;
  display: grid !important;
}
.v-tab-list [data-slot="tabs-trigger"] {
  color: #77777a !important;
  border-radius: 0 !important;
  height: 50px !important;
  font-size: clamp(14px, 2.5cqw, 20px) !important;
  font-weight: 500 !important;
}
.v-tab-list [data-state="active"] {
  color: #f1f1ef !important;
}
.v-tab-list [data-state="active"]:after {
  background: #efefed !important;
  bottom: -1px !important;
}
.v-tab-panel {
  flex-direction: column;
  gap: 20px;
  display: flex;
}
.v-panel-heading h3 {
  margin: 0;
  font-size: clamp(24px, 4cqw, 34px);
  font-weight: 500;
}
.v-panel-heading span {
  color: #7f7f82;
  margin-top: 3px;
  font-size: 13px;
  display: block;
}
.v-project-list,
.v-task-list,
.v-transaction-list,
.v-opportunity-list,
.v-feed-list,
.v-community-list,
.v-people-list {
  flex-direction: column;
  gap: 13px;
  display: flex;
}
.v-project-card {
  background: linear-gradient(145deg, #151516, #0f0f10);
  border: 1px solid #ffffff29;
  border-radius: 20px;
  padding: 16px;
}
.v-project-main {
  width: 100%;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
  padding: 0;
  display: grid;
}
.v-project-avatar {
  aspect-ratio: 1;
  color: #fff;
  border-radius: 50%;
  place-items: center;
  width: clamp(52px, 8cqw, 68px);
  font-size: clamp(15px, 2.5cqw, 21px);
  font-weight: 600;
  display: grid;
}
.v-project-copy {
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 3px 12px;
  min-width: 0;
  display: grid;
}
.v-project-copy small {
  color: #818184;
  grid-column: 1/-1;
  font-size: 12px;
}
.v-project-copy strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
  font-size: clamp(16px, 2.7cqw, 22px);
  font-weight: 500;
  overflow: hidden;
}
.v-project-copy em {
  color: #aaa;
  white-space: nowrap;
  background: #222224;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 11px;
  font-style: normal;
}
.v-project-copy em[data-status="active"] {
  color: #d8ceb9;
  background: #c7aa751f;
}
.v-project-main > svg {
  width: 24px;
  height: 24px;
}
.v-project-money {
  border-top: 1px solid #ffffff17;
  align-items: flex-end;
  gap: 24px;
  margin: 17px 0 12px;
  padding-top: 14px;
  display: flex;
}
.v-project-money > span {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.v-project-money small {
  color: #77777a;
  font-size: 11px;
}
.v-project-money b {
  font-size: 15px;
  font-weight: 500;
}
.v-team-stack {
  flex-direction: row-reverse;
  margin-left: auto;
  padding-left: 8px;
  display: flex;
}
.v-team-stack i {
  background: #2a2a2c;
  border: 2px solid #111;
  border-radius: 50%;
  place-items: center;
  width: 29px;
  height: 29px;
  margin-left: -7px;
  font-size: 9px;
  font-style: normal;
  display: grid;
}
.v-project-actions {
  justify-content: flex-end;
  gap: 8px;
  margin-top: 13px;
  display: flex;
}
.v-project-actions button {
  color: #8f8f92;
  cursor: pointer;
  background: 0 0;
  border: 1px solid #ffffff1a;
  border-radius: 10px;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
  display: flex;
}
.v-project-actions button:last-child {
  padding: 0 9px;
}
.v-project-actions svg {
  width: 14px;
  height: 14px;
}
.v-date-strip {
  grid-template-columns: repeat(7, 1fr);
  gap: 7px;
  display: grid;
  overflow-x: auto;
}
.v-date-strip button {
  color: #8b8b8e;
  cursor: pointer;
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  min-width: 54px;
  height: 75px;
  display: flex;
}
.v-date-strip button.active {
  color: #090909;
  background: #f3f3f1;
  border-color: #f3f3f1;
}
.v-date-strip small {
  text-transform: capitalize;
  font-size: 10px;
}
.v-date-strip strong {
  font-size: 21px;
  font-weight: 500;
}
.v-task-list > article {
  cursor: grab;
  background: #111112;
  border: 1px solid #ffffff24;
  border-radius: 16px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 13px;
  min-height: 76px;
  padding: 14px;
  display: grid;
}
.v-task-list > article.done {
  opacity: 0.55;
}
.v-task-list > article.done strong {
  text-decoration: line-through;
}
.v-task-check,
.v-task-delete {
  color: #d7d7d5;
  cursor: pointer;
  background: 0 0;
  border: 0;
  place-items: center;
  width: 35px;
  height: 35px;
  display: grid;
}
.v-task-check svg {
  width: 25px;
  height: 25px;
}
.v-task-delete {
  color: #77777a;
}
.v-task-delete svg {
  width: 17px;
  height: 17px;
}
.v-task-list article > div {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-task-list small {
  color: #7b7b7e;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11px;
  overflow: hidden;
}
.v-task-list small i {
  background: #777;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  display: inline-block;
}
.v-task-list small i[data-priority="high"] {
  background: #b45d5d;
}
.v-task-list small i[data-priority="medium"] {
  background: #b39158;
}
.v-task-list small i[data-priority="low"] {
  background: #5f8790;
}
.v-task-list strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 15px;
  font-weight: 500;
  overflow: hidden;
}
.v-finance-grid {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}
.v-finance-grid > div {
  background: linear-gradient(145deg, #151516, #0e0e0f);
  border: 1px solid #ffffff26;
  border-radius: 18px;
  flex-direction: column;
  align-items: flex-start;
  min-height: 140px;
  padding: 18px;
  display: flex;
}
.v-finance-grid svg {
  color: #a4a4a6;
  width: 24px;
  height: 24px;
  margin-bottom: auto;
}
.v-finance-grid span {
  color: #7e7e81;
  margin-top: 22px;
  font-size: 12px;
}
.v-finance-grid strong {
  margin-top: 3px;
  font-size: clamp(18px, 3.4cqw, 27px);
  font-weight: 500;
}
.v-transaction-list {
  margin-top: 5px;
}
.v-transaction-list h4 {
  margin: 0 0 3px;
  font-size: 19px;
  font-weight: 500;
}
.v-transaction-list > p {
  color: #7c7c7f;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  margin: 0;
  padding: 22px;
  font-size: 13px;
  line-height: 1.5;
}
.v-transaction-list article {
  border-bottom: 1px solid #ffffff17;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 13px 2px;
  display: grid;
}
.v-transaction-list article > span {
  color: #86a495;
  background: #171719;
  border-radius: 12px;
  place-items: center;
  width: 39px;
  height: 39px;
  display: grid;
}
.v-transaction-list article > span[data-type="expense"] {
  color: #ae7575;
}
.v-transaction-list svg {
  width: 19px;
  height: 19px;
}
.v-transaction-list article > div {
  flex-direction: column;
  min-width: 0;
  display: flex;
}
.v-transaction-list article strong {
  font-size: 14px;
  font-weight: 500;
}
.v-transaction-list article small {
  color: #77777a;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  overflow: hidden;
}
.v-transaction-list article > b {
  white-space: nowrap;
  font-size: 13px;
  font-weight: 500;
}
.v-ai-hero {
  grid-template-columns: 1.14fr 0.86fr;
  align-items: center;
  padding: clamp(28px, 5cqw, 48px);
  display: grid;
}
.v-ai-hero > div:first-child {
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  display: flex;
}
.v-ai-hero h2 {
  text-transform: none;
  letter-spacing: -0.045em;
  margin: 28px 0 clamp(32px, 5cqw, 52px);
  font-family:
    Helvetica Neue,
    Helvetica,
    sans-serif;
  font-weight: 500;
}
.v-ai-disc {
  aspect-ratio: 1;
  background: radial-gradient(
    circle at 58% 42%,
    #333335,
    #171718 50%,
    #0d0d0e 82%
  );
  border: 1px solid #ffffff45;
  border-radius: 50%;
  justify-self: end;
  place-items: center;
  width: clamp(150px, 29cqw, 280px);
  display: grid;
  transform: translateY(10px);
  box-shadow:
    0 28px 34px #00000094,
    inset -14px -18px 25px #00000052;
}
.v-ai-disc svg {
  stroke-width: 1.2px;
  color: #f2f2ef;
  filter: drop-shadow(4px 5px 2px #c7aa752e);
  width: 43%;
  height: 43%;
}
.v-role-card,
.v-goals-card,
.v-dialog-card,
.v-people-card,
.v-dashboard-card,
.v-vault-card {
  border-radius: clamp(18px, 3cqw, 26px);
  padding: clamp(22px, 4cqw, 34px);
}
.v-role-card > h3,
.v-goals-card > h3 {
  color: #c3c3c4;
  margin: 0 0 22px;
  font-size: clamp(14px, 2.5cqw, 22px);
  font-weight: 500;
}
.v-role-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(10px, 2cqw, 17px);
  display: grid;
}
.v-role-grid button {
  color: #d7d7d5;
  cursor: pointer;
  background: #ffffff03;
  border: 1px solid #ffffff30;
  border-radius: 18px;
  justify-content: center;
  align-items: center;
  gap: 14px;
  min-height: clamp(76px, 11cqw, 98px);
  padding: 12px;
  display: flex;
}
.v-role-grid svg {
  stroke-width: 1.7px;
  width: clamp(23px, 3.6cqw, 34px);
  height: clamp(23px, 3.6cqw, 34px);
}
.v-goals-card {
  flex-direction: column;
  gap: 14px;
  display: flex;
}
.v-goals-card > div {
  border: 1px solid #ffffff26;
  border-radius: 17px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 16px;
  min-height: 82px;
  padding: 17px;
  display: grid;
}
.v-goals-card > div > svg {
  stroke-width: 1.7px;
  width: 30px;
  height: 30px;
}
.v-goals-card > div > span {
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  display: flex;
}
.v-goals-card strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: clamp(14px, 2.4cqw, 20px);
  font-weight: 500;
  overflow: hidden;
}
.v-goals-card b {
  white-space: nowrap;
  font-size: clamp(14px, 2.4cqw, 20px);
  font-weight: 500;
}
.v-dialog-card {
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 25px;
  min-height: 170px;
  display: flex;
}
.v-dialog-card > div {
  flex-direction: column;
  gap: 7px;
  display: flex;
}
.v-dialog-card > div > span {
  font-size: clamp(19px, 3.3cqw, 29px);
  font-weight: 500;
}
.v-dialog-card > div > small {
  color: #838386;
  font-size: clamp(12px, 2.1cqw, 17px);
  line-height: 1.45;
}
.v-opportunity-hero {
  grid-template-columns: 1.15fr 0.85fr;
  align-items: center;
  padding: clamp(28px, 5cqw, 50px);
  display: grid;
}
.v-opportunity-hero > div:first-child {
  z-index: 2;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  display: flex;
  position: relative;
}
.v-opportunity-hero > div:first-child > small {
  color: #c0c0c1;
  border: 1px solid #ffffff2b;
  border-radius: 10px;
  margin-top: 10px;
  padding: 6px 11px;
  font-size: clamp(11px, 2cqw, 17px);
}
.v-opportunity-hero h2 {
  letter-spacing: -0.035em;
  text-transform: none;
  margin: clamp(28px, 5cqw, 50px) 0 clamp(32px, 5cqw, 48px);
  font-family:
    Helvetica Neue,
    Helvetica,
    sans-serif;
  font-size: clamp(31px, 6.1cqw, 58px);
  font-weight: 500;
  line-height: 1.04;
}
.v-link-object {
  aspect-ratio: 1;
  justify-self: end;
  width: clamp(155px, 30cqw, 290px);
  position: relative;
}
.v-link-object i {
  aspect-ratio: 1;
  background: 0 0;
  border: clamp(14px, 2.5cqw, 25px) solid #272729;
  border-radius: 17%;
  width: 61%;
  position: absolute;
  box-shadow:
    8px 16px 22px #0000008c,
    inset 2px 3px 1px #ffffff1c;
}
.v-link-object i:first-child {
  top: 5%;
  right: 4%;
  transform: rotate(4deg);
}
.v-link-object i:nth-child(2) {
  bottom: 4%;
  left: 4%;
  transform: rotate(-5deg);
}
.v-link-object span {
  aspect-ratio: 1;
  background: radial-gradient(circle, #c7aa7580, #2a2927 30%, #151515 69%);
  border-radius: 18%;
  width: 36%;
  position: absolute;
  top: 33%;
  left: 33%;
  box-shadow: 0 0 24px #c7aa7529;
}
.v-env-card {
  color: #f2f2f0;
  text-align: left;
  cursor: pointer;
  border-radius: clamp(17px, 3cqw, 25px);
  min-height: clamp(235px, 37cqw, 350px);
  padding: clamp(20px, 3cqw, 31px);
}
.v-env-card > span {
  font-size: clamp(19px, 3.4cqw, 30px);
  font-weight: 500;
}
.v-env-card > svg {
  width: 27px;
  height: 27px;
  position: absolute;
  top: clamp(21px, 3cqw, 31px);
  right: clamp(21px, 3cqw, 31px);
}
.v-community-card > div {
  justify-content: center;
  height: 58%;
  display: flex;
  position: absolute;
  bottom: 8%;
  left: 7%;
  right: 7%;
}
.v-community-card > div i {
  background: linear-gradient(145deg, #1c1c1e, #101011);
  border: 1px solid #fff3;
  border-radius: 13px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 14px;
  width: 49%;
  height: 100%;
  font-style: normal;
  display: flex;
  box-shadow: 7px 12px 20px #0006;
}
.v-community-card > div i:first-child {
  transform: rotate(-7deg);
}
.v-community-card > div i:last-child {
  transform: rotate(7deg);
}
.v-community-card svg {
  color: #a3a3a6;
  width: 34px;
  height: 34px;
}
.v-community-card small {
  white-space: nowrap;
  font-size: clamp(10px, 2cqw, 17px);
}
.v-feed-card > div {
  flex-direction: column;
  gap: 12px;
  display: flex;
  position: absolute;
  bottom: 8%;
  left: 7%;
  right: 7%;
}
.v-feed-card i {
  background: #151516;
  border: 1px solid #ffffff26;
  border-radius: 14px;
  align-items: center;
  gap: 13px;
  min-height: 73px;
  padding: 13px;
  font-style: normal;
  display: flex;
}
.v-feed-card i svg {
  flex: none;
  width: 30px;
  height: 30px;
}
.v-feed-card small {
  font-size: clamp(11px, 2.2cqw, 18px);
  line-height: 1.25;
}
.v-online-card > small {
  color: #99999b;
  margin-top: 22px;
  font-size: clamp(13px, 2.4cqw, 21px);
  display: block;
}
.v-online-card > div {
  gap: 10px;
  display: flex;
  position: absolute;
  bottom: 12%;
  left: 7%;
  right: 7%;
}
.v-online-card > div i {
  aspect-ratio: 1;
  border: 1px solid #ffffff38;
  border-radius: 50%;
  place-items: center;
  width: clamp(44px, 8cqw, 70px);
  font-size: clamp(17px, 3cqw, 27px);
  font-style: normal;
  display: grid;
}
.v-activity-card > div {
  align-items: end;
  gap: 4px;
  height: 40%;
  display: flex;
  position: absolute;
  bottom: 16%;
  left: 9%;
  right: 9%;
}
.v-activity-card > div i {
  background: #3d3d3f;
  border-radius: 3px;
  flex: 1;
  max-width: 10px;
  min-height: 7px;
}
.v-people-card {
  flex-direction: column;
  gap: 12px;
  display: flex;
}
.v-card-heading {
  color: #f2f2f0;
  cursor: pointer;
  background: 0 0;
  border: 0;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0 0 8px;
  font-size: clamp(20px, 3.5cqw, 30px);
  display: flex;
}
.v-card-heading svg {
  width: 27px;
  height: 27px;
}
.v-people-card article,
.v-people-list article,
.v-community-list article {
  background: #151516;
  border: 1px solid #ffffff24;
  border-radius: 16px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
  min-height: 83px;
  padding: 12px 14px;
  display: grid;
}
.v-people-card article > i,
.v-people-list article > i,
.v-community-list article > i {
  aspect-ratio: 1;
  border: 1px solid #ffffff40;
  border-radius: 50%;
  place-items: center;
  width: clamp(48px, 7cqw, 60px);
  font-size: clamp(18px, 2.8cqw, 25px);
  font-style: normal;
  display: grid;
}
.v-people-card article > div,
.v-people-list article > div,
.v-community-list article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-people-card strong,
.v-people-list strong,
.v-community-list strong {
  font-size: clamp(15px, 2.6cqw, 21px);
  font-weight: 500;
}
.v-people-card small,
.v-people-list small,
.v-community-list small {
  color: #7f7f82;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  overflow: hidden;
}
.v-community-note {
  color: #858588;
  background: #ffffff06;
  border: 1px dashed #ffffff29;
  border-radius: 15px;
  padding: 16px;
  font-size: 12px;
  line-height: 1.5;
}
.v-request-summary {
  background: #c7aa7512;
  border: 1px solid #c7aa7538;
  border-radius: 16px;
  flex-direction: column;
  gap: 5px;
  padding: 15px;
  display: flex;
}
.v-request-summary strong {
  font-size: 14px;
  font-weight: 500;
}
.v-request-summary span {
  color: #d0c5af;
  font-size: 13px;
}
.v-request-summary small {
  color: #858588;
  font-size: 11px;
  line-height: 1.4;
}
.v-profile-hero {
  text-align: center;
  flex-direction: column;
  align-items: center;
  padding: clamp(28px, 5cqw, 48px);
  display: flex;
}
.v-profile-edit {
  color: #ddd;
  cursor: pointer;
  background: #181819;
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  place-items: center;
  width: 42px;
  height: 42px;
  display: grid;
  position: absolute;
  top: 24px;
  right: 24px;
}
.v-profile-edit svg {
  width: 18px;
  height: 18px;
}
.v-profile-avatar {
  aspect-ratio: 1;
  color: #a9a9aa;
  background: #202022;
  border: 1px solid #ffffff38;
  border-radius: 50%;
  place-items: center;
  width: clamp(115px, 20cqw, 180px);
  display: grid;
  box-shadow: 0 20px 28px #0000006b;
}
.v-profile-avatar svg {
  stroke-width: 1.35px;
  width: 40%;
  height: 40%;
}
.v-profile-avatar.has-photo {
  background-position: 50%;
  background-size: cover;
}
.v-profile-hero h2 {
  letter-spacing: -0.03em;
  margin: 25px 0 5px;
  font-family:
    Arial Narrow,
    Helvetica Neue Condensed,
    sans-serif;
  font-size: clamp(38px, 7cqw, 67px);
  line-height: 1;
}
.v-profile-hero > span {
  color: #8d8d90;
  font-size: clamp(13px, 2.3cqw, 20px);
}
.v-profile-hero > p {
  color: #b7b7b7;
  max-width: 640px;
  margin: 22px auto 0;
  font-size: clamp(14px, 2.4cqw, 19px);
  line-height: 1.5;
}
.v-profile-tags {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 22px;
  display: flex;
}
.v-profile-tags i {
  color: #b2b2b4;
  background: #171718;
  border: 1px solid #ffffff2b;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: 12px;
  font-style: normal;
}
.v-profile-info-grid {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}
.v-profile-info-grid section {
  background: #111112;
  border: 1px solid #ffffff26;
  border-radius: 18px;
  flex-direction: column;
  min-height: 160px;
  padding: 19px;
  display: flex;
}
.v-profile-info-grid svg {
  color: #aaa;
  width: 24px;
  height: 24px;
}
.v-profile-info-grid span {
  color: #7d7d80;
  margin-top: auto;
  font-size: 12px;
}
.v-profile-info-grid p {
  margin: 5px 0 0;
  font-size: 13px;
  line-height: 1.35;
}
.v-dashboard-card .v-card-heading {
  cursor: default;
}
.v-dashboard-card > div:last-child {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}
.v-dashboard-card > div:last-child i {
  background: #151516;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  flex-direction: column;
  min-height: 88px;
  padding: 14px;
  font-style: normal;
  display: flex;
}
.v-dashboard-card small {
  color: #77777a;
  font-size: 11px;
}
.v-dashboard-card strong {
  margin-top: auto;
  font-size: clamp(18px, 3cqw, 26px);
  font-weight: 500;
}
.v-vault-card {
  justify-content: space-between;
  align-items: center;
  min-height: 110px;
  display: flex;
}
.v-vault-card > div {
  align-items: center;
  gap: 16px;
  display: flex;
}
.v-vault-card > div > svg {
  width: 30px;
  height: 30px;
}
.v-vault-card span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-vault-card strong {
  font-size: 18px;
  font-weight: 500;
}
.v-vault-card small {
  color: #79797c;
  font-size: 12px;
}
.v-vault-card > svg {
  width: 24px;
  height: 24px;
}
.v-subscription-card.active {
  background: #c7aa750f;
  border-color: #c7aa7557;
}
.v-subscription-card > svg {
  color: var(--gold);
}
.v-bottom-nav {
  z-index: 30;
  width: min(100%, 480px);
  height: calc(92px + env(safe-area-inset-bottom));
  padding: 10px var(--side) env(safe-area-inset-bottom);
  background: linear-gradient(#000000f0, #000 18%);
  border-top: 1px solid #ffffff12;
  grid-template-columns: repeat(5, 1fr);
  display: grid;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translate(-50%);
}
.v-bottom-nav button {
  color: #77777a;
  cursor: pointer;
  background: 0 0;
  border: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
}
.v-bottom-nav button.active {
  color: #f4f4f2;
}
.v-bottom-nav svg {
  stroke-width: 1.7px;
  width: clamp(24px, 4cqw, 35px);
  height: clamp(24px, 4cqw, 35px);
}
.v-bottom-nav i {
  background: #f4f4f2;
  border-radius: 999px;
  width: 0;
  height: 3px;
  transition: width 0.18s;
  position: absolute;
  bottom: 0;
}
.v-sheet {
  color: #f2f2f0 !important;
  background: #0b0b0c !important;
  border-left: 1px solid #ffffff29 !important;
  width: min(88cqw, 420px) !important;
}
.v-sheet [data-slot="sheet-title"] {
  font-size: 22px;
}
.v-sheet [data-slot="sheet-description"] {
  color: #7e7e81;
}
.v-sheet-body {
  flex-direction: column;
  gap: 18px;
  padding: 0 16px 24px;
  display: flex;
  overflow-y: auto;
}
.v-menu-route {
  background: #121213;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  padding: 18px;
}
.v-menu-route > span {
  color: #7d7d80;
  font-size: 12px;
}
.v-menu-route strong {
  margin-top: 5px;
  font-size: 21px;
  font-weight: 500;
  display: block;
}
.v-menu-route p {
  color: #aaa;
  margin: 8px 0 17px;
  font-size: 13px;
  line-height: 1.4;
}
.v-sheet-links {
  flex-direction: column;
  display: flex;
}
.v-sheet-links button {
  color: #ddd;
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #ffffff17;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 13px;
  min-height: 57px;
  display: grid;
}
.v-sheet-links svg {
  width: 20px;
  height: 20px;
}
.v-sheet-links svg:last-child {
  color: #6d6d70;
}
.v-save-state {
  color: #7a7a7d;
  align-items: center;
  gap: 9px;
  font-size: 11px;
  display: flex;
}
.v-save-state i {
  background: #8c8c8f;
  border-radius: 50%;
  width: 7px;
  height: 7px;
}
.v-save-state[data-state="saved"] i {
  background: #668c76;
}
.v-save-state[data-state="offline"] i {
  background: #9b6666;
}
.v-save-state[data-state="saving"] i {
  animation: 1s infinite v-pulse;
}
@keyframes v-pulse {
  50% {
    opacity: 0.6;
    transform: scale(1.16);
  }
}
.v-dialog,
.v-alert-dialog {
  max-height: min(90svh, 860px);
  overflow-y: auto;
  color: #f2f2f0 !important;
  background: #0d0d0e !important;
  border: 1px solid #fff3 !important;
  border-radius: 23px !important;
  width: min(100cqw - 28px, 650px) !important;
  max-width: 650px !important;
  padding: clamp(22px, 4cqw, 34px) !important;
  box-shadow: 0 30px 80px #000000b3 !important;
}
.v-dialog [data-slot="dialog-title"],
.v-alert-dialog [data-slot="alert-dialog-title"] {
  font-size: clamp(24px, 4cqw, 34px);
  font-weight: 500;
  line-height: 1.1;
}
.v-dialog [data-slot="dialog-description"],
.v-alert-dialog [data-slot="alert-dialog-description"] {
  color: #858588;
  font-size: 13px;
  line-height: 1.5;
}
.v-dialog [data-slot="dialog-close"] {
  color: #aaa !important;
}
.v-form {
  flex-direction: column;
  gap: 17px;
  display: flex;
}
.v-form label {
  flex-direction: column;
  gap: 7px;
  min-width: 0;
  display: flex;
}
.v-form label > span {
  color: #8a8a8d;
  font-size: 12px;
}
.v-form-row {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}
.v-form-row.v-three {
  grid-template-columns: repeat(3, 1fr);
}
.v-form input,
.v-form textarea,
.v-form select,
.v-chat-input input {
  color: #f0f0ee !important;
  box-shadow: none !important;
  background: #151516 !important;
  border: 1px solid #ffffff29 !important;
  border-radius: 13px !important;
}
.v-form input,
.v-form select {
  height: 47px !important;
}
.v-form textarea {
  resize: vertical;
  min-height: 100px !important;
}
.v-form [data-slot="native-select-wrapper"] {
  width: 100%;
}
.v-select {
  width: 100% !important;
}
.v-diagnostic-note {
  background: #c7aa750f;
  border: 1px solid #c7aa7533;
  border-radius: 15px;
  gap: 12px;
  padding: 15px;
  display: flex;
}
.v-diagnostic-note svg {
  width: 23px;
  height: 23px;
  color: var(--gold);
  flex: none;
}
.v-diagnostic-note p {
  flex-direction: column;
  gap: 4px;
  margin: 0;
  display: flex;
}
.v-diagnostic-note strong {
  font-size: 13px;
  font-weight: 500;
}
.v-diagnostic-note span {
  color: #949497;
  font-size: 12px;
  line-height: 1.4;
}
.v-content-list {
  flex-direction: column;
  gap: 10px;
  display: flex;
}
.v-content-list > button {
  color: #ececea;
  text-align: left;
  cursor: pointer;
  background: #131314;
  border: 1px solid #ffffff21;
  border-radius: 15px;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 82px;
  padding: 12px;
  display: grid;
}
.v-content-number {
  color: #656568;
  font-size: 11px;
}
.v-content-icon {
  border: 1px solid #ffffff26;
  border-radius: 12px;
  place-items: center;
  width: 45px;
  height: 45px;
  display: grid;
}
.v-content-copy {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}
.v-content-copy small {
  color: #77777a;
  font-size: 10px;
}
.v-content-copy strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 14px;
  font-weight: 500;
  overflow: hidden;
}
.v-content-list > button > svg {
  color: #77777a;
  width: 20px;
  height: 20px;
}
.v-content-list .v-complete {
  color: #8aac97;
}
.v-content-list .v-channel-link {
  color: #bca783;
}
.v-reader-visual {
  background: radial-gradient(circle at 50% 45%, #2c2c2e, #121213 60%);
  border: 1px solid #ffffff26;
  border-radius: 18px;
  place-items: center;
  height: clamp(160px, 34cqw, 250px);
  display: grid;
}
.v-reader-visual svg {
  stroke-width: 1.3px;
  width: 58px;
  height: 58px;
}
.v-reader-lead {
  color: #d3d3d1;
  margin: 0;
  font-size: clamp(16px, 2.7cqw, 20px);
  line-height: 1.45;
}
.v-reader-body {
  flex-direction: column;
  gap: 15px;
  display: flex;
}
.v-reader-body > p {
  color: #a0a0a2;
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
}
.v-reader-lock {
  background: linear-gradient(#0d0d0ead, #111 24%);
  border: 1px solid #c7aa7540;
  border-radius: 18px;
  flex-direction: column;
  align-items: flex-start;
  gap: 11px;
  min-height: 235px;
  margin-top: -6px;
  padding: 25px;
  display: flex;
}
.v-reader-lock > svg {
  width: 28px;
  height: 28px;
  color: var(--gold);
}
.v-reader-lock strong {
  font-size: 20px;
  font-weight: 500;
}
.v-reader-lock span {
  color: #8d8d90;
  font-size: 13px;
  line-height: 1.5;
}
.v-reader-lock .v-primary {
  margin-top: auto;
}
.v-subscribe-dialog {
  text-align: center;
}
.v-subscribe-mark {
  width: 100px;
  height: 100px;
  color: var(--gold);
  background: radial-gradient(circle, #27231c, #111);
  border: 1px solid #c7aa7540;
  border-radius: 50%;
  place-items: center;
  margin: 5px auto 8px;
  display: grid;
}
.v-subscribe-mark svg {
  stroke-width: 1.3px;
  width: 47px;
  height: 47px;
}
.v-subscribe-dialog ul {
  text-align: left;
  flex-direction: column;
  gap: 11px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}
.v-subscribe-dialog li {
  color: #c1c1c0;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  display: flex;
}
.v-subscribe-dialog li svg {
  width: 18px;
  height: 18px;
  color: var(--gold);
}
.v-price {
  justify-content: center;
  align-items: baseline;
  gap: 7px;
  display: flex;
}
.v-price strong {
  font-size: 34px;
  font-weight: 500;
}
.v-price span {
  color: #77777a;
  font-size: 13px;
}
.v-project-detail-grid {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}
.v-project-detail-grid > div {
  background: #131314;
  border: 1px solid #ffffff21;
  border-radius: 15px;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100px;
  padding: 15px;
  display: flex;
}
.v-project-detail-grid span {
  color: #77777a;
  font-size: 11px;
}
.v-project-detail-grid strong {
  font-size: 19px;
  font-weight: 500;
}
.v-project-team {
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 12px 0;
  display: flex;
}
.v-project-team > span {
  color: #8b8b8d;
  font-size: 12px;
}
.v-project-team > div {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  display: flex;
}
.v-project-team > div > span {
  background: #242426;
  border: 1px solid #ffffff21;
  border-radius: 999px;
  place-items: center;
  min-height: 30px;
  padding: 0 10px;
  font-size: 10px;
  display: grid;
}
.v-project-team small {
  color: #77777a;
}
.v-chat-dialog {
  grid-template-rows: auto 1fr auto auto;
  overflow: hidden;
  color: #f1f1ef !important;
  background: #080809 !important;
  border: 1px solid #ffffff2e !important;
  border-radius: 24px !important;
  gap: 0 !important;
  width: min(100cqw, 760px) !important;
  max-width: 760px !important;
  height: min(94svh, 920px) !important;
  max-height: 94svh !important;
  padding: 0 !important;
  display: grid !important;
}
.v-chat-header {
  border-bottom: 1px solid #ffffff1a;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 13px;
  min-height: 76px;
  padding: 13px 17px;
  display: grid;
}
.v-chat-header button {
  color: #ddd;
  cursor: pointer;
  background: #151516;
  border: 1px solid #ffffff26;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  display: grid;
}
.v-chat-header button svg {
  width: 18px;
  height: 18px;
}
.v-chat-header > div {
  flex-direction: column;
  min-width: 0;
  display: flex;
}
.v-chat-header span {
  font-size: 15px;
  font-weight: 500;
}
.v-chat-header small {
  color: #707073;
  font-size: 10px;
}
.v-chat-header > svg {
  width: 27px;
  height: 27px;
}
.v-chat-messages {
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  display: flex;
  overflow-y: auto;
}
.v-message {
  align-items: flex-end;
  gap: 8px;
  display: flex;
}
.v-message.user {
  justify-content: flex-end;
}
.v-message-avatar {
  background: #19191a;
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 31px;
  height: 31px;
  display: grid;
}
.v-message-avatar svg {
  width: 16px;
  height: 16px;
}
.v-message p {
  color: #c8c8c7;
  background: #141415;
  border: 1px solid #ffffff1f;
  border-radius: 16px 16px 16px 4px;
  max-width: 80%;
  margin: 0;
  padding: 13px 15px;
  font-size: 13px;
  line-height: 1.52;
}
.v-message.user p {
  color: #111;
  background: #efefed;
  border: 0;
  border-radius: 16px 16px 4px;
}
.v-plan-button {
  color: #d4c3a3;
  cursor: pointer;
  background: #c7aa7512;
  border: 1px solid #c7aa7540;
  border-radius: 12px;
  align-self: flex-start;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  margin-left: 40px;
  padding: 0 13px;
  font-size: 12px;
  display: flex;
}
.v-plan-button svg {
  width: 16px;
  height: 16px;
}
.v-chat-suggestions {
  gap: 7px;
  padding: 8px 16px 0;
  display: flex;
  overflow-x: auto;
}
.v-chat-suggestions button {
  color: #8f8f92;
  white-space: nowrap;
  cursor: pointer;
  background: #111112;
  border: 1px solid #ffffff1f;
  border-radius: 999px;
  min-height: 31px;
  padding: 0 11px;
  font-size: 10px;
}
.v-chat-input {
  grid-template-columns: 1fr auto;
  gap: 9px;
  padding: 12px 16px 16px;
  display: grid;
}
.v-chat-input input {
  height: 49px !important;
}
.v-chat-input button {
  width: 49px;
  height: 49px;
  color: #111 !important;
  background: #efefed !important;
  border-radius: 14px !important;
}
.v-opportunity-list article,
.v-feed-list article {
  background: #131314;
  border: 1px solid #ffffff21;
  border-radius: 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 17px;
  display: flex;
}
.v-opportunity-list article > span,
.v-feed-list article > span {
  color: #7b7b7e;
  font-size: 10px;
}
.v-opportunity-list article > strong {
  font-size: 17px;
  font-weight: 500;
}
.v-opportunity-list article > p,
.v-feed-list article > p {
  color: #9b9b9d;
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
}
.v-delete-inline {
  color: #7d7d80;
  cursor: pointer;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  padding: 0;
  font-size: 11px;
  display: flex;
}
.v-delete-inline svg {
  width: 14px;
  height: 14px;
}
.v-community-list article > i {
  background: #202022;
  border-radius: 14px;
}
.v-community-list article > i svg {
  width: 24px;
  height: 24px;
}
.v-feed-list article > button,
.v-feed-list article > div > button {
  color: #77777a;
  cursor: pointer;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 5px;
  min-height: 29px;
  padding: 0;
  display: flex;
}
.v-feed-list article > div {
  justify-content: space-between;
  width: 100%;
  display: flex;
}
.v-feed-list button svg {
  width: 16px;
  height: 16px;
}
.v-feed-list button.liked {
  color: #c78787;
}
.v-empty {
  text-align: center;
  background: #0d0d0e;
  border: 1px dashed #ffffff29;
  border-radius: 18px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 240px;
  padding: 24px;
  display: flex;
}
.v-empty > i {
  color: #8c8c8f;
  background: #151516;
  border: 1px solid #ffffff21;
  border-radius: 50%;
  place-items: center;
  width: 54px;
  height: 54px;
  font-style: normal;
  display: grid;
}
.v-empty svg {
  width: 25px;
  height: 25px;
}
.v-empty strong {
  margin-top: 14px;
  font-size: 17px;
  font-weight: 500;
}
.v-empty p {
  color: #77777a;
  max-width: 320px;
  margin: 7px 0 17px;
  font-size: 12px;
  line-height: 1.5;
}
@media (width<=600px) {
  .v-header {
    grid-template-columns: 58px 1fr 58px;
  }
  .v-main {
    padding-top: 3px;
  }
  .v-hero-card,
  .v-ai-hero,
  .v-opportunity-hero,
  .v-work-hero {
    min-height: 330px;
  }
  .v-hero-card,
  .v-ai-hero,
  .v-opportunity-hero {
    grid-template-columns: 1.24fr 0.76fr;
  }
  .v-hero-card {
    grid-template-columns: minmax(0, 1.32fr) minmax(108px, 0.68fr);
  }
  .v-hero-copy h2,
  .v-ai-hero h2 {
    font-size: clamp(33px, 10cqw, 44px);
  }
  .v-hero-copy p {
    max-width: 170px;
  }
  .v-hero-copy .v-primary,
  .v-ai-hero .v-primary,
  .v-opportunity-hero .v-primary {
    min-height: 43px;
    padding: 0 15px !important;
    font-size: 13px !important;
  }
  .v-media-stack {
    width: min(100%, 132px);
    transform: translate(5px, 12px) rotate(4deg);
  }
  .v-home-grid {
    gap: 10px;
  }
  .v-section-card {
    min-height: 300px;
    padding: 18px;
  }
  .v-section-card h4 {
    font-size: 22px;
  }
  .v-material-grid {
    gap: 5px;
  }
  .v-role-grid {
    grid-template-columns: 1fr 1fr;
  }
  .v-role-grid button {
    justify-content: flex-start;
    min-height: 73px;
    padding-left: 17px;
  }
  .v-role-grid button:last-child {
    grid-column: auto;
  }
  .v-goals-card > div {
    grid-template-columns: auto 1fr;
  }
  .v-goals-card > div > b {
    grid-column: 2;
  }
  .v-opportunity-hero h2 {
    font-size: clamp(29px, 8cqw, 38px);
  }
  .v-opportunity-hero .v-link-object {
    transform: translate(8px);
  }
  .v-env-card {
    min-height: 235px;
    padding: 18px;
  }
  .v-env-card > span {
    font-size: 20px;
  }
  .v-community-card small {
    font-size: 9px;
  }
  .v-feed-card i {
    min-height: 61px;
    padding: 9px;
  }
  .v-feed-card i svg {
    width: 23px;
    height: 23px;
  }
  .v-online-card > div {
    gap: 5px;
  }
  .v-people-card article {
    grid-template-columns: auto 1fr auto;
  }
  .v-bottom-nav {
    height: calc(78px + env(safe-area-inset-bottom));
    padding-top: 6px;
  }
  .v-bottom-nav svg {
    width: 25px;
    height: 25px;
  }
  .v-bottom-nav span {
    font-size: 10px;
  }
  .v-form-row.v-three {
    grid-template-columns: 1fr;
  }
  .v-chat-dialog {
    border: 0 !important;
    border-radius: 0 !important;
    width: 100cqw !important;
    height: 100svh !important;
    max-height: 100svh !important;
  }
}
@media (width<=410px) {
  .v-section-heading button {
    display: none;
  }
  .v-hero-copy > span {
    font-size: 11px;
  }
  .v-hero-copy p {
    font-size: 14px;
  }
  .v-hero-card {
    grid-template-columns: minmax(0, 1fr) 96px;
    padding-inline: 20px;
  }
  .v-hero-copy h2 {
    font-size: clamp(28px, 9.5cqw, 37px);
  }
  .v-media-stack {
    width: 104px;
    transform: translate(12px, 10px) rotate(4deg);
  }
  .v-section-card {
    min-height: 278px;
  }
  .v-section-card > p {
    font-size: 12px;
  }
  .v-project-money {
    gap: 13px;
  }
  .v-project-copy {
    grid-template-columns: 1fr;
  }
  .v-project-copy em {
    justify-self: start;
  }
  .v-date-strip {
    margin-right: calc(-1 * var(--side));
    padding-right: var(--side);
  }
  .v-profile-info-grid,
  .v-form-row {
    grid-template-columns: 1fr;
  }
}
.v-app-boot {
  color: #777;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  font-size: 12px;
  display: flex;
}
.v-boot-mark {
  color: #f3f3f1;
  background: #151516;
  border-radius: 22px;
  place-items: center;
  width: 66px;
  height: 66px;
  font-size: 27px;
  animation: 1.6s ease-in-out infinite v-boot-pulse;
  display: grid;
  box-shadow: inset 0 0 0 1px #ffffff1f;
}
@keyframes v-boot-pulse {
  50% {
    transform: translateY(-4px);
    box-shadow:
      inset 0 0 0 1px #ffffff38,
      0 18px 45px #0000008c;
  }
}
.v-quiz-shell {
  width: min(100%, 480px);
  min-height: var(--tg-viewport-stable-height, 100svh);
  color: #f4f4f2;
  background:
    radial-gradient(circle at 72% 8%, #caa56d2b, #0000 26%),
    radial-gradient(circle at 18% 44%, #ffffff0e, #0000 28%),
    linear-gradient(#10100f, #050505 70%);
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
}
.v-quiz-shell:after {
  content: "";
  pointer-events: none;
  opacity: 0.34;
  mix-blend-mode: soft-light;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E");
  position: absolute;
  inset: 0;
}
.v-quiz-route {
  opacity: 0.48;
  pointer-events: none;
  position: absolute;
  inset: 0;
}
.v-quiz-route path {
  fill: none;
  stroke: #ffffff1a;
  stroke-width: 17px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v-quiz-route path.active {
  stroke: #ecd6af6b;
  stroke-width: 2px;
  filter: drop-shadow(0 0 8px #e0bf8957);
}
.v-quiz-route circle {
  fill: #d3c09e;
  stroke: #ffffff6b;
  stroke-width: 2px;
  filter: drop-shadow(0 0 9px #e2c18980);
}
.v-quiz-header {
  min-height: 92px;
  padding: max(20px, env(safe-area-inset-top)) 28px 12px;
  z-index: 3;
  grid-template-columns: 44px 1fr 44px;
  align-items: center;
  display: grid;
  position: relative;
}
.v-quiz-header > strong {
  letter-spacing: -0.04em;
  justify-self: center;
  font-size: 24px;
  font-weight: 500;
}
.v-quiz-header > span:last-child {
  color: #777;
  letter-spacing: 0.15em;
  justify-self: end;
  font-size: 10px;
}
.v-quiz-header button {
  color: #ddd;
  cursor: pointer;
  background: #ffffff0e;
  border: 0;
  border-radius: 13px;
  place-items: center;
  width: 42px;
  height: 42px;
  display: grid;
}
.v-quiz-header svg {
  width: 19px;
  height: 19px;
}
.v-quiz-welcome,
.v-quiz-result,
.v-quiz-question {
  min-height: calc(100svh - 92px);
  padding: clamp(36px, 9cqw, 56px) 32px max(36px, env(safe-area-inset-bottom));
  z-index: 2;
  animation: 0.36s ease-out both v-quiz-in;
  position: relative;
}
@keyframes v-quiz-in {
  0% {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.v-quiz-welcome,
.v-quiz-result {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}
.v-quiz-kicker {
  color: #c9ad7e;
  letter-spacing: 0.16em;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 600;
  display: inline-flex;
}
.v-quiz-kicker svg {
  width: 17px;
  height: 17px;
}
.v-quiz-welcome h1,
.v-quiz-result h1 {
  letter-spacing: -0.055em;
  max-width: 365px;
  margin: 24px 0 16px;
  font-size: clamp(46px, 12cqw, 66px);
  font-weight: 500;
  line-height: 0.95;
}
.v-quiz-welcome > p,
.v-quiz-result > p {
  color: #989896;
  max-width: 355px;
  margin: 0 0 30px;
  font-size: 15px;
  line-height: 1.55;
}
.v-quiz-cta {
  box-shadow: 0 15px 35px #00000047;
  color: #111 !important;
  background: #f1f1ee !important;
  border-radius: 18px !important;
  min-height: 58px !important;
  padding-inline: 21px !important;
  font-weight: 600 !important;
}
.v-quiz-cta svg {
  width: 18px;
  height: 18px;
}
.v-quiz-welcome > small {
  color: #666;
  margin-top: 15px;
  font-size: 10px;
}
.v-quiz-progress {
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 32px;
  display: grid;
}
.v-quiz-progress i {
  background: #ffffff1f;
  border-radius: 999px;
  height: 4px;
  transition:
    background 0.25s,
    box-shadow 0.25s;
}
.v-quiz-progress i.active {
  background: #d7bd91;
  box-shadow: 0 0 12px #d3b17a47;
}
.v-quiz-question > span {
  color: #85837f;
  letter-spacing: 0.19em;
  font-size: 9px;
}
.v-quiz-question h1 {
  letter-spacing: -0.045em;
  max-width: 390px;
  margin: 22px 0 11px;
  font-size: clamp(32px, 8.7cqw, 42px);
  font-weight: 500;
  line-height: 1.03;
}
.v-quiz-question > p {
  color: #8c8b89;
  margin: 0 0 22px;
  font-size: 14px;
  line-height: 1.5;
}
.v-quiz-options {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-quiz-options button {
  color: #adadaa;
  text-align: left;
  cursor: pointer;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: linear-gradient(110deg, #ffffff14, #ffffff06);
  border: 1px solid #ffffff2b;
  border-radius: 19px;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  width: 100%;
  min-height: 58px;
  padding: 0 19px;
  transition:
    transform 0.18s,
    border-color 0.18s,
    background 0.18s,
    color 0.18s,
    opacity 0.18s;
  display: flex;
}
.v-quiz-options button:disabled {
  cursor: default;
  opacity: 0.72;
}
.v-quiz-options button:hover,
.v-quiz-options button.selected {
  color: #f0eee9;
  background: #d2b1791f;
  border-color: #e1c69799;
  transform: translate(3px);
}
.v-quiz-options span {
  font-size: 16px;
  line-height: 1.3;
}
.v-quiz-options small {
  color: #555;
  letter-spacing: 0.16em;
  font-size: 9px;
}
.v-quiz-result-card {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: #ffffff0e;
  border: 1px solid #ffffff24;
  border-radius: 22px;
  align-items: center;
  gap: 15px;
  width: 100%;
  max-width: 370px;
  min-height: 92px;
  margin: 0 0 22px;
  padding: 17px;
  display: flex;
}
.v-quiz-result-card > i {
  color: #111;
  background: #e6e3dc;
  border-radius: 14px;
  place-items: center;
  width: 43px;
  height: 43px;
  font-style: normal;
  display: grid;
}
.v-quiz-result-card svg {
  width: 19px;
  height: 19px;
}
.v-quiz-result-card > div {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-quiz-result-card small {
  color: #777;
  font-size: 10px;
}
.v-quiz-result-card strong {
  font-size: 16px;
  font-weight: 500;
}
.v-quiz-edit {
  color: #747472;
  cursor: pointer;
  background: 0 0;
  border: 0;
  margin: 13px 0 0;
  font-size: 11px;
}
@media (width<=390px) {
  .v-quiz-welcome,
  .v-quiz-result,
  .v-quiz-question {
    padding-inline: 24px;
  }
  .v-quiz-question {
    padding-top: 25px;
  }
  .v-quiz-progress {
    margin-bottom: 31px;
  }
  .v-quiz-options {
    gap: 7px;
  }
  .v-quiz-options button {
    border-radius: 17px;
    min-height: 54px;
    padding-inline: 16px;
  }
  .v-quiz-options span {
    font-size: 14px;
  }
}
@media (height<=720px) {
  .v-quiz-header {
    min-height: 76px;
    padding-top: max(14px, env(safe-area-inset-top));
  }
  .v-quiz-question {
    min-height: calc(100svh - 76px);
    padding-top: 16px;
    padding-bottom: 20px;
  }
  .v-quiz-progress {
    margin-bottom: 20px;
  }
  .v-quiz-question h1 {
    margin-top: 16px;
    font-size: clamp(28px, 8cqw, 36px);
  }
  .v-quiz-question > p {
    margin-bottom: 15px;
    font-size: 13px;
  }
  .v-quiz-options {
    gap: 6px;
  }
  .v-quiz-options button {
    border-radius: 16px;
    min-height: 49px;
  }
}
@media (width<=360px) {
  .v-people-card article,
  .v-people-list article {
    grid-template-columns: auto 1fr;
  }
  .v-people-card article > button,
  .v-people-list article > button {
    grid-column: 2;
    justify-self: start;
  }
}
@media (width>=1000px) {
  body {
    background: #060606;
  }
  .v-shell {
    box-shadow:
      0 0 0 1px #ffffff0d,
      0 0 80px #0009;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  :before,
  :after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.v-section-card {
  isolation: isolate;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  overflow: hidden;
}
.v-section-card h4,
.v-section-card > p,
.v-section-card .v-card-arrow {
  z-index: 4;
  position: relative;
}
.v-section-card .v-card-arrow {
  position: absolute;
}
.v-mini-stack,
.v-material-grid {
  z-index: 1;
  height: 48%;
  bottom: 5%;
}
.v-back svg {
  width: 23px;
  height: 23px;
}
.v-sheet-tools {
  border-top: 1px solid #ffffff1a;
  margin-top: 12px;
}
:is(
  .v-shell:has(.v-subpage) .v-main,
  .v-shell:has(.v-chat-page) .v-main,
  .v-shell:has(.v-reflection-page) .v-main,
  .v-shell:has(.v-admin-panel) .v-main,
  .v-shell:has(.v-building-loader) .v-main
) {
  padding-bottom: calc(44px + env(safe-area-inset-bottom));
}
.v-subpage-toolbar {
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  display: flex;
}
.v-subpage-toolbar button {
  color: #aaa;
  cursor: pointer;
  background: #101011;
  border: 1px solid #ffffff21;
  border-radius: 999px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 13px;
  font-size: 11px;
  display: flex;
}
.v-subpage-toolbar svg {
  width: 15px;
  height: 15px;
}
.v-page-intro,
.v-chat-page-head,
.v-reflection-hero,
.v-admin-hero {
  border-radius: 24px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 315px;
  padding: 29px;
  display: flex;
  overflow: hidden;
}
.v-page-intro > span,
.v-chat-page-head span,
.v-reflection-hero > span,
.v-admin-hero span {
  color: #aaa;
  letter-spacing: 0.05em;
  font-size: 12px;
}
.v-page-intro h2,
.v-chat-page-head h2,
.v-reflection-hero h2,
.v-admin-hero h2 {
  letter-spacing: -0.045em;
  max-width: 330px;
  margin: 25px 0 10px;
  font-family:
    Arial Narrow,
    Helvetica Neue Condensed,
    sans-serif;
  font-size: clamp(36px, 9cqw, 48px);
  line-height: 0.95;
}
.v-page-intro p,
.v-chat-page-head p,
.v-reflection-hero p,
.v-admin-hero p {
  color: #8c8c8f;
  max-width: 320px;
  margin: 0 0 24px;
  font-size: 13px;
  line-height: 1.5;
}
.v-filter-bar,
.v-admin-filters {
  grid-template-columns: minmax(0, 1fr) 135px;
  gap: 9px;
  display: grid;
}
.v-filter-bar > label,
.v-admin-filters > label {
  background: #111112;
  border: 1px solid #ffffff24;
  border-radius: 13px;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  height: 45px;
  padding: 0 11px;
  display: grid;
}
.v-filter-bar label svg,
.v-admin-filters label svg {
  color: #777;
  width: 17px;
  height: 17px;
}
.v-filter-bar label input,
.v-admin-filters label input {
  height: 42px !important;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
  padding: 0 !important;
}
.v-filter-bar > label:only-child {
  grid-column: 1/-1;
}
.v-filter-bar [data-slot="native-select-wrapper"],
.v-admin-filters [data-slot="native-select-wrapper"] {
  width: 100%;
}
.v-filter-bar select,
.v-admin-filters select {
  background-color: #111112 !important;
  border-color: #ffffff24 !important;
  height: 45px !important;
  font-size: 11px !important;
}
.v-people-page-list,
.v-opportunity-page-list,
.v-community-page-list,
.v-feed-page-list,
.v-admin-list,
.v-broadcast-history {
  flex-direction: column;
  gap: 10px;
  display: flex;
}
.v-people-page-list > article,
.v-community-page-list > article {
  background: linear-gradient(145deg, #151516, #0d0d0e);
  border: 1px solid #ffffff24;
  border-radius: 17px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 13px;
  min-height: 100px;
  padding: 14px;
  display: grid;
}
.v-people-page-list article > i,
.v-community-page-list article > i {
  color: #eee;
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  place-items: center;
  width: 45px;
  height: 45px;
  font-style: normal;
  display: grid;
}
.v-community-page-list article > i {
  background: #202022;
  border-radius: 14px;
}
.v-community-page-list article > i svg {
  width: 22px;
  height: 22px;
}
.v-people-page-list article > div,
.v-community-page-list article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-people-page-list strong,
.v-community-page-list strong {
  font-size: 15px;
  font-weight: 500;
}
.v-people-page-list small,
.v-community-page-list small {
  color: #888;
  font-size: 11px;
}
.v-people-page-list p {
  color: #707073;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 4px 0 0;
  font-size: 10px;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
}
.v-opportunity-page-list > article,
.v-feed-page-list > article {
  background: #111112;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
  padding: 18px;
  display: flex;
}
.v-opportunity-page-list article > span,
.v-feed-page-list article > span {
  color: #777;
  font-size: 10px;
}
.v-opportunity-page-list article > strong {
  font-size: 18px;
  font-weight: 500;
}
.v-opportunity-page-list article > p,
.v-feed-page-list article > p {
  color: #a0a0a2;
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
}
.v-feed-page-list article > div {
  justify-content: space-between;
  width: 100%;
  display: flex;
}
.v-feed-page-list button {
  color: #777;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 5px;
  padding: 4px;
  display: flex;
}
.v-feed-page-list button.liked {
  color: #c88989;
}
.v-feed-page-list svg {
  width: 16px;
  height: 16px;
}
.v-page-empty {
  color: #707073;
  text-align: center;
  border: 1px dashed #ffffff26;
  border-radius: 18px;
  align-content: center;
  place-items: center;
  gap: 10px;
  min-height: 170px;
  padding: 24px;
  display: grid;
}
.v-page-empty svg {
  width: 25px;
  height: 25px;
}
.v-page-empty p {
  max-width: 280px;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}
.v-questionnaire {
  background: #0e0e0f;
  border: 1px solid #ffffff24;
  border-radius: 20px;
  padding: 20px;
}
.v-member-picker {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-member-chips {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  display: flex;
}
.v-member-chips > small {
  color: #6f6f72;
}
.v-member-chips button {
  color: #ddd;
  cursor: pointer;
  background: #19191a;
  border: 1px solid #ffffff24;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 0 10px;
  font-size: 11px;
  display: flex;
}
.v-member-chips svg {
  width: 13px;
  height: 13px;
}
.v-member-suggestions {
  background: #121213;
  border: 1px solid #ffffff21;
  border-radius: 13px;
  flex-direction: column;
  padding: 5px;
  display: flex;
}
.v-member-suggestions button {
  color: #bcbcbc;
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 9px;
  align-items: center;
  gap: 9px;
  min-height: 38px;
  padding: 0 9px;
  font-size: 12px;
  display: flex;
}
.v-member-suggestions button:hover {
  background: #1d1d1f;
}
.v-member-suggestions svg {
  width: 16px;
  height: 16px;
}
.v-project-menu {
  background: #151516 !important;
  border-color: #ffffff29 !important;
  min-width: 170px !important;
}
.v-project-more {
  justify-content: center;
  width: 36px;
}
.v-project-actions > button:first-child {
  margin-right: auto;
}
.v-reflection-card {
  border-radius: clamp(18px, 3cqw, 26px);
  flex-direction: column;
  align-items: flex-start;
  gap: 22px;
  padding: clamp(22px, 4cqw, 34px);
  display: flex;
}
.v-reflection-card > div {
  align-items: center;
  gap: 14px;
  display: flex;
}
.v-reflection-card > div > svg {
  width: 32px;
  height: 32px;
}
.v-reflection-card span {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-reflection-card small {
  color: #89898c;
  font-size: 11px;
}
.v-reflection-card strong {
  font-size: 16px;
  font-weight: 500;
}
.v-reflection-card em {
  color: #6f6f72;
  font-size: 10px;
  font-style: normal;
}
.v-chat-page-head {
  grid-template-columns: 1fr auto;
  align-items: center;
  min-height: 265px;
  display: grid;
}
.v-chat-page-head > div {
  z-index: 2;
  position: relative;
}
.v-chat-page-head > svg {
  color: #ddd;
  opacity: 0.7;
  width: 70px;
  height: 70px;
}
.v-chat-page .v-chat-messages {
  background: #09090a;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  min-height: 360px;
  max-height: 58svh;
  padding: 15px;
}
.v-chat-page .v-chat-suggestions {
  padding: 0;
}
.v-chat-page-input {
  z-index: 5;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  background: #09090af0;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  padding: 9px;
  position: sticky;
  bottom: 12px;
}
.v-reflection-hero small {
  color: #777;
  font-size: 11px;
}
.v-reflection-form {
  gap: 11px;
}
.v-reflection-form > label:not(.v-reflection-check) {
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  grid-template-columns: 31px 1fr;
  gap: 5px 10px;
  padding: 17px;
  display: grid;
}
.v-reflection-form label > b {
  color: #666;
  grid-row: 1 / span 2;
  font-size: 12px;
  font-weight: 500;
}
.v-reflection-form label > span {
  color: #ddd;
  font-size: 14px;
}
.v-reflection-form label > textarea {
  grid-column: 2;
  min-height: 80px !important;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
  padding: 8px 0 0 !important;
}
.v-reflection-check {
  cursor: pointer;
  background: #0e0e0f;
  border: 1px solid #ffffff21;
  border-radius: 17px;
  grid-template-columns: auto 1fr;
  align-items: center;
  padding: 15px;
  gap: 12px !important;
  display: grid !important;
}
.v-reflection-check > input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}
.v-reflection-check > i {
  color: #0000;
  border: 1px solid #ffffff2e;
  border-radius: 9px;
  place-items: center;
  width: 31px;
  height: 31px;
  font-style: normal;
  display: grid;
}
.v-reflection-check input:checked + i {
  color: #111;
  background: #eee;
}
.v-reflection-check svg {
  width: 17px;
  height: 17px;
}
.v-reflection-check > span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-reflection-check strong {
  font-size: 13px;
  font-weight: 500;
}
.v-reflection-check small {
  color: #777;
  font-size: 10px;
  line-height: 1.4;
}
.v-building-loader {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 65svh;
  display: flex;
}
.v-admin-load-error {
  text-align: center;
  border: 1px dashed #ffffff24;
  border-radius: 22px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 55svh;
  padding: 28px;
  display: flex;
}
.v-admin-load-error > svg {
  color: #b98383;
  width: 42px;
  height: 42px;
}
.v-admin-load-error > strong {
  margin-top: 15px;
  font-size: 17px;
  font-weight: 500;
}
.v-admin-load-error > p {
  color: #777;
  max-width: 310px;
  margin: 7px 0 18px;
  font-size: 11px;
  line-height: 1.5;
}
.v-building-scene {
  place-items: center;
  width: 180px;
  height: 190px;
  display: grid;
  position: relative;
}
.v-building-scene > svg {
  color: #dededc;
  stroke-width: 1.2px;
  width: 92px;
  height: 92px;
  animation: 1.4s ease-out both v-build-rise;
}
.v-building-scene > i {
  background: linear-gradient(90deg, #0000, #bbb, #0000);
  height: 1px;
  animation: 1.2s ease-in-out infinite v-floor;
  position: absolute;
  left: 26px;
  right: 26px;
}
.v-building-scene > i:first-of-type {
  bottom: 45px;
}
.v-building-scene > i:nth-of-type(2) {
  animation-delay: 0.2s;
  bottom: 74px;
}
.v-building-scene > i:nth-of-type(3) {
  animation-delay: 0.4s;
  bottom: 103px;
}
.v-building-scene > span {
  background: #151516;
  border: 1px solid #ffffff26;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  display: grid;
  position: absolute;
  top: 28px;
  right: 19px;
}
.v-building-scene span svg {
  width: 19px;
  height: 19px;
  animation: 1s ease-in-out infinite v-pulse;
}
.v-building-loader > strong {
  font-size: 18px;
  font-weight: 500;
}
.v-building-loader > p {
  color: #777;
  max-width: 280px;
  margin: 7px 0 18px;
  font-size: 12px;
}
.v-building-loader > div:last-child {
  gap: 6px;
  display: flex;
}
.v-building-loader > div:last-child i {
  background: #555;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  animation: 1s ease-in-out infinite v-dot;
}
.v-building-loader > div:last-child i:nth-child(2) {
  animation-delay: 0.15s;
}
.v-building-loader > div:last-child i:nth-child(3) {
  animation-delay: 0.3s;
}
.v-building-loader > div:last-child i:nth-child(4) {
  animation-delay: 0.45s;
}
@keyframes v-build-rise {
  0% {
    opacity: 0;
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes v-floor {
  0%,
  to {
    opacity: 0.2;
    transform: scaleX(0.65);
  }
  50% {
    opacity: 1;
    transform: scaleX(1);
  }
}
@keyframes v-dot {
  50% {
    background: #eee;
    transform: translateY(-4px);
  }
}
.v-admin-hero {
  grid-template-columns: 1fr auto;
  align-items: center;
  min-height: 290px;
  display: grid;
}
.v-admin-hero > div {
  z-index: 2;
  position: relative;
}
.v-admin-hero > svg {
  color: #cfcfcd;
  stroke-width: 1.1px;
  width: 82px;
  height: 82px;
}
.v-admin-tabs {
  border: 1px solid #ffffff1f;
  border-radius: 14px;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
  width: 100%;
  background: #0d0d0e !important;
  height: auto !important;
  padding: 5px !important;
  display: grid !important;
}
.v-admin-tabs button {
  min-width: 0;
  min-height: 38px;
  border-radius: 10px !important;
  padding: 0 5px !important;
  font-size: 10px !important;
}
.v-admin-tab {
  flex-direction: column;
  gap: 14px;
  margin-top: 14px;
  display: flex;
}
.v-admin-metrics {
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  display: grid;
}
.v-admin-metrics article {
  background: linear-gradient(145deg, #171718, #0d0d0e);
  border: 1px solid #ffffff24;
  border-radius: 18px;
  flex-direction: column;
  align-items: flex-start;
  min-height: 130px;
  padding: 16px;
  display: flex;
}
.v-admin-metrics svg {
  color: #aaa;
  width: 22px;
  height: 22px;
}
.v-admin-metrics span {
  color: #777;
  margin-top: auto;
  font-size: 10px;
}
.v-admin-metrics strong {
  margin-top: 4px;
  font-size: 27px;
  font-weight: 500;
}
.v-health-card {
  background: #101011;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  padding: 17px;
}
.v-health-card .v-card-heading {
  margin-bottom: 9px;
}
.v-health-card .v-card-heading small {
  color: #666;
}
.v-health-row {
  border-top: 1px solid #ffffff14;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  display: grid;
}
.v-health-row > i {
  border-radius: 8px;
  place-items: center;
  width: 25px;
  height: 25px;
  font-style: normal;
  display: grid;
}
.v-health-row > i.ok {
  color: #86b497;
  background: #5d8f6f2b;
}
.v-health-row > i.warn {
  color: #c5a873;
  background: #b3915826;
}
.v-health-row svg {
  width: 14px;
  height: 14px;
}
.v-health-row span {
  font-size: 12px;
}
.v-health-row strong {
  color: #888;
  font-size: 10px;
  font-weight: 500;
}
.v-admin-summary {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}
.v-admin-summary > div {
  background: #0d0d0e;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  flex-direction: column;
  gap: 3px;
  padding: 14px;
  display: flex;
}
.v-admin-summary strong {
  font-size: 20px;
  font-weight: 500;
}
.v-admin-summary span {
  color: #777;
  font-size: 10px;
}
.v-admin-list > article,
.v-admin-user-row {
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 17px;
  padding: 13px;
}
.v-admin-list > article {
  grid-template-columns: auto 1fr;
  gap: 12px;
  display: grid;
}
.v-admin-list > article > div:nth-child(2) {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-admin-list > article > div:last-child {
  flex-wrap: wrap;
  grid-column: 2;
  gap: 7px;
  display: flex;
}
.v-admin-list strong {
  font-size: 14px;
  font-weight: 500;
}
.v-admin-list small {
  color: #777;
  font-size: 10px;
}
.v-admin-list p {
  color: #999;
  margin: 5px 0;
  font-size: 11px;
  line-height: 1.45;
}
.v-admin-list em,
.v-admin-user-row em {
  color: #aaa;
  background: #202022;
  border-radius: 999px;
  align-self: flex-start;
  padding: 4px 8px;
  font-size: 9px;
  font-style: normal;
}
.v-admin-list em[data-status="approved"],
.v-admin-user-row em[data-status="approved"] {
  color: #9bc0a8;
  background: #5d8f6f24;
}
.v-admin-list em[data-status="rejected"],
.v-admin-list em[data-status="blocked"],
.v-admin-user-row em[data-status="rejected"],
.v-admin-user-row em[data-status="blocked"] {
  color: #c18b8b;
  background: #a9373724;
}
.v-admin-avatar {
  object-fit: cover;
  color: #eee;
  background: #242426;
  border: 1px solid #ffffff2b;
  border-radius: 50%;
  place-items: center;
  width: 45px;
  height: 45px;
  font-style: normal;
  display: grid;
}
.v-admin-photo {
  background-position: 50%;
  background-size: cover;
}
.v-admin-user-row {
  color: #eee;
  text-align: left;
  cursor: pointer;
  grid-template-columns: auto 1fr auto auto auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  display: grid;
}
.v-admin-user-row > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-admin-user-row > svg {
  color: #777;
  width: 18px;
  height: 18px;
}
.v-admin-user-row > b {
  color: #d1d1d1;
  letter-spacing: 0.08em;
  background: #ffffff12;
  border-radius: 999px;
  padding: 4px 7px;
  font-size: 8px;
  font-weight: 600;
}
.v-admin-avatar svg {
  stroke-width: 1.5px;
  width: 19px;
  height: 19px;
}
.v-admin-control-card {
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  min-height: 82px;
  padding: 16px;
  display: flex;
}
.v-admin-control-card > div {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-admin-control-card strong {
  font-size: 14px;
  font-weight: 500;
}
.v-admin-control-card small {
  color: #777;
  font-size: 10px;
  line-height: 1.4;
}
.v-admin-control-card [data-slot="switch"] {
  width: 42px;
  height: 24px;
}
.v-admin-access-card {
  background: linear-gradient(145deg, #121213, #0b0b0c);
  border: 1px solid #ffffff24;
  border-radius: 18px;
  flex-direction: column;
  gap: 14px;
  padding: 16px;
  display: flex;
}
.v-admin-access-counters {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}
.v-admin-access-counters > span {
  color: #aaa;
  background: #ffffff0a;
  border: 1px solid #ffffff17;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 10px;
}
.v-admin-access-counters strong {
  color: #f1f1f1;
  font-size: 12px;
}
.v-admin-access-groups {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}
.v-admin-access-groups > div {
  background: #080809;
  border: 1px solid #ffffff17;
  border-radius: 14px;
  flex-direction: column;
  gap: 7px;
  padding: 11px;
  display: flex;
}
.v-admin-access-groups h3 {
  color: #aaa;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 1px 2px 5px;
  font-size: 9px;
  font-weight: 600;
}
.v-admin-access-groups p {
  color: #666;
  margin: 8px 2px;
  font-size: 10px;
}
.v-admin-access-groups button {
  color: #eee;
  text-align: left;
  cursor: pointer;
  background: #121214;
  border: 1px solid #ffffff14;
  border-radius: 12px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 9px;
  display: grid;
}
.v-admin-access-groups button > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-admin-access-groups button strong {
  font-size: 11px;
  font-weight: 550;
}
.v-admin-access-groups button small {
  color: #858589;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 9px;
  overflow: hidden;
}
.v-admin-access-groups button > svg {
  color: #666;
  width: 15px;
  height: 15px;
}
.v-admin-access-groups .v-admin-avatar {
  width: 34px;
  height: 34px;
}
.v-admin-recent {
  background: #0e0e0f;
  border: 1px solid #ffffff1f;
  border-radius: 18px;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  display: flex;
}
.v-admin-recent .v-card-heading {
  margin-bottom: 4px;
}
.v-admin-recent > p {
  color: #777;
  margin: 8px 0;
  font-size: 11px;
}
.v-admin-recent article {
  border-top: 1px solid #ffffff14;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 61px;
  padding-top: 9px;
  display: grid;
}
.v-admin-recent article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-admin-recent strong {
  font-size: 12px;
  font-weight: 500;
}
.v-admin-recent small {
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #777;
  font-size: 9px;
  overflow: hidden;
}
.v-admin-recent em {
  color: #aaa;
  background: #202022;
  border-radius: 999px;
  padding: 4px 7px;
  font-size: 8px;
  font-style: normal;
}
.v-admin-recent em[data-status="approved"] {
  color: #9bc0a8;
  background: #5d8f6f24;
}
.v-admin-bulk-bar {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 46px;
  display: flex;
}
.v-admin-bulk-bar > span {
  color: #888;
  font-size: 11px;
}
.v-admin-bulk-actions {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}
.v-admin-bulk-actions > button {
  min-width: 0;
}
.v-danger-ghost {
  color: #c88d8d !important;
  background: #a6373714 !important;
  border: 1px solid #b549493d !important;
  min-height: 38px !important;
  font-size: 10px !important;
}
.v-danger-wide {
  width: 100%;
  color: #d39a9a !important;
  background: #a637371a !important;
  border: 1px solid #b5494940 !important;
  min-height: 48px !important;
}
.v-admin-empty {
  color: #6f6f72;
  text-align: center;
  border: 1px dashed #ffffff24;
  border-radius: 17px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-height: 125px;
  padding: 18px;
  display: flex;
}
.v-admin-empty svg {
  width: 22px;
  height: 22px;
}
.v-admin-empty span {
  max-width: 230px;
  font-size: 10px;
  line-height: 1.45;
}
.v-dossier-diagnostic {
  background: #ffffff08;
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  grid-template-columns: 1fr 1fr;
  gap: 7px 11px;
  padding: 14px;
  display: grid;
}
.v-dossier-diagnostic > span {
  color: #b9b9bd;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  grid-column: 1/-1;
  font-size: 10px;
}
.v-dossier-diagnostic p {
  color: #aaa;
  margin: 0;
  font-size: 9px;
  line-height: 1.4;
}
.v-dossier-diagnostic b {
  color: #777;
  font-weight: 500;
}
.v-dossier-stats {
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  display: grid;
}
.v-dossier-stats > div {
  background: #121213;
  border: 1px solid #ffffff1f;
  border-radius: 13px;
  flex-direction: column;
  gap: 2px;
  padding: 12px;
  display: flex;
}
.v-dossier-stats strong {
  font-size: 20px;
  font-weight: 500;
}
.v-dossier-stats span {
  color: #777;
  font-size: 9px;
}
.v-dossier-profile {
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  flex-direction: column;
  gap: 6px;
  padding: 14px;
  display: flex;
}
.v-dossier-profile strong {
  font-size: 14px;
  font-weight: 500;
}
.v-dossier-profile p {
  color: #999;
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
}
.v-dossier-profile small {
  color: #777;
  font-size: 10px;
}
.v-dossier-content {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}
.v-dossier-content > section {
  background: #101011;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  flex-direction: column;
  gap: 6px;
  padding: 12px;
  display: flex;
}
.v-dossier-content section > span {
  color: #888;
  font-size: 10px;
}
.v-dossier-content section > i {
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #ccc;
  font-size: 10px;
  font-style: normal;
  overflow: hidden;
}
.v-dossier-content section > small {
  color: #666;
  font-size: 10px;
}
.v-admin-switch {
  cursor: pointer;
  border: 1px solid #ffffff1f;
  border-radius: 14px;
  grid-template-columns: auto 1fr;
  align-items: center;
  padding: 13px;
  gap: 10px !important;
  display: grid !important;
}
.v-admin-switch input {
  opacity: 0;
  position: absolute;
}
.v-admin-switch i {
  background: #29292b;
  border-radius: 999px;
  width: 36px;
  height: 21px;
  position: relative;
}
.v-admin-switch i:after {
  content: "";
  background: #888;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  transition: all 0.2s;
  position: absolute;
  top: 3px;
  left: 3px;
}
.v-admin-switch input:checked + i {
  background: #ddd;
}
.v-admin-switch input:checked + i:after {
  background: #111;
  left: 18px;
}
.v-admin-switch span {
  color: #bbb !important;
  font-size: 11px !important;
}
.v-daily-reminder {
  background: linear-gradient(145deg, #231e17e0, #0e0e0f 55%);
  border: 1px solid #debe893d;
  border-radius: 18px;
  padding: 17px;
}
.v-daily-reminder-head {
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  display: flex;
}
.v-daily-reminder-head > div {
  align-items: center;
  gap: 11px;
  min-width: 0;
  display: flex;
}
.v-daily-reminder-head > div > svg {
  color: #dec18f;
  flex: none;
  width: 22px;
  height: 22px;
}
.v-daily-reminder-head span {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.v-daily-reminder-head strong {
  color: #eee;
  font-size: 13px;
  font-weight: 500;
}
.v-daily-reminder-head small {
  color: #85817a;
  font-size: 9px;
  line-height: 1.45;
}
.v-daily-reminder-head > label {
  align-items: center;
  gap: 9px !important;
  display: flex !important;
}
.v-daily-reminder-head > label small {
  color: #a8a297;
  white-space: nowrap;
}
.v-daily-reminder-foot {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}
.v-daily-reminder-foot > small {
  color: #777;
  font-size: 9px;
}
.v-broadcast-layout {
  gap: 13px;
  display: grid;
}
.v-reminder-presets {
  background: #0e0e0f;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  gap: 14px;
  padding: 17px;
  display: grid;
}
.v-reminder-presets > div:first-child {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-reminder-presets > div:first-child span {
  color: #d9d9d7;
  letter-spacing: 0.1em;
  font-size: 11px;
}
.v-reminder-presets > div:first-child small {
  color: #777;
  max-width: 58ch;
  font-size: 10px;
  line-height: 1.45;
}
.v-reminder-presets > div:last-child {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-reminder-presets button {
  color: #c9c9c8;
  text-align: left;
  cursor: pointer;
  background: #151516;
  border: 1px solid #ffffff1f;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 12px;
  font-size: 10px;
  display: flex;
}
.v-reminder-presets button:hover {
  background: #1a1a1b;
  border-color: #ffffff3d;
}
.v-reminder-presets button svg {
  flex: none;
  width: 14px;
  height: 14px;
}
.v-broadcast-layout > form {
  background: #0e0e0f;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  padding: 17px;
}
.v-broadcast-actions {
  gap: 8px;
  display: flex;
}
.v-broadcast-actions > button {
  flex: 1;
}
.v-telegram-preview {
  background: linear-gradient(145deg, #192029, #101317);
  border: 1px solid #ffffff24;
  border-radius: 18px;
  flex-direction: column;
  align-items: stretch;
  gap: 11px;
  padding: 17px;
  display: flex;
}
.v-telegram-preview > div {
  align-items: center;
  gap: 8px;
  display: flex;
}
.v-telegram-preview svg {
  width: 20px;
  height: 20px;
}
.v-telegram-preview span {
  font-size: 12px;
  font-weight: 500;
}
.v-telegram-preview p {
  color: #ddd;
  white-space: pre-wrap;
  background: #222b35;
  border-radius: 13px 13px 13px 4px;
  min-height: 66px;
  margin: 0;
  padding: 12px;
  font-size: 12px;
  line-height: 1.45;
}
.v-telegram-preview button {
  color: #76b7e2;
  background: #5091be38;
  border: 0;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  display: flex;
}
.v-telegram-preview button svg {
  width: 14px;
  height: 14px;
}
.v-telegram-preview > small {
  color: #69747d;
  align-self: center;
  font-size: 9px;
}
.v-broadcast-history h3 {
  margin: 6px 0 0;
  font-size: 17px;
  font-weight: 500;
}
.v-broadcast-history article {
  background: #0e0e0f;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 10px;
  padding: 13px;
  display: grid;
}
.v-broadcast-history article > div {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}
.v-broadcast-history strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
  font-weight: 500;
  overflow: hidden;
}
.v-broadcast-history small {
  color: #777;
  font-size: 9px;
}
.v-broadcast-history article > span {
  color: #888;
  font-size: 10px;
}
.v-broadcast-history article > button {
  color: #aa7272;
  cursor: pointer;
  background: #a6373714;
  border: 0;
  border-radius: 9px;
  place-items: center;
  width: 31px;
  height: 31px;
  display: grid;
}
.v-broadcast-history article > button svg {
  width: 14px;
  height: 14px;
}
.v-spin {
  animation: 1s linear infinite v-rotate;
}
@keyframes v-rotate {
  to {
    transform: rotate(360deg);
  }
}
@media (width<=410px) {
  .v-filter-bar,
  .v-admin-filters {
    grid-template-columns: 1fr;
  }
  .v-people-page-list > article {
    grid-template-columns: auto 1fr;
  }
  .v-people-page-list > article > button {
    grid-column: 2;
    justify-self: start;
  }
  .v-admin-tabs {
    grid-template-columns: 1fr 1fr;
  }
  .v-admin-user-row {
    grid-template-columns: auto 1fr auto;
  }
  .v-admin-user-row > b,
  .v-admin-user-row em {
    grid-column: 2;
    justify-self: start;
  }
  .v-admin-user-row > svg {
    grid-area: 1/3 / span 3;
  }
  .v-broadcast-actions {
    flex-direction: column;
  }
  .v-admin-bulk-actions {
    grid-template-columns: 1fr;
  }
}
.v-quiz-shell {
  background: #000;
}
.v-quiz-shell:after {
  display: none;
}
.v-quiz-route {
  opacity: 1;
}
.v-quiz-route > svg {
  position: absolute;
  inset: 0;
}
.v-quiz-route path.track {
  stroke: #ffffff21;
  stroke-width: 0.55px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.v-quiz-route path.travelled {
  stroke: #ffffffe6;
  stroke-width: 0.7px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: stroke-dasharray 0.75s linear 0.15s;
}
.v-quiz-route circle {
  fill: #080808;
  stroke: #ffffff47;
  stroke-width: 0.34px;
  filter: none;
  transition:
    fill 0.2s,
    stroke 0.2s;
}
.v-quiz-route circle.passed {
  fill: #fff;
  stroke: #fff;
}
.v-quiz-navigator {
  z-index: 2;
  color: #fff;
  filter: drop-shadow(0 0 8px #ffffff61);
  will-change: left, top, transform;
  place-items: center;
  width: 32px;
  height: 32px;
  transition:
    left 0.75s linear,
    top 0.75s linear,
    transform 0.15s;
  display: grid;
  position: absolute;
}
.v-quiz-navigator svg {
  fill: #fff;
  stroke: #fff;
  stroke-width: 1.7px;
  width: 22px;
  height: 22px;
  position: static;
  inset: auto;
}
.v-quiz-header button:disabled {
  opacity: 0.38;
  cursor: default;
}
.v-quiz-kicker,
.v-quiz-question > span {
  color: #aaa;
}
.v-quiz-progress i.active {
  box-shadow: none;
  background: #fff;
}
.v-quiz-options button:hover,
.v-quiz-options button.selected {
  color: #fff;
  background: #ffffff1c;
  border-color: #ffffffa8;
}
.v-reference-art {
  aspect-ratio: 1.6;
  filter: none;
  background-size: contain;
  align-self: center;
  -webkit-mask-image: none;
  mask-image: none;
}
.v-ai-hero .v-reference-art,
.v-opportunity-hero .v-reference-art {
  min-height: 0;
}
.v-online-card i.has-photo,
.v-people-card i.has-photo,
.v-people-list i.has-photo,
.v-people-page-list i.has-photo {
  background-position: 50% !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.v-paywall {
  width: min(100%, 480px);
  min-height: var(--tg-viewport-stable-height, 100svh);
  color: #f4f4f2;
  padding: max(20px, env(safe-area-inset-top)) 25px
    max(28px, env(safe-area-inset-bottom));
  background: #000;
  flex-direction: column;
  margin: 0 auto;
  display: flex;
}
.v-paywall > header {
  grid-template-columns: 48px 1fr 48px;
  align-items: center;
  min-height: 64px;
  display: grid;
}
.v-paywall > header > span,
.v-paywall > header > i {
  background: #121213 50% / cover;
  border: 1px solid #ffffff29;
  border-radius: 14px;
  place-items: center;
  width: 44px;
  height: 44px;
  display: grid;
  overflow: hidden;
}
.v-paywall > header > i {
  color: #888;
  justify-self: end;
  font-style: normal;
}
.v-paywall > header > strong {
  justify-self: center;
  font-size: 23px;
  font-weight: 500;
}
.v-paywall > header svg {
  width: 20px;
  height: 20px;
}
.v-paywall > section {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: flex-start;
  padding: 44px 5px 20px;
  display: flex;
}
.v-reference-art {
  display: none !important;
}
.v-route-hero {
  grid-template-columns: 1fr;
  min-height: clamp(280px, 43cqw, 390px);
}
.v-route-hero .v-hero-copy h2 {
  white-space: nowrap;
  max-width: none;
  font-size: clamp(34px, 7.2cqw, 68px);
}
.v-ai-mark,
.v-opportunity-mark {
  aspect-ratio: 1;
  color: #f4f4f2;
  background: radial-gradient(circle at 44% 38%, #28282a, #101011 58%, #050505);
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  justify-self: end;
  place-items: center;
  width: clamp(112px, 24cqw, 220px);
  display: grid;
  box-shadow:
    0 24px 45px #00000073,
    inset 0 1px #ffffff14;
}
.v-ai-mark svg,
.v-opportunity-mark svg {
  stroke-width: 1.3px;
  width: 42%;
  height: 42%;
}
.v-content-list {
  gap: 7px;
}
.v-content-list > button {
  border-radius: 13px;
  gap: 9px;
  min-height: 62px;
  padding: 9px 11px;
}
.v-content-icon {
  border-radius: 10px;
  width: 38px;
  height: 38px;
}
.v-content-icon svg {
  width: 18px;
  height: 18px;
}
.v-content-copy {
  gap: 2px;
}
.v-content-copy strong {
  font-size: 13px;
}
.v-env-card > span {
  z-index: 4;
  position: relative;
}
.v-env-card > svg {
  z-index: 4;
}
.v-community-card > div {
  z-index: 1;
  height: auto;
  top: 82px;
  bottom: 15px;
}
.v-community-card > div i:only-child {
  width: 70%;
  transform: none;
}
.v-community-empty svg {
  width: 28px;
  height: 28px;
}
.v-telegram-auto-note {
  background: #121213;
  border: 1px solid #ffffff21;
  border-radius: 14px;
  align-items: center;
  gap: 11px;
  padding: 13px;
  display: flex;
}
.v-telegram-auto-note > svg {
  color: #aaa;
  flex: none;
  width: 22px;
  height: 22px;
}
.v-telegram-auto-note > span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-telegram-auto-note strong {
  font-size: 12px;
  font-weight: 500;
}
.v-telegram-auto-note small {
  color: #777;
  font-size: 10px;
  line-height: 1.4;
}
.v-skills-field {
  flex-direction: column;
  gap: 8px !important;
  display: flex !important;
}
.v-skills-field > div:last-of-type {
  grid-template-columns: 1fr auto;
  gap: 8px;
  display: grid;
}
.v-skills-field > small {
  color: #68686b;
  font-size: 9px;
  line-height: 1.4;
}
.v-skill-chips {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}
.v-skill-chips button,
.v-skill-chips i {
  color: #9e9ea1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #242425;
  border: 1px solid #fff3;
  border-radius: 999px;
  align-items: center;
  gap: 5px;
  min-height: 27px;
  padding: 0 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 8px;
  font-style: normal;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
}
.v-skill-chips button {
  cursor: pointer;
}
.v-skill-chips button svg {
  width: 11px;
  height: 11px;
}
.v-skill-chips.compact {
  gap: 5px;
  margin-top: 6px;
}
.v-skill-chips.compact i {
  min-height: 23px;
  padding: 0 8px;
  font-size: 7px;
}
.v-skill-match {
  color: #9fc9ad;
  margin-top: 5px;
  font-size: 9px;
  font-weight: 500;
}
.v-profile-skills {
  justify-content: center;
  max-width: 420px;
}
.v-people-page-list > article {
  align-items: start;
  min-height: 112px;
}
.v-community-page-list > article {
  min-height: 116px;
}
.v-community-page-list p {
  color: #747477;
  margin: 3px 0 0;
  font-size: 10px;
  line-height: 1.4;
}
.v-community-chat-page {
  background: #09090a;
  border: 1px solid #ffffff1f;
  border-radius: 22px;
  grid-template-rows: auto 1fr auto;
  min-height: calc(100svh - 185px);
  display: grid;
  overflow: hidden;
}
.v-community-chat-page > header,
.v-chat-simple-head {
  background: #0d0d0e;
  border-bottom: 1px solid #ffffff1a;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 11px;
  min-height: 66px;
  padding: 10px 13px;
  display: grid;
}
.v-community-chat-page > header button,
.v-chat-simple-head > i {
  color: #ddd;
  background: #171718;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  font-style: normal;
  display: grid;
}
.v-community-chat-page > header button {
  cursor: pointer;
}
.v-community-chat-page > header svg,
.v-chat-simple-head svg {
  width: 18px;
  height: 18px;
}
.v-community-chat-page > header div,
.v-chat-simple-head > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-community-chat-page > header strong,
.v-chat-simple-head strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 13px;
  font-weight: 500;
  overflow: hidden;
}
.v-community-chat-page > header small,
.v-chat-simple-head small {
  color: #747477;
  font-size: 9px;
}
.v-community-chat-messages {
  flex-direction: column;
  gap: 11px;
  min-height: 380px;
  max-height: 62svh;
  padding: 15px;
  display: flex;
  overflow-y: auto;
}
.v-community-chat-messages > article {
  grid-template-columns: auto 1fr;
  align-items: end;
  gap: 7px;
  max-width: 86%;
  display: grid;
}
.v-community-chat-messages > article.own {
  grid-template-columns: 1fr;
  align-self: flex-end;
}
.v-community-chat-messages > article.own > i {
  display: none;
}
.v-community-chat-messages > article > i {
  background: #1b1b1d 50% / cover;
  border-radius: 50%;
  place-items: center;
  width: 28px;
  height: 28px;
  font-style: normal;
  display: grid;
  overflow: hidden;
}
.v-community-chat-messages > article > i svg {
  width: 14px;
  height: 14px;
}
.v-community-chat-messages > article > div {
  background: #171718;
  border: 1px solid #ffffff1c;
  border-radius: 14px 14px 14px 4px;
  padding: 8px 10px;
}
.v-community-chat-messages > article.own > div {
  color: #111;
  background: #ededeb;
  border-radius: 14px 14px 4px;
}
.v-community-chat-messages small {
  color: #7f7f82;
  font-size: 8px;
}
.v-community-chat-messages p {
  white-space: pre-wrap;
  margin: 3px 0 0;
  font-size: 11px;
  line-height: 1.45;
}
.v-community-chat-input {
  border-top: 1px solid #ffffff1a;
  grid-template-columns: 1fr auto;
  gap: 8px;
  padding: 9px;
  display: grid;
}
.v-community-chat-input input {
  height: 45px !important;
}
.v-community-chat-input button {
  width: 45px;
  height: 45px;
  border-radius: 13px !important;
}
.v-chat-simple {
  background: #09090a;
  border: 1px solid #ffffff1f;
  border-radius: 22px;
  grid-template-rows: auto minmax(360px, 1fr) auto auto;
  gap: 0;
  min-height: calc(100svh - 185px);
  display: grid;
  overflow: hidden;
}
.v-chat-simple-head > span {
  color: #87b697;
  font-size: 9px;
}
.v-chat-simple .v-chat-messages {
  background: 0 0;
  border: 0;
  border-radius: 0;
  min-height: 360px;
  max-height: 58svh;
}
.v-chat-simple .v-chat-suggestions {
  padding: 7px 10px 0;
}
.v-chat-simple .v-chat-page-input {
  background: #0d0d0e;
  border: 0;
  border-top: 1px solid #ffffff1a;
  border-radius: 0;
  padding: 9px;
  position: static;
}
.v-dossier-identity {
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  display: grid;
}
.v-dossier-identity > div {
  background: #111112;
  border: 1px solid #ffffff1f;
  border-radius: 12px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  display: flex;
}
.v-dossier-identity span {
  color: #747477;
  font-size: 8px;
}
.v-dossier-identity strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 10px;
  font-weight: 500;
  overflow: hidden;
}
@media (width<=600px) {
  .v-route-hero {
    grid-template-columns: 1fr;
    min-height: 285px;
  }
  .v-route-hero .v-hero-copy h2 {
    font-size: clamp(27px, 8.8cqw, 38px);
  }
  .v-ai-hero,
  .v-opportunity-hero {
    grid-template-columns: minmax(0, 1.35fr) minmax(92px, 0.65fr);
  }
  .v-ai-mark,
  .v-opportunity-mark {
    width: min(100%, 128px);
  }
  .v-community-page-list > article {
    grid-template-columns: auto 1fr;
  }
  .v-community-page-list > article > button {
    grid-column: 2;
    justify-self: start;
  }
  .v-dossier-identity {
    grid-template-columns: 1fr;
  }
}
@media (width<=360px) {
  .v-route-hero .v-hero-copy h2 {
    font-size: 25px;
  }
}
.v-paywall-lock {
  background: #111;
  border: 1px solid #ffffff29;
  border-radius: 20px;
  place-items: center;
  width: 62px;
  height: 62px;
  display: grid;
}
.v-paywall-lock svg {
  stroke-width: 1.4px;
  width: 26px;
  height: 26px;
}
.v-paywall section > span {
  color: #888;
  letter-spacing: 0.18em;
  margin-top: 27px;
  font-size: 9px;
}
.v-paywall h1 {
  letter-spacing: -0.06em;
  margin: 15px 0;
  font-size: clamp(48px, 13cqw, 68px);
  font-weight: 500;
  line-height: 0.91;
}
.v-paywall section > p {
  color: #929294;
  max-width: 390px;
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
}
.v-paywall ul {
  flex-direction: column;
  gap: 10px;
  margin: 25px 0;
  padding: 0;
  list-style: none;
  display: flex;
}
.v-paywall li {
  color: #cfcfcd;
  align-items: center;
  gap: 9px;
  font-size: 12px;
  display: flex;
}
.v-paywall li svg {
  width: 17px;
  height: 17px;
}
.v-paywall-price {
  background: #0e0e0f;
  border: 1px solid #ffffff29;
  border-radius: 18px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 13px;
  padding: 17px;
  display: flex;
}
.v-paywall-price small {
  color: #777;
  letter-spacing: 0.12em;
  font-size: 9px;
}
.v-paywall-price strong {
  font-size: 24px;
  font-weight: 500;
}
.v-paywall section > small {
  color: #666;
  text-align: center;
  width: 100%;
  margin-top: 13px;
  font-size: 10px;
  line-height: 1.45;
}
.v-control-page {
  color: #f4f4f2;
  background: #050505;
  min-height: 100svh;
  padding-bottom: 90px;
}
.v-control-topbar {
  z-index: 30;
  -webkit-backdrop-filter: blur(22px);
  backdrop-filter: blur(22px);
  background: #050505eb;
  border-bottom: 1px solid #ffffff1a;
  justify-content: space-between;
  align-items: center;
  height: 78px;
  padding: 0 max(24px, 50vw - 730px);
  display: flex;
  position: sticky;
  top: 0;
}
.v-control-topbar > div {
  align-items: center;
  gap: 12px;
  display: flex;
}
.v-control-topbar i {
  color: #fff;
  border: 1px solid #ffffff38;
  border-radius: 14px;
  place-items: center;
  width: 43px;
  height: 43px;
  font-size: 18px;
  font-style: normal;
  display: grid;
}
.v-control-topbar span {
  flex-direction: column;
  gap: 2px;
  display: flex;
}
.v-admin-web-exit {
  color: #aaa;
  cursor: pointer;
  background: #111;
  border: 1px solid #ffffff24;
  border-radius: 999px;
  min-height: 36px;
  padding: 0 15px;
  font-size: 12px;
}
.v-admin-web-login {
  background: linear-gradient(145deg, #121213, #080809);
  border: 1px solid #ffffff24;
  border-radius: 24px;
  flex-direction: column;
  align-items: stretch;
  gap: 14px;
  width: min(430px, calc(100% - 32px));
  margin: 0 auto;
  padding: 34px;
  display: flex;
  position: relative;
  top: 50svh;
  transform: translateY(-50%);
}
.v-admin-web-login > i {
  color: #fff;
  border: 1px solid #ffffff38;
  border-radius: 14px;
  place-items: center;
  width: 48px;
  height: 48px;
  font-size: 20px;
  font-style: normal;
  display: grid;
}
.v-admin-web-login h1 {
  margin: 8px 0 0;
  font-size: 30px;
  font-weight: 500;
}
.v-admin-web-login p {
  color: #8b8b90;
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.5;
}
.v-admin-web-login input {
  color: #fff;
  background: #080809;
  border: 1px solid #ffffff26;
  border-radius: 13px;
  min-height: 50px;
  padding: 0 14px;
  font-size: 16px;
}
.v-admin-web-login button {
  color: #090909;
  cursor: pointer;
  background: #f2f2f2;
  border: 0;
  border-radius: 13px;
  min-height: 50px;
  font-size: 15px;
  font-weight: 650;
}
.v-control-topbar strong {
  letter-spacing: 0.18em;
  font-size: 10px;
}
.v-control-topbar small {
  color: #666;
  letter-spacing: 0.15em;
  font-size: 8px;
}
.v-control-topbar p {
  color: #777;
  margin: 0;
  font-size: 10px;
}
.v-control-topbar p b {
  background: #8fc9a2;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  display: inline-block;
  box-shadow: 0 0 12px #8fc9a280;
}
.v-control-boot {
  align-content: center;
  place-items: center;
  gap: 12px;
  min-height: 100svh;
  display: grid;
}
.v-control-boot > svg {
  width: 48px;
  height: 48px;
}
.v-control-boot span {
  letter-spacing: 0.2em;
  font-size: 11px;
}
.v-control-boot p {
  color: #666;
  margin: 0;
  font-size: 11px;
}
.v-control-page .v-admin-panel {
  width: min(1460px, 100% - 48px);
  margin: 0 auto;
  padding: 54px 0 0;
}
.v-control-page .v-admin-hero {
  background:
    radial-gradient(circle at 85% 5%, #ffffff13, #0000 28%),
    linear-gradient(145deg, #121212, #080808);
  border: 1px solid #ffffff21;
  border-radius: 28px;
  min-height: 390px;
  margin-bottom: 22px;
  padding: clamp(34px, 5vw, 76px);
}
.v-control-page .v-admin-hero h2 {
  letter-spacing: -0.065em;
  max-width: 900px;
  margin-top: 18px;
  font-size: clamp(54px, 6.5vw, 96px);
  font-weight: 400;
}
.v-control-page .v-admin-hero p {
  max-width: 620px;
  font-size: 15px;
}
.v-control-page .v-admin-hero > svg {
  opacity: 0.55;
  width: 130px;
  height: 130px;
}
.v-control-page .v-admin-tabs {
  z-index: 20;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  grid-template-columns: repeat(5, minmax(105px, 1fr));
  position: sticky;
  top: 92px;
  overflow-x: auto;
  background: #0a0a0af0 !important;
  padding: 7px !important;
}
.v-control-page .v-admin-tabs button {
  white-space: nowrap;
  min-height: 45px;
  font-size: 11px !important;
}
.v-control-page .v-admin-tab {
  gap: 18px;
  margin-top: 22px;
}
.v-control-page .v-admin-metrics {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
.v-control-page .v-admin-metrics-compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.v-admin-overview-note,
.v-admin-profile-note {
  color: #737378;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}
.v-permanent-notification {
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  padding: 22px;
}
.v-reminder-upload input[type="file"] {
  height: auto !important;
  min-height: 52px;
  padding: 9px !important;
}
.v-reminder-upload input[type="file"]::file-selector-button {
  color: #e8e8e8;
  cursor: pointer;
  background: #1a1a1c;
  border: 1px solid #ffffff24;
  border-radius: 9px;
  margin-right: 10px;
  padding: 8px 11px;
}
.v-reminder-remove {
  color: #aaa;
  flex-direction: row !important;
  align-items: center;
  gap: 9px !important;
  font-size: 13px;
}
.v-reminder-remove input {
  width: 17px;
  height: 17px;
}
.v-control-page .v-admin-metrics article {
  min-height: 160px;
  padding: 20px;
}
.v-control-page .v-admin-metrics strong {
  font-size: 36px;
}
.v-control-page .v-admin-summary {
  grid-template-columns: repeat(4, 1fr);
}
.v-control-page .v-health-card,
.v-control-page .v-admin-control-card,
.v-control-page .v-admin-access-card,
.v-control-page .v-admin-recent,
.v-control-page .v-admin-settings-card,
.v-control-page .v-admin-danger-zone {
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  padding: 22px;
}
@media (max-width: 680px) {
  .v-admin-access-groups {
    grid-template-columns: 1fr;
  }
}
.v-control-page .v-admin-list > article {
  grid-template-columns: auto minmax(0, 1fr) minmax(260px, auto);
  align-items: start;
  padding: 18px;
}
.v-control-page .v-admin-list > article > div:last-child {
  grid-column: auto;
  justify-content: flex-end;
}
.v-control-page .v-admin-user-row {
  min-height: 84px;
  padding: 16px 18px;
}
.v-control-page .v-admin-avatar {
  width: 52px;
  height: 52px;
}
.v-control-page .v-admin-filters {
  grid-template-columns: minmax(0, 1fr) 220px;
}
.v-control-page .v-broadcast-layout {
  grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.7fr);
}
.v-control-page .v-broadcast-history article {
  min-height: 68px;
}
.v-control-page .v-card-heading {
  cursor: default;
}
.v-application-note {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  margin-top: 8px;
  display: grid;
}
.v-application-note input {
  height: 37px !important;
  font-size: 11px !important;
}
.v-favorite {
  color: #999 !important;
  background: #171718 !important;
  border: 1px solid #ffffff21 !important;
  min-height: 38px !important;
  font-size: 10px !important;
}
.v-favorite.active {
  color: #fff !important;
  border-color: #ffffff5c !important;
}
.v-favorite svg {
  width: 14px;
  height: 14px;
}
.v-favorite.active svg {
  fill: currentColor;
}
.v-online-now {
  color: #88b997 !important;
}
.v-outline-link {
  color: #ddd;
  border: 1px solid #ffffff24;
  border-radius: 10px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 12px;
  font-size: 10px;
  text-decoration: none;
  display: inline-flex;
}
.v-outline-link svg {
  width: 14px;
  height: 14px;
}
.v-admin-settings-card .v-card-heading {
  margin-bottom: 18px;
}
.v-admin-settings-card .v-card-heading span,
.v-admin-danger-zone > span {
  font-size: 18px;
  font-weight: 500;
}
.v-admin-settings-card .v-card-heading small {
  color: #707073;
  font-size: 10px;
}
.v-form-hint {
  color: #777;
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
}
.v-admin-danger-zone {
  flex-direction: column;
  gap: 16px;
  display: flex;
}
.v-admin-danger-zone > div {
  flex-wrap: wrap;
  gap: 9px;
  display: flex;
}
.v-permission-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-permission-grid label {
  cursor: pointer;
  background: #121213;
  border: 1px solid #ffffff1c;
  border-radius: 12px;
  align-items: center;
  min-height: 44px;
  padding: 0 11px;
  gap: 8px !important;
  display: flex !important;
}
.v-permission-grid input {
  opacity: 0;
  position: absolute;
}
.v-permission-grid i {
  color: #111;
  background: #222;
  border: 1px solid #fff3;
  border-radius: 6px;
  place-items: center;
  width: 19px;
  height: 19px;
  font-style: normal;
  display: grid;
}
.v-permission-grid input:checked + i {
  background: #eee;
}
.v-permission-grid svg {
  width: 13px;
  height: 13px;
}
.v-permission-grid span {
  color: #aaa !important;
  font-size: 10px !important;
}
.v-admin-team-card {
  align-items: center !important;
}
.v-admin-team-card > div:nth-child(2) em {
  color: #cfcfcf;
  letter-spacing: 0.08em;
  align-self: flex-start;
  font-size: 8px;
  font-style: normal;
}
.v-admin-team-controls {
  flex-direction: column;
  gap: 10px !important;
  display: flex !important;
}
.v-admin-team-controls .v-permission-grid {
  grid-template-columns: repeat(4, minmax(115px, 1fr));
}
.v-admin-team-controls > div:last-child {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}
@media (width<=1000px) {
  .v-control-page .v-admin-metrics {
    grid-template-columns: repeat(3, 1fr);
  }
  .v-control-page .v-admin-list > article {
    grid-template-columns: auto 1fr;
  }
  .v-control-page .v-admin-list > article > div:last-child {
    grid-column: 2;
    justify-content: flex-start;
  }
  .v-control-page .v-broadcast-layout {
    grid-template-columns: 1fr;
  }
  .v-permission-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width<=680px) {
  .v-control-topbar {
    padding-inline: 16px;
  }
  .v-control-topbar p {
    display: none;
  }
  .v-control-page .v-admin-panel {
    width: min(100% - 24px, 1460px);
    padding-top: 22px;
  }
  .v-control-page .v-admin-hero {
    min-height: 300px;
    padding: 27px;
  }
  .v-control-page .v-admin-hero h2 {
    font-size: clamp(39px, 12vw, 58px);
  }
  .v-control-page .v-admin-hero > svg {
    width: 64px;
    height: 64px;
  }
  .v-control-page .v-admin-tabs {
    top: 86px;
    display: flex !important;
  }
  .v-control-page .v-admin-tabs button {
    min-width: 120px;
  }
  .v-control-page .v-admin-metrics,
  .v-control-page .v-admin-summary {
    grid-template-columns: 1fr 1fr;
  }
  .v-control-page .v-admin-filters {
    grid-template-columns: 1fr;
  }
  .v-control-page .v-admin-list > article {
    grid-template-columns: auto 1fr;
  }
  .v-control-page .v-admin-list > article > div:last-child {
    grid-column: 1/-1;
  }
  .v-control-page .v-admin-user-row {
    grid-template-columns: auto 1fr auto;
  }
  .v-control-page .v-admin-user-row > b,
  .v-control-page .v-admin-user-row em {
    grid-column: 2;
    justify-self: start;
  }
  .v-control-page .v-admin-user-row > svg {
    grid-area: 1/3 / span 3;
  }
  .v-control-page .v-form-row {
    grid-template-columns: 1fr;
  }
  .v-daily-reminder-head,
  .v-daily-reminder-foot {
    flex-direction: column;
    align-items: flex-start;
  }
  .v-daily-reminder-foot > button {
    width: 100%;
  }
  .v-reminder-presets > div:last-child {
    grid-template-columns: 1fr;
  }
  .v-permission-grid,
  .v-admin-team-controls .v-permission-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.v-profile-trigger {
  border-radius: 50%;
}
.v-card-arrow svg {
  width: 22px;
  height: 22px;
}
.v-opportunity-hero {
  min-height: clamp(280px, 57cqw, 390px);
  overflow: hidden;
}
.v-opportunity-hero > div:first-child {
  z-index: 3;
  min-width: 0;
  position: relative;
}
.v-opportunity-hero h2 {
  overflow-wrap: anywhere;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  max-width: min(69%, 360px);
  margin-top: 22px;
  font-size: clamp(30px, 7.2cqw, 52px);
  line-height: 0.98;
  display: -webkit-box;
  overflow: hidden;
}
.v-opportunity-mark {
  z-index: 1;
  opacity: 0.78;
  position: absolute;
  bottom: 10%;
  right: 4%;
}
.v-env-card {
  min-height: clamp(205px, 38cqw, 275px);
  padding: clamp(15px, 3cqw, 22px);
  overflow: hidden;
}
.v-env-card > span {
  overflow-wrap: anywhere;
  max-width: calc(100% - 30px);
  font-size: clamp(16px, 3.1cqw, 23px);
}
.v-community-card small {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 90%;
  font-size: clamp(8px, 1.9cqw, 12px);
  overflow: hidden;
}
.v-feed-card > div {
  gap: 7px;
  bottom: 6%;
  left: 6%;
  right: 6%;
}
.v-feed-card i {
  gap: 8px;
  min-width: 0;
  min-height: 57px;
  padding: 9px;
}
.v-feed-card small {
  overflow-wrap: anywhere;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  min-width: 0;
  font-size: clamp(9px, 2cqw, 12px);
  line-height: 1.3;
  display: -webkit-box;
  overflow: hidden;
}
.v-acquaintance-card {
  color: #f2f2f0;
  text-align: left;
  cursor: pointer;
  border-radius: 20px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-height: 142px;
  padding: 22px;
  display: grid;
}
.v-acquaintance-card > div:first-child {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-acquaintance-card > div:first-child > span {
  font-size: clamp(21px, 4cqw, 30px);
  font-weight: 500;
}
.v-acquaintance-card > div:first-child > strong {
  color: #a2a2a4;
  font-size: 12px;
  font-weight: 400;
}
.v-acquaintance-card > div:first-child > small {
  color: #6e6e71;
  font-size: 10px;
}
.v-acquaintance-card > svg {
  width: 23px;
  height: 23px;
}
.v-avatar-stack {
  flex-direction: row-reverse;
  justify-content: flex-end;
  padding-left: 14px;
  display: flex;
}
.v-avatar-stack i,
.v-avatar-stack b {
  color: #eee;
  background: #242426 50% / cover;
  border: 3px solid #111112;
  border-radius: 50%;
  place-items: center;
  width: 45px;
  height: 45px;
  margin-left: -13px;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  display: grid;
}
.v-avatar-stack b {
  color: #111;
  background: #efefed;
}
.v-avatar-stack svg {
  width: 19px;
  height: 19px;
}
.v-opportunity-page-list article,
.v-feed-page-list article,
.v-community-page-list article,
.v-people-page-list article,
.v-admin-list article,
.v-material-admin-list article,
.v-public-material-list article,
.v-public-material-list a {
  min-width: 0;
  overflow: hidden;
}
.v-opportunity-page-list strong,
.v-opportunity-page-list p,
.v-feed-page-list p,
.v-community-page-list strong,
.v-community-page-list p,
.v-admin-list p,
.v-material-admin-list p,
.v-public-material-list p,
.v-public-material-list strong {
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}
.v-feed-page-list article > p,
.v-opportunity-page-list article > p {
  white-space: pre-wrap;
}
.v-incoming-requests {
  background: #c7aa750e;
  border: 1px solid #c7aa753d;
  border-radius: 18px;
  flex-direction: column;
  gap: 9px;
  padding: 14px;
  display: flex;
}
.v-incoming-requests > strong {
  font-size: 13px;
  font-weight: 500;
}
.v-incoming-requests article {
  border-top: 1px solid #ffffff17;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding-top: 10px;
  display: grid;
}
.v-incoming-requests article > i {
  background: #202022 50% / cover;
  border-radius: 50%;
  place-items: center;
  width: 42px;
  height: 42px;
  font-style: normal;
  display: grid;
}
.v-incoming-requests article > i svg {
  width: 18px;
  height: 18px;
}
.v-incoming-requests article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-incoming-requests article b {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 500;
  overflow: hidden;
}
.v-incoming-requests article small {
  color: #848487;
  overflow-wrap: anywhere;
  font-size: 9px;
}
.v-incoming-requests article > span {
  gap: 6px;
  display: flex;
}
.v-incoming-requests button {
  min-height: 35px !important;
  padding-inline: 9px !important;
  font-size: 9px !important;
}
.v-incoming-requests button svg {
  width: 13px;
  height: 13px;
}
.v-full-page-intro {
  border-radius: 22px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 235px;
  padding: 22px;
  display: flex;
  overflow: hidden;
}
.v-full-page-intro > button {
  color: #bdbdbd;
  cursor: pointer;
  background: #ffffff0f;
  border: 0;
  border-radius: 11px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  margin-bottom: auto;
  padding: 0 11px;
  font-size: 11px;
  display: flex;
}
.v-full-page-intro > button svg {
  width: 16px;
  height: 16px;
}
.v-full-page-intro > span {
  color: #888;
  letter-spacing: 0.14em;
  font-size: 9px;
}
.v-full-page-intro h2 {
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
  max-width: 100%;
  margin: 13px 0 7px;
  font-size: clamp(34px, 8cqw, 50px);
  line-height: 0.98;
}
.v-full-page-intro p {
  color: #888;
  max-width: 360px;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}
.v-full-form-page,
.v-library-page {
  gap: 12px;
}
.v-page-form {
  background: #0e0e0f;
  border: 1px solid #ffffff21;
  border-radius: 20px;
  padding: 20px;
}
.v-page-form textarea {
  min-height: 125px !important;
}
.v-page-form .v-post-textarea {
  min-height: 260px !important;
}
.v-profile-settings-identity {
  border-bottom: 1px solid #ffffff17;
  align-items: center;
  gap: 12px;
  padding-bottom: 16px;
  display: flex;
}
.v-profile-settings-identity > i {
  background: #222 50% / cover;
  border-radius: 50%;
  place-items: center;
  width: 58px;
  height: 58px;
  font-style: normal;
  display: grid;
}
.v-profile-settings-identity svg {
  width: 24px;
  height: 24px;
}
.v-profile-settings-identity > span {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.v-profile-settings-identity strong {
  font-size: 16px;
  font-weight: 500;
}
.v-profile-settings-identity small {
  color: #777;
  font-size: 10px;
}
.v-library-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-library-list > button {
  min-height: 76px;
}
.v-public-material-list {
  flex-direction: column;
  gap: 9px;
  display: flex;
}
.v-public-material-list > a,
.v-public-material-list > article {
  min-height: 100px;
  color: inherit;
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  padding: 14px;
  text-decoration: none;
  display: grid;
}
.v-public-material-list > :is(a, article) > i {
  background: #1e1e20;
  border-radius: 14px;
  place-items: center;
  width: 48px;
  height: 48px;
  font-style: normal;
  display: grid;
}
.v-public-material-list > :is(a, article) > i svg {
  width: 22px;
  height: 22px;
}
.v-public-material-list > :is(a, article) > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-public-material-list small {
  color: #777;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 8px;
}
.v-public-material-list strong {
  font-size: 14px;
  font-weight: 500;
}
.v-public-material-list p {
  color: #888;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 3px 0 0;
  font-size: 10px;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
}
.v-public-material-list > :is(a, article) > span svg {
  color: #777;
  width: 18px;
  height: 18px;
}
.v-chat-mode .v-shell {
  height: 100svh;
  min-height: 100svh;
  overflow: hidden;
}
.v-main-chat {
  height: 100svh;
  min-height: 100svh;
  padding: 0 !important;
}
.v-main-chat > .v-screen {
  gap: 0;
  height: 100%;
  min-height: 100%;
  padding: 0;
}
.v-main-chat .v-subpage-toolbar {
  display: none;
}
.v-chat-simple,
.v-community-chat-page {
  background: #070708;
  border: 0;
  border-radius: 0;
  width: 100%;
  height: 100svh;
  min-height: 100svh;
}
.v-chat-simple {
  grid-template-rows: auto minmax(0, 1fr) auto auto;
}
.v-chat-simple-head {
  min-height: calc(68px + env(safe-area-inset-top));
  padding-top: max(10px, env(safe-area-inset-top));
}
.v-chat-simple-head > button {
  color: #ddd;
  cursor: pointer;
  background: #171718;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  display: grid;
}
.v-chat-simple-head > button svg {
  width: 18px;
  height: 18px;
}
.v-chat-simple .v-chat-messages,
.v-community-chat-messages {
  min-height: 0;
  max-height: none;
  overflow-y: auto;
}
.v-chat-simple .v-chat-page-input,
.v-community-chat-input {
  padding-bottom: max(9px, env(safe-area-inset-bottom));
}
.v-community-chat-page > header {
  padding-top: max(10px, env(safe-area-inset-top));
  min-height: calc(68px + env(safe-area-inset-top));
}
.v-community-chat-messages p,
.v-message p {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.v-blocked-screen .v-paywall-lock {
  color: #d78a8a;
  background: #75232324;
  border-color: #d78a8a3d;
}
.v-blocked-note {
  background: #0e0e0f;
  border: 1px solid #ffffff1f;
  border-radius: 17px;
  align-items: center;
  gap: 12px;
  width: 100%;
  margin-top: 28px;
  padding: 15px;
  display: flex;
}
.v-blocked-note > svg {
  width: 24px;
  height: 24px;
}
.v-blocked-note > span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-blocked-note strong {
  font-size: 12px;
  font-weight: 500;
}
.v-blocked-note small {
  color: #777;
  font-size: 9px;
}
.v-admin-dossier-page {
  flex-direction: column;
  gap: 16px;
  display: flex;
}
.v-admin-dossier-head {
  background: radial-gradient(circle at 88% 10%, #ffffff12, #0000 26%), #0e0e0f;
  border: 1px solid #ffffff21;
  border-radius: 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
  min-height: 176px;
  padding: 24px;
  display: flex;
}
.v-admin-dossier-head > button {
  color: #aaa;
  cursor: pointer;
  background: #19191a;
  border: 0;
  border-radius: 11px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 11px;
  font-size: 10px;
  display: flex;
}
.v-admin-dossier-head > button svg {
  width: 15px;
  height: 15px;
}
.v-admin-dossier-head > div {
  align-items: center;
  gap: 14px;
  display: flex;
}
.v-admin-dossier-head .v-admin-avatar {
  width: 72px;
  height: 72px;
}
.v-admin-dossier-head > div > span {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.v-admin-dossier-head small {
  color: #777;
  letter-spacing: 0.14em;
  font-size: 8px;
}
.v-admin-dossier-head strong {
  font-size: clamp(23px, 4vw, 38px);
  font-weight: 500;
}
.v-admin-dossier-head em {
  color: #888;
  font-size: 10px;
  font-style: normal;
}
.v-control-page .v-dossier-identity {
  grid-template-columns: repeat(3, 1fr);
}
.v-control-page .v-dossier-identity > div {
  min-height: 76px;
  padding: 15px;
}
.v-control-page .v-dossier-identity strong {
  font-size: 13px;
}
.v-dossier-load-stats {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-dossier-load-stats > div {
  background: #0d0d0e;
  border: 1px solid #ffffff1c;
  border-radius: 16px;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  min-height: 92px;
  padding: 13px;
  display: flex;
}
.v-dossier-load-stats strong {
  font-size: 23px;
  font-weight: 500;
}
.v-dossier-load-stats span {
  color: #777;
  font-size: 9px;
}
.v-admin-dossier-grid {
  grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.7fr);
  align-items: start;
  gap: 14px;
  display: grid;
}
.v-admin-dossier-info,
.v-admin-dossier-policy {
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  padding: 20px;
}
.v-admin-dossier-info {
  flex-direction: column;
  gap: 14px;
  display: flex;
}
.v-admin-dossier-policy {
  position: sticky;
  top: 165px;
}
.v-material-manager {
  grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.28fr);
  align-items: start;
  gap: 16px;
  display: grid;
}
.v-material-manager > section:first-child {
  position: sticky;
  top: 164px;
}
.v-material-admin-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-material-admin-list article {
  background: #111112;
  border: 1px solid #ffffff1c;
  border-radius: 16px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
  display: grid;
}
.v-material-admin-list article > i {
  background: #202022;
  border-radius: 13px;
  place-items: center;
  width: 45px;
  height: 45px;
  font-style: normal;
  display: grid;
}
.v-material-admin-list article > i svg {
  width: 20px;
  height: 20px;
}
.v-material-admin-list article > div:nth-child(2) {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-material-admin-list strong {
  font-size: 13px;
  font-weight: 500;
}
.v-material-admin-list small {
  color: #777;
  font-size: 9px;
}
.v-material-admin-list p {
  color: #888;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 2px 0 0;
  font-size: 10px;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
}
.v-material-admin-list article > div:last-child {
  align-items: center;
  gap: 6px;
  display: flex;
}
.v-material-admin-list a {
  color: #ccc;
  border: 1px solid #ffffff21;
  border-radius: 10px;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 10px;
  font-size: 9px;
  text-decoration: none;
  display: inline-flex;
}
.v-material-admin-list a svg {
  width: 13px;
  height: 13px;
}
@media (width<=900px) {
  .v-dossier-load-stats {
    grid-template-columns: repeat(4, 1fr);
  }
  .v-admin-dossier-grid,
  .v-material-manager {
    grid-template-columns: 1fr;
  }
  .v-admin-dossier-policy,
  .v-material-manager > section:first-child {
    position: static;
  }
}
@media (width<=520px) {
  .v-section-heading h3 {
    font-size: 22px;
  }
  .v-section-heading button {
    font-size: 10px;
  }
  .v-acquaintance-card {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 18px;
  }
  .v-acquaintance-card > svg {
    display: none;
  }
  .v-avatar-stack i,
  .v-avatar-stack b {
    width: 38px;
    height: 38px;
    margin-left: -12px;
  }
  .v-incoming-requests article {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .v-incoming-requests article > span {
    grid-column: 2;
  }
  .v-full-page-intro {
    min-height: 215px;
  }
  .v-full-page-intro h2 {
    font-size: 34px;
  }
  .v-page-form {
    padding: 16px;
  }
  .v-dossier-load-stats {
    grid-template-columns: repeat(2, 1fr);
  }
  .v-control-page .v-dossier-identity {
    grid-template-columns: 1fr;
  }
  .v-material-admin-list article {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .v-material-admin-list article > div:last-child {
    flex-wrap: wrap;
    grid-column: 1/-1;
  }
}
.v-screen {
  gap: 12px;
}
.v-home-grid,
.v-environment-grid {
  gap: 9px;
}
.v-route-hero .v-hero-copy h2 {
  margin: 18px 0 5px;
  font-size: clamp(27px, 7.1cqw, 46px);
}
.v-route-hero .v-hero-copy p {
  margin: 8px 0 20px;
  font-size: clamp(12px, 2.6cqw, 17px);
}
.v-card-arrow {
  top: 14px;
  right: 12px;
}
.v-opportunity-hero h2 {
  max-width: 72%;
  margin: 18px 0 20px;
  font-size: clamp(27px, 6.8cqw, 44px);
  line-height: 1;
}
.v-opportunity-mark {
  width: clamp(86px, 22cqw, 125px);
  bottom: 9%;
  right: 4%;
}
.v-community-card > div i {
  border-radius: 10px;
  gap: 6px;
}
.v-feed-card > div {
  bottom: 5%;
}
.v-acquaintance-card {
  min-height: 118px;
  padding: 17px;
}
.v-opportunities-wide {
  width: 100%;
  justify-content: flex-start !important;
  min-height: 58px !important;
  padding-inline: 18px !important;
  font-size: 13px !important;
}
.v-opportunities-wide svg:last-child {
  margin-left: auto;
}
.v-page-intro {
  min-height: 245px;
  padding: 22px;
}
.v-page-intro h2 {
  margin: 18px 0 8px;
  font-size: clamp(32px, 8cqw, 43px);
}
.v-page-intro p {
  margin-bottom: 18px;
}
.v-opportunity-page-list article,
.v-feed-page-list article,
.v-community-page-list article,
.v-people-page-list article {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.v-opportunity-page-list strong,
.v-feed-page-list p,
.v-community-page-list p,
.v-people-page-list p {
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}
.v-opportunity-actions {
  align-items: center;
  gap: 7px;
  display: flex;
}
.v-quiz-route {
  aspect-ratio: 100/160;
  width: min(100%, 62.5svh);
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
}
.v-quiz-route > svg {
  width: 100%;
  height: 100%;
}
.v-quiz-navigator {
  aspect-ratio: 1;
  width: clamp(27px, 7cqw, 34px);
  height: auto;
}
.v-quiz-navigator svg {
  width: 70%;
  height: 70%;
}
.v-community-chat-messages {
  gap: 9px;
  padding: 13px;
}
.v-community-chat-messages > article {
  max-width: min(88%, 390px);
}
.v-community-chat-messages > article > div {
  padding: 10px 12px;
}
.v-community-chat-messages article div > button {
  color: currentColor;
  opacity: 0.55;
  cursor: pointer;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 4px;
  margin-top: 7px;
  padding: 0;
  font-size: 9px;
  display: inline-flex;
}
.v-community-chat-messages article div > button svg {
  width: 11px;
  height: 11px;
}
.v-community-chat-page > header {
  grid-template-columns: auto minmax(0, 1fr) auto;
}
.v-community-delete {
  color: #d99494 !important;
}
.v-community-row-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  display: flex;
}
.v-person-card-main {
  min-width: 0;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 0;
  display: grid;
}
.v-person-card-main > i {
  border-radius: 50%;
  place-items: center;
  width: 48px;
  height: 48px;
  font-style: normal;
  display: grid;
  background-position: 50% !important;
  background-size: cover !important;
}
.v-person-card-main > div {
  min-width: 0;
}
.v-person-profile-page {
  padding-bottom: 20px;
}
.v-person-profile-hero {
  border: 1px solid #ffffff21;
  border-radius: 24px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 390px;
  padding: 22px;
  display: flex;
}
.v-person-profile-hero > button {
  color: #aaa;
  background: #19191a;
  border: 0;
  border-radius: 11px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  margin-bottom: auto;
  padding: 0 11px;
  font-size: 10px;
  display: flex;
}
.v-person-profile-hero > button svg {
  width: 15px;
  height: 15px;
}
.v-person-profile-hero > i {
  border-radius: 50%;
  place-items: center;
  width: 78px;
  height: 78px;
  margin-bottom: 15px;
  font-size: 20px;
  font-style: normal;
  display: grid;
  background-position: 50% !important;
  background-size: cover !important;
}
.v-person-profile-hero > small {
  color: #8d8d90;
  letter-spacing: 0.12em;
  font-size: 8px;
}
.v-person-profile-hero h2 {
  margin: 8px 0 2px;
  font-size: 36px;
  line-height: 1;
}
.v-person-profile-hero > span,
.v-person-profile-hero > strong {
  color: #929295;
  font-size: 11px;
  font-weight: 400;
}
.v-person-profile-hero p {
  color: #b1b1b3;
  overflow-wrap: anywhere;
  max-width: 390px;
  margin: 13px 0;
  font-size: 12px;
  line-height: 1.5;
}
.v-person-profile-grid {
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  display: grid;
}
.v-person-profile-grid section {
  background: #101011;
  border: 1px solid #ffffff1f;
  border-radius: 17px;
  min-height: 110px;
  padding: 15px;
}
.v-person-profile-grid span {
  color: #777;
  font-size: 9px;
}
.v-person-profile-grid p {
  overflow-wrap: anywhere;
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.45;
}
.v-ai-typing p {
  align-items: center;
  gap: 8px;
  display: flex;
}
.v-ai-typing svg {
  width: 15px;
  height: 15px;
}
.v-city-loader {
  width: min(100%, 480px);
  min-height: 100svh;
  padding: max(22px, env(safe-area-inset-top)) 22px
    max(24px, env(safe-area-inset-bottom));
  color: #f4f4f2;
  background: #000;
  grid-template-rows: auto minmax(300px, 1fr) auto;
  margin: 0 auto;
  display: grid;
}
.v-city-loader header {
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  display: grid;
}
.v-city-loader header > span {
  border: 1px solid #ffffff52;
  border-radius: 11px;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: 18px;
  display: grid;
}
.v-city-loader header > div {
  flex-direction: column;
  gap: 2px;
  display: flex;
}
.v-city-loader header strong {
  letter-spacing: 0.16em;
  font-size: 10px;
}
.v-city-loader header > i {
  color: #8b8d8e;
  letter-spacing: 0.12em;
  align-items: center;
  gap: 5px;
  font-size: 7px;
  font-style: normal;
  display: flex;
}
.v-city-loader header > i b {
  background: #9cf4dc;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  box-shadow: 0 0 10px #9cf4dc80;
}
.v-city-loader canvas {
  aspect-ratio: 390/430;
  align-self: center;
  width: 100%;
  max-height: 510px;
}
.v-city-loader > section {
  border-top: 1px solid #ffffff1c;
  flex-direction: column;
  gap: 8px;
  padding-top: 14px;
  display: flex;
}
.v-city-loader > section > small {
  color: #68696b;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 8px;
}
.v-city-loader > section > div {
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  display: flex;
}
.v-city-loader > section strong {
  font-size: 15px;
  font-weight: 500;
}
.v-city-loader > section b {
  font-variant-numeric: tabular-nums;
  font-size: 28px;
  font-weight: 400;
}
.v-city-loader > section > i {
  background: #1c1d1e;
  height: 2px;
  overflow: hidden;
}
.v-city-loader > section > i span {
  background: #d9efea;
  height: 100%;
  transition: width 0.1s linear;
  display: block;
}
.v-admin-load-card {
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 9px;
  padding: 22px;
  display: grid;
}
.v-admin-load-card .v-card-heading {
  grid-column: 1/-1;
  margin-bottom: 4px;
}
.v-admin-load-card > div:not(.v-card-heading) {
  background: #111112;
  border: 1px solid #ffffff17;
  border-radius: 15px;
  flex-direction: column;
  justify-content: space-between;
  min-height: 95px;
  padding: 13px;
  display: flex;
}
.v-admin-load-card > div > span {
  color: #777;
  align-items: center;
  gap: 6px;
  font-size: 9px;
  display: flex;
}
.v-admin-load-card > div > span svg {
  width: 13px;
  height: 13px;
}
.v-admin-load-card > div > strong {
  font-size: 25px;
  font-weight: 500;
}
.v-ai-usage-card {
  background: linear-gradient(145deg, #121213, #0a0a0b);
  border: 1px solid #ffffff21;
  border-radius: 20px;
  flex-direction: column;
  gap: 14px;
  padding: 22px;
  display: flex;
}
.v-ai-usage-card .v-card-heading small {
  color: #777;
}
.v-ai-usage-summary {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-ai-usage-summary > div {
  background: #101011;
  border: 1px solid #ffffff17;
  border-radius: 14px;
  flex-direction: column;
  justify-content: space-between;
  min-height: 82px;
  padding: 12px;
  display: flex;
}
.v-ai-usage-summary span {
  color: #707074;
  font-size: 9px;
}
.v-ai-usage-summary strong {
  font-size: 19px;
  font-weight: 500;
}
.v-ai-model-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  display: grid;
}
.v-ai-model-list article {
  background: #0d0d0e;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  padding: 14px;
}
.v-ai-model-list header {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}
.v-ai-model-list header > div {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex;
}
.v-ai-model-list header svg {
  color: #9b9b9e;
  flex: none;
  width: 16px;
  height: 16px;
}
.v-ai-model-list header strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 500;
  overflow: hidden;
}
.v-ai-model-list header em {
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 8px;
  font-style: normal;
}
.v-ai-model-list header em.ok {
  color: #9be0b7;
  background: #54b3791f;
}
.v-ai-model-list header em.warn {
  color: #efaa94;
  background: #d35d3d1f;
}
.v-ai-limit-line {
  background: #ffffff14;
  border-radius: 999px;
  height: 4px;
  margin: 14px 0 10px;
  overflow: hidden;
}
.v-ai-limit-line i {
  border-radius: inherit;
  background: linear-gradient(90deg, #f2d3a2, #fff0d7);
  min-width: 2px;
  height: 100%;
  display: block;
}
.v-ai-model-list footer {
  color: #707074;
  flex-wrap: wrap;
  gap: 5px 12px;
  font-size: 8px;
  display: flex;
}
.v-ai-usage-card > p {
  color: #666;
  margin: 0;
  font-size: 9px;
  line-height: 1.5;
}
@media (width<=900px) {
  .v-admin-load-card,
  .v-ai-usage-summary {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (width<=520px) {
  .v-route-hero .v-hero-copy h2 {
    font-size: clamp(25px, 8.2cqw, 35px);
  }
  .v-section-card {
    min-height: 175px;
  }
  .v-env-card {
    min-height: 168px;
  }
  .v-opportunity-hero {
    min-height: 228px;
  }
  .v-opportunity-hero h2 {
    max-width: 74%;
    font-size: clamp(24px, 7.8cqw, 34px);
  }
  .v-acquaintance-card {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .v-acquaintance-card > svg {
    display: none;
  }
  .v-person-profile-grid {
    grid-template-columns: 1fr;
  }
  .v-admin-load-card {
    grid-template-columns: repeat(2, 1fr);
    padding: 15px;
  }
  .v-ai-usage-card {
    padding: 15px;
  }
  .v-ai-usage-summary {
    grid-template-columns: repeat(2, 1fr);
  }
  .v-ai-model-list {
    grid-template-columns: 1fr;
  }
}
.v-city-loader {
  padding: max(18px, env(safe-area-inset-top)) 18px
    max(22px, env(safe-area-inset-bottom));
  grid-template-rows: minmax(360px, 1fr) auto;
}
.v-city-loader canvas {
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  min-height: 440px;
  max-height: 660px;
}
.v-city-loader > section {
  width: calc(100% - 10px);
  margin: 0 auto;
  padding-top: 12px;
}
.v-city-loader > section strong {
  font-size: 13px;
}
.v-city-loader > section b {
  font-size: 23px;
}
.v-city-loader > section > i span {
  background: #d8d1c7;
}
.v-ai-hero {
  min-height: clamp(165px, 39cqw, 215px);
  padding: clamp(20px, 4cqw, 30px);
  display: block;
}
.v-ai-hero-copy {
  flex-direction: column;
  gap: 23px;
  width: 100%;
  height: 100%;
  justify-content: space-between !important;
  display: flex !important;
}
.v-ai-hero-copy > span {
  color: #969699;
  letter-spacing: 0.12em;
  font-size: 10px !important;
}
.v-ai-hero-copy > div {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 13px;
  width: 100%;
  display: grid;
}
.v-ai-hero h2 {
  overflow-wrap: anywhere;
  max-width: 100%;
  margin: 0;
  font-size: clamp(29px, 7cqw, 43px);
  line-height: 0.96;
}
.v-ai-hero .v-primary {
  white-space: nowrap;
  min-height: 44px;
  padding-inline: 14px !important;
  font-size: 11px !important;
}
.v-ai-mark,
.v-opportunity-mark {
  display: none !important;
}
.v-ai-live-card {
  border-radius: 19px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 132px;
  padding: 18px;
  display: grid;
}
.v-ai-live-card > div {
  min-width: 0;
}
.v-ai-live-card span {
  color: #77777a;
  letter-spacing: 0.12em;
  font-size: 8px;
}
.v-ai-live-card p {
  color: #c7c7c5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 9px 0 0;
  font-size: 12px;
  line-height: 1.55;
}
.v-ai-live-card p:not(.v-ai-live-error) {
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}
.v-ai-live-card .v-ai-live-error {
  color: #77777a;
}
.v-ai-live-card .v-outline-button {
  white-space: nowrap;
  min-height: 40px;
}
.v-opportunity-hero {
  min-height: clamp(190px, 43cqw, 240px);
  padding: clamp(18px, 4cqw, 26px);
}
.v-opportunity-hero > div:first-child {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "label action" "count action" "title action";
  align-items: center;
  column-gap: 14px;
  width: 100%;
  display: grid;
}
.v-opportunity-hero > div:first-child > span {
  grid-area: label;
  font-size: 14px;
}
.v-opportunity-hero > div:first-child > small {
  grid-area: count;
  justify-self: start;
  margin-top: 7px;
  font-size: 9px;
}
.v-opportunity-hero h2 {
  -webkit-line-clamp: 2;
  grid-area: title;
  max-width: 100%;
  margin: 17px 0 0;
  font-size: clamp(25px, 6.4cqw, 39px);
}
.v-opportunity-hero .v-primary {
  white-space: nowrap;
  grid-area: action;
  min-height: 44px;
  padding-inline: 14px !important;
  font-size: 10px !important;
}
.v-env-card {
  min-height: clamp(165px, 37cqw, 205px);
  padding: 14px;
}
.v-env-card > span {
  line-height: 1.05;
  position: absolute;
  top: 13px;
  left: 14px;
  right: 42px;
}
.v-env-card > svg {
  top: 12px;
  right: 11px;
}
.v-feed-card > div {
  justify-content: flex-end;
  top: 48px;
  bottom: 8px;
}
.v-feed-card i {
  min-height: 45px;
}
.v-avatar-stack {
  flex-direction: row;
  align-items: center;
  padding-left: 0;
}
.v-avatar-stack i {
  border: 2px solid #050505;
  width: 40px;
  height: 40px;
  margin-left: -9px;
  position: relative;
}
.v-avatar-stack i:first-child {
  margin-left: 0;
}
.v-avatar-stack b {
  color: #a3a3a5;
  background: 0 0;
  border: 0;
  border-radius: 0;
  width: auto;
  height: auto;
  margin-left: 8px;
  font-size: 12px;
}
.v-person-meta {
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 9px;
  margin-top: 4px;
  display: flex;
}
.v-person-meta > span,
.v-person-meta > em {
  font-style: normal;
}
.v-person-meta .online {
  color: #7bc18f;
}
.v-person-meta .offline {
  color: #77777a;
}
.v-community-chat-page[data-panel="members"],
.v-community-chat-page[data-panel="settings"] {
  grid-template-rows: auto minmax(0, 1fr);
}
.v-community-menu {
  color: #eee !important;
  background: #111112 !important;
  border: 1px solid #ffffff24 !important;
  min-width: 210px !important;
}
.v-community-menu [role="menuitem"] {
  gap: 9px;
  min-height: 40px;
  font-size: 11px;
}
.v-community-menu svg {
  width: 15px;
  height: 15px;
}
.v-community-menu-danger {
  color: #d78f8f !important;
}
.v-community-members-page {
  flex-direction: column;
  gap: 7px;
  min-height: 0;
  padding: 12px;
  display: flex;
  overflow-y: auto;
}
.v-community-members-page > button {
  min-height: 70px;
  color: inherit;
  text-align: left;
  background: #111112;
  border: 1px solid #ffffff1c;
  border-radius: 15px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 10px 12px;
  display: grid;
}
.v-community-members-page > button > i {
  background: #232325 50% / cover;
  border-radius: 50%;
  place-items: center;
  width: 47px;
  height: 47px;
  font-style: normal;
  display: grid;
}
.v-community-members-page > button > span {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}
.v-community-members-page strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 500;
  overflow: hidden;
}
.v-community-members-page small {
  font-size: 9px;
}
.v-community-members-page > button > svg {
  color: #777;
  width: 17px;
  height: 17px;
}
.v-community-settings-page {
  align-content: start;
  min-height: 0;
  padding: 20px;
  overflow-y: auto;
}
.v-community-settings-page textarea {
  min-height: 180px !important;
}
.v-community-chat-messages > article,
.v-community-chat-messages > article.own {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: end;
}
.v-community-chat-messages > article.own {
  grid-template-columns: minmax(0, 1fr) auto;
}
.v-community-message-avatar {
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 50%;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  display: grid;
  overflow: hidden;
}
.v-community-message-avatar:disabled {
  cursor: default;
}
.v-community-message-avatar > i {
  border-radius: inherit;
  background: #202022 50% / cover;
  place-items: center;
  width: 100%;
  height: 100%;
  font-style: normal;
  display: grid;
}
.v-community-message-avatar svg {
  width: 17px;
  height: 17px;
}
.v-community-chat-messages > article.own > .v-community-message-avatar {
  grid-column: 2;
}
.v-community-chat-messages > article.own > div {
  grid-area: 1/1;
}
.v-community-chat-messages > article > div {
  min-width: 0;
}
.v-community-chat-messages small {
  font-size: 9px;
}
.v-community-chat-messages p {
  font-size: 14px;
  line-height: 1.48;
}
.v-reader-page {
  gap: 12px;
}
.v-reader-page-content {
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  flex-direction: column;
  gap: 17px;
  padding: 17px;
  display: flex;
}
.v-reader-page .v-reader-visual {
  height: clamp(190px, 50cqw, 330px);
}
.v-reader-video {
  aspect-ratio: 16/9;
  object-fit: contain;
  background: #000;
  border: 1px solid #ffffff24;
  border-radius: 17px;
  width: 100%;
  display: block;
}
.v-admin-neutral-loader {
  color: #ddd;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-height: 52svh;
  display: flex;
}
.v-admin-neutral-loader > svg {
  color: #888;
  width: 24px;
  height: 24px;
}
.v-admin-neutral-loader strong {
  font-size: 13px;
  font-weight: 500;
}
.v-admin-neutral-loader small {
  color: #666;
  font-size: 9px;
}
.v-control-boot-neutral > svg {
  color: #888;
  width: 24px;
  height: 24px;
  animation: 1s linear infinite v-spin;
}
.v-control-boot-neutral p {
  color: #777;
}
@media (width<=420px) {
  .v-city-loader canvas {
    min-height: 390px;
  }
  .v-ai-hero-copy > div {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .v-ai-hero .v-primary {
    justify-self: start;
  }
  .v-ai-live-card {
    grid-template-columns: 1fr;
  }
  .v-ai-live-card .v-outline-button {
    justify-self: start;
  }
  .v-opportunity-hero > div:first-child {
    grid-template-areas: "label count" "title title" "action action";
    align-items: end;
  }
  .v-opportunity-hero > div:first-child > small {
    justify-self: end;
    margin-top: 0;
  }
  .v-opportunity-hero .v-primary {
    justify-self: start;
    margin-top: 15px;
  }
  .v-opportunity-hero h2 {
    margin-top: 13px;
  }
  .v-acquaintance-card {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
  }
  .v-avatar-stack i {
    width: 34px;
    height: 34px;
    margin-left: -10px;
  }
  .v-avatar-stack b {
    margin-left: 5px;
    font-size: 10px;
  }
}
.v-route-hero {
  min-height: clamp(176px, 38cqw, 215px);
  padding: clamp(16px, 3.4cqw, 24px);
}
.v-route-hero .v-hero-copy h2 {
  letter-spacing: -0.025em;
  margin: 9px 0 2px;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(24px, 6.2cqw, 38px);
  font-weight: 600;
  font-stretch: 100%;
  line-height: 1;
}
.v-route-hero .v-hero-copy {
  min-width: 0;
  max-width: 100%;
}
.v-route-hero .v-hero-copy h2 {
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: balance;
  width: auto;
  max-width: 100%;
  font-stretch: 100%;
  transform: none;
}
.v-route-hero .v-hero-copy p {
  max-width: 32ch;
  margin: 5px 0 11px;
  line-height: 1.35;
}
.v-section-card {
  min-height: clamp(155px, 35cqw, 195px);
  padding: clamp(13px, 2.7cqw, 18px);
}
.v-section-card > p {
  margin-top: 4px;
}
.v-mini-stack,
.v-material-grid {
  height: 43%;
  bottom: 5%;
}
.v-material-grid {
  gap: 5px;
}
.v-continue-card {
  min-height: clamp(135px, 25cqw, 175px);
  padding: clamp(17px, 3.4cqw, 25px);
}
.v-continue-card h4 {
  margin-top: 5px;
  font-size: clamp(18px, 3.7cqw, 29px);
}
.v-progress-row b {
  min-width: 62px;
  min-height: 37px;
}
.v-work-orbit {
  width: clamp(108px, 23cqw, 175px);
}
.v-work-hero-footer {
  gap: 10px;
  margin-top: 15px;
}
.v-work-hero-footer > span {
  padding-top: 11px;
}
.v-work-tabs {
  gap: 15px !important;
}
.v-finance-grid {
  gap: 9px;
}
.v-finance-grid > div {
  min-height: 112px;
  padding: 14px;
}
.v-finance-grid svg {
  width: 21px;
  height: 21px;
}
.v-finance-grid span {
  margin-top: 15px;
}
.v-upload-field small {
  color: #747477;
  font-size: 9px;
  line-height: 1.4;
}
.v-upload-field input[type="file"] {
  color: #aaa;
  height: auto;
  min-height: 48px;
  padding: 8px;
}
.v-upload-field input[type="file"]::file-selector-button {
  color: #111;
  min-height: 30px;
  font: inherit;
  cursor: pointer;
  background: #f1f1ef;
  border: 0;
  border-radius: 9px;
  margin-right: 10px;
  padding: 0 12px;
}
@media (width<=520px) {
  .v-route-hero {
    min-height: 176px;
  }
  .v-section-card {
    min-height: 150px;
  }
  .v-continue-card {
    min-height: 132px;
  }
  .v-work-hero {
    min-height: 220px;
  }
}
.v-chat-input.v-chat-page-input {
  grid-template-columns: minmax(0, 1fr) auto auto;
}
.v-chat-compose {
  min-width: 0;
  display: block;
  position: relative;
}
.v-chat-compose input {
  width: 100%;
}
.v-chat-compose > small {
  color: #e9a3a3;
  pointer-events: none;
  font-size: 9px;
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
}
.v-chat-input .v-voice-button {
  color: #dededc !important;
  background: #1a1a1b !important;
  border: 1px solid #ffffff24 !important;
}
@keyframes v-voice-pulse {
  50% {
    box-shadow: 0 0 0 6px #cf4d4d1f;
  }
}
.v-control-page .v-admin-tabs {
  grid-template-columns: repeat(5, minmax(105px, 1fr));
}
.v-dossier-ai-analytics {
  background: linear-gradient(145deg, #151516, #0b0b0c);
  border: 1px solid #ffffff21;
  border-radius: 17px;
  flex-direction: column;
  gap: 13px;
  padding: 15px;
  display: flex;
}
.v-dossier-ai-analytics > header {
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  display: grid;
}
.v-dossier-ai-analytics > header > svg {
  color: #ddd;
  border: 1px solid #ffffff21;
  border-radius: 9px;
  width: 28px;
  height: 28px;
  padding: 6px;
}
.v-dossier-ai-analytics > header > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-dossier-ai-analytics > header strong {
  font-size: 12px;
  font-weight: 500;
}
.v-dossier-ai-analytics > header small {
  color: #6f6f72;
  font-size: 8px;
}
.v-dossier-ai-analytics > header em {
  color: #949497;
  white-space: nowrap;
  background: #ffffff12;
  border-radius: 999px;
  padding: 6px 9px;
  font-size: 8px;
  font-style: normal;
}
.v-dossier-ai-grid {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}
.v-dossier-ai-grid article {
  background: #0e0e0f;
  border: 1px solid #ffffff17;
  border-radius: 13px;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  min-height: 92px;
  padding: 12px;
  display: flex;
}
.v-dossier-ai-grid article > span {
  color: #707074;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 8px;
}
.v-dossier-ai-grid article > p {
  color: #c2c2c0;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 10px;
  line-height: 1.48;
}
.v-dossier-ai-grid article > p > small {
  color: #707074;
  margin-top: 5px;
  display: block;
}
.v-dossier-ai-progress p {
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  display: grid;
}
.v-dossier-ai-progress p > strong {
  font-size: 19px;
  font-weight: 500;
}
.v-dossier-ai-progress p > i {
  background: #ffffff14;
  border-radius: 99px;
  height: 5px;
  overflow: hidden;
}
.v-dossier-ai-progress p > i > b {
  border-radius: inherit;
  background: #e7e7e4;
  height: 100%;
  display: block;
}
.v-dossier-ai-empty {
  color: #777;
  margin: 0;
  font-size: 10px;
}
@media (width<=520px) {
  .v-dossier-ai-analytics > header {
    grid-template-columns: auto 1fr;
  }
  .v-dossier-ai-analytics > header em {
    grid-column: 2;
    justify-self: start;
  }
  .v-dossier-ai-grid {
    grid-template-columns: 1fr;
  }
}
.v-route-hero {
  grid-template-columns: minmax(0, 1.3fr) minmax(105px, 0.7fr);
  min-height: clamp(230px, 51cqw, 285px);
  padding: clamp(21px, 4.4cqw, 31px);
}
.v-route-hero .v-hero-copy > span {
  color: #a2a2a5;
  font-size: clamp(10px, 2.1cqw, 14px);
}
.v-route-hero .v-hero-copy h2 {
  margin: 17px 0 7px;
  font-size: clamp(29px, 7.4cqw, 45px);
  line-height: 0.95;
}
.v-route-hero .v-hero-copy p {
  max-width: 25ch;
  margin: 0 0 19px;
  font-size: clamp(12px, 2.6cqw, 16px);
}
.v-route-hero .v-primary {
  min-height: 44px;
}
.v-route-media {
  width: min(100%, 145px);
  transform: translate(7px, 4px) rotate(2deg);
}
.v-route-media > i {
  border-radius: 12px;
}
.v-section-heading {
  align-items: center;
  margin: 2px 0 0;
}
.v-section-heading h3 {
  font-size: clamp(25px, 6cqw, 34px);
}
.v-section-card h4 {
  margin-right: 27px;
  font-size: clamp(18px, 4.4cqw, 24px);
}
.v-section-card .v-card-arrow svg {
  width: 20px;
  height: 20px;
}
.v-mini-stack {
  height: 52%;
  bottom: 5%;
}
.v-material-grid {
  gap: 5px;
  height: 49%;
  bottom: 6%;
}
.v-mini-stack i,
.v-material-grid i {
  background: linear-gradient(145deg, #272729, #111112 68%);
}
.v-continue-card {
  border-radius: 19px;
  gap: 10px;
  min-height: 132px;
  padding: 17px 19px;
}
.v-continue-card > div:first-child > span {
  font-size: 10px;
}
.v-continue-card h4 {
  overflow-wrap: anywhere;
  max-width: 31ch;
  margin: 6px 0 3px;
  font-size: clamp(18px, 4.4cqw, 25px);
}
.v-continue-card > svg {
  width: 22px;
  height: 22px;
}
.v-progress-row {
  gap: 12px;
  margin-top: 5px;
}
.v-progress-row b {
  min-width: 59px;
  min-height: 35px;
  padding-inline: 10px;
  font-size: 12px;
}
.v-ai-hero {
  grid-template-columns: minmax(0, 1.15fr) minmax(100px, 0.85fr);
  align-items: center;
  min-height: clamp(230px, 53cqw, 290px);
  padding: clamp(21px, 4.5cqw, 31px);
  display: grid;
}
.v-ai-hero-copy {
  gap: 24px;
  height: auto;
}
.v-ai-hero-copy > span {
  font-size: 10px !important;
}
.v-ai-hero-copy > div {
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  display: flex;
}
.v-ai-hero h2 {
  max-width: 7ch;
  font-size: clamp(34px, 8.4cqw, 48px);
  line-height: 0.98;
}
.v-ai-disc {
  background: radial-gradient(
    circle at 58% 38%,
    #303032,
    #181819 54%,
    #0d0d0e 82%
  );
  border-color: #fff3;
  width: min(100%, 148px);
  transform: none;
}
.v-ai-disc svg {
  width: 42%;
  height: 42%;
}
.v-role-card,
.v-goals-card,
.v-dialog-card,
.v-people-card {
  border-radius: 19px;
  padding: 17px;
}
.v-role-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.v-role-grid button {
  border-radius: 14px;
  gap: 7px;
  min-width: 0;
  min-height: 68px;
  padding: 9px;
}
.v-role-grid svg {
  flex: none;
  width: 21px;
  height: 21px;
}
.v-role-grid span {
  text-overflow: ellipsis;
  min-width: 0;
  font-size: clamp(10px, 2.45cqw, 13px);
  overflow: hidden;
}
.v-goals-card > div {
  border-radius: 14px;
  gap: 11px;
  min-height: 66px;
  padding: 12px;
}
.v-ai-live-card {
  border-radius: 18px;
  min-height: 112px;
  padding: 15px;
}
.v-dialog-card > div > small {
  font-size: 10px;
}
.v-reflection-card {
  border-radius: 18px;
  min-height: 96px;
  padding: 14px;
}
.v-opportunity-hero {
  grid-template-columns: minmax(0, 1.25fr) minmax(95px, 0.75fr);
  align-items: center;
  min-height: clamp(225px, 51cqw, 280px);
  padding: clamp(20px, 4.3cqw, 30px);
  display: grid;
}
.v-opportunity-hero > div:first-child {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: auto;
  display: flex;
}
.v-opportunity-hero > div:first-child > small {
  margin-top: 6px;
  padding: 5px 9px;
  font-size: 9px;
}
.v-opportunity-hero h2 {
  -webkit-line-clamp: 3;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  max-width: 13ch;
  margin: 21px 0 19px;
  font-size: clamp(26px, 6.7cqw, 39px);
  line-height: 0.98;
  display: -webkit-box;
  overflow: hidden;
}
.v-opportunity-hero .v-primary {
  min-height: 43px;
  font-size: 11px !important;
}
.v-opportunity-symbol {
  aspect-ratio: 1;
  color: #cfcfcd;
  background: linear-gradient(145deg, #29292b, #111112 67%);
  border: 1px solid #ffffff2e;
  border-radius: 28px;
  justify-self: end;
  place-items: center;
  width: min(100%, 145px);
  display: grid;
  position: relative;
  transform: rotate(-4deg);
  box-shadow:
    12px 22px 30px #00000080,
    inset 1px 1px #ffffff14;
}
.v-opportunity-symbol > svg {
  stroke-width: 1.25px;
  width: 42%;
  height: 42%;
}
.v-opportunity-symbol > span {
  aspect-ratio: 1;
  background: #161617;
  border: 1px solid #ffffff2e;
  border-radius: 12px;
  place-items: center;
  width: 33%;
  display: grid;
  position: absolute;
  bottom: 9%;
  right: 10%;
}
.v-opportunity-symbol > span svg {
  width: 54%;
  height: 54%;
}
.v-env-card {
  border-radius: 18px;
  min-height: clamp(168px, 40cqw, 205px);
  padding: 14px;
  overflow: hidden;
}
.v-community-card > div i {
  gap: 7px;
}
.v-feed-card i {
  min-height: 45px;
  padding: 8px;
}
.v-online-card > small {
  margin-top: 34px;
  font-size: 11px;
}
.v-online-card > div {
  gap: 0;
  bottom: 17px;
  left: 14px;
  right: 14px;
}
.v-online-card > div i {
  border: 2px solid #111112;
  width: 41px;
  margin-right: -7px;
  font-size: 13px;
  background-position: 50% !important;
  background-size: cover !important;
}
.v-online-card > div i svg {
  width: 17px;
  height: 17px;
}
.v-activity-card > div {
  justify-content: space-between;
  gap: 3px;
  height: 45%;
  bottom: 19px;
  left: 14px;
  right: 14px;
}
.v-activity-card > div i {
  background: linear-gradient(#555558, #2b2b2d);
  flex: 1;
  max-width: none;
  min-height: 7px;
}
.v-people-card article {
  border-radius: 14px;
  gap: 10px;
  min-height: 68px;
  padding: 9px 11px;
}
.v-people-card article > i {
  width: 43px;
  font-size: 14px;
  background-position: 50% !important;
  background-size: cover !important;
}
.v-people-card article strong {
  font-size: 13px;
}
.v-people-card article small {
  font-size: 9px;
}
.v-people-card article > .v-primary {
  border-radius: 12px !important;
  min-height: 38px !important;
  padding-inline: 13px !important;
  font-size: 10px !important;
}
.v-people-empty {
  color: #ddd;
  text-align: left;
  cursor: pointer;
  background: #141415;
  border: 1px solid #ffffff1f;
  border-radius: 14px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 11px;
  min-height: 72px;
  padding: 12px;
  display: grid;
}
.v-people-empty > svg {
  width: 22px;
  height: 22px;
}
.v-people-empty > span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-people-empty strong {
  font-size: 12px;
  font-weight: 500;
}
.v-people-empty small {
  color: #777;
  font-size: 9px;
}
@media (width<=400px) {
  .v-route-hero {
    grid-template-columns: minmax(0, 1.45fr) minmax(82px, 0.55fr);
  }
  .v-route-media {
    width: 105px;
  }
  .v-section-heading button {
    display: none;
  }
  .v-role-grid button {
    flex-direction: column;
    min-height: 70px;
  }
  .v-role-grid span {
    max-width: 100%;
  }
  .v-ai-hero {
    grid-template-columns: minmax(0, 1.3fr) minmax(88px, 0.7fr);
  }
  .v-ai-disc {
    width: 108px;
  }
  .v-ai-hero .v-primary {
    white-space: normal;
  }
  .v-opportunity-hero {
    grid-template-columns: minmax(0, 1.35fr) minmax(82px, 0.65fr);
  }
  .v-opportunity-symbol {
    border-radius: 22px;
    width: 105px;
  }
  .v-opportunity-hero h2 {
    font-size: 25px;
  }
}
.v-screen {
  min-width: 0;
}
.v-route-hero.v-photo-hero {
  aspect-ratio: auto;
  align-items: stretch;
  width: 100%;
  min-height: 238px;
  padding: 22px;
  overflow: hidden;
}
.v-opportunity-hero.v-photo-hero {
  aspect-ratio: 2;
  width: 100%;
  min-height: 176px;
  padding: 16px;
}
.v-chat-page-input.is-listening {
  grid-template-columns: 1fr auto;
  align-items: center;
}
.v-voice-capture {
  min-width: 0;
}
.v-voice-wave {
  overflow: hidden;
}
@media (width<=520px) {
  .v-shell {
    width: 100%;
    max-width: none;
    margin: 0;
  }
  .v-main {
    width: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }
  .v-screen {
    width: 100%;
  }
  .v-route-hero.v-photo-hero {
    min-height: 238px;
  }
  .v-section-card {
    min-height: 180px;
  }
  .v-bottom-nav {
    width: 100%;
    left: 0;
    right: 0;
  }
}
@media (width<=370px) {
  .v-route-hero.v-photo-hero {
    min-height: 226px;
    padding: 18px;
  }
  .v-route-hero.v-photo-hero .v-hero-copy {
    min-height: 190px;
  }
  .v-route-hero .v-hero-copy h2,
  .v-route-hero .v-hero-copy h2.v-money-title {
    font-size: 26px;
  }
  .v-route-hero .v-primary {
    padding-inline: 13px !important;
    font-size: 11px !important;
  }
}
.v-chat-simple-head .v-chat-more {
  color: #ddd;
  background: #171718;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  display: grid;
}
.v-chat-simple-head .v-chat-more svg {
  width: 18px;
  height: 18px;
}
.v-chat-action-menu {
  color: #ddd !important;
  background: #151516 !important;
  border: 1px solid #ffffff21 !important;
  border-radius: 14px !important;
  min-width: 190px !important;
  padding: 6px !important;
}
.v-chat-action-menu [data-slot="dropdown-menu-item"] {
  border-radius: 9px;
  min-height: 40px;
  font-size: 11px;
}
.v-chat-action-menu svg {
  width: 15px;
  height: 15px;
}
.v-voice-capture {
  background: #151516;
  border: 1px solid #ffffff21;
  border-radius: 14px;
  grid-template-columns: minmax(92px, 0.8fr) minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 49px;
  padding: 8px 12px;
  display: grid;
}
.v-voice-wave {
  justify-content: space-between;
  align-items: center;
  gap: 3px;
  height: 30px;
  display: flex;
  overflow: hidden;
}
.v-voice-wave i {
  background: #ededeb;
  border-radius: 999px;
  width: 3px;
  min-height: 3px;
  transition: height 80ms linear;
}
.v-voice-capture > span {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}
.v-voice-capture strong {
  font-size: 11px;
  font-weight: 500;
}
.v-voice-capture small {
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #747477;
  font-size: 8px;
  overflow: hidden;
}
.v-chat-input.is-listening .v-voice-button {
  animation: none;
  color: #111 !important;
  background: #efefed !important;
  border-color: #efefed !important;
}
.v-chat-input.is-listening .v-voice-button svg {
  fill: currentColor;
  width: 14px;
  height: 14px;
}
@media (width<=360px) {
  .v-voice-capture {
    grid-template-columns: minmax(80px, 0.8fr) minmax(0, 1fr);
    gap: 8px;
    padding-inline: 9px;
  }
  .v-voice-wave {
    gap: 2px;
  }
  .v-voice-wave i {
    width: 2px;
  }
}
:root {
  --side: clamp(14px, 3.2cqw, 20px);
}
.v-header {
  height: auto;
  min-height: 86px;
  padding: max(14px, env(safe-area-inset-top)) var(--side) 12px;
  background: #000;
  grid-template-columns: 52px minmax(0, 1fr) 52px;
}
.v-profile-trigger,
.v-menu,
.v-logo.v-back {
  width: 48px;
  height: 48px;
}
.v-profile-trigger {
  border: 1px solid #ffffff2e;
  box-shadow: inset 0 0 0 1px #000000b3;
}
.v-menu {
  border: 1px solid #ffffff8c;
  border-radius: 50%;
}
.v-menu svg {
  width: 25px;
  height: 25px;
}
.v-logo.v-back {
  background: #101011;
  border: 1px solid #ffffff47;
  border-radius: 50%;
}
.v-logo.v-back svg {
  width: 22px;
  height: 22px;
}
.v-header-center {
  gap: 5px;
}
.v-header-center h1 {
  letter-spacing: -0.025em;
  font-size: clamp(23px, 5.7cqw, 29px);
}
.v-header-badge {
  max-width: 180px;
  padding: 5px 13px;
  font-size: 11px;
}
.v-main {
  padding-top: 7px;
  padding-bottom: calc(92px + env(safe-area-inset-bottom));
}
.v-home-screen,
.v-ai-screen,
.v-environment-screen {
  gap: 10px;
}
.v-primary {
  min-height: 45px;
  border-radius: 16px !important;
  padding-inline: 21px !important;
  font-size: 13px !important;
  box-shadow:
    0 10px 22px #00000057,
    inset 0 -1px #00000014 !important;
}
.v-primary svg {
  width: 18px;
  height: 18px;
}
.v-route-hero,
.v-ai-hero,
.v-opportunity-hero {
  border-radius: 20px;
  min-height: clamp(238px, 55cqw, 270px);
  padding: clamp(20px, 4.7cqw, 25px);
}
.v-route-hero {
  grid-template-columns: minmax(0, 1.32fr) minmax(104px, 0.68fr);
}
.v-route-hero .v-hero-copy > span,
.v-ai-hero-copy > span {
  letter-spacing: 0.035em;
  font-size: 10px !important;
}
.v-route-hero .v-hero-copy h2 {
  letter-spacing: -0.04em;
  margin: 16px 0 7px;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(30px, 8cqw, 39px);
  font-weight: 600;
  line-height: 0.96;
}
.v-route-hero .v-hero-copy p {
  margin: 0 0 19px;
  font-size: 12px;
  line-height: 1.45;
}
.v-route-media {
  aspect-ratio: 0.76;
  width: min(100%, 134px);
  transform: translate(5px, 3px) rotate(1deg);
}
.v-route-media > i {
  background-blend-mode: soft-light, normal;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='3' seed='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.25'/%3E%3C/svg%3E"),
    linear-gradient(145deg, #303031, #121213 66%);
  border-color: #ffffff40;
  box-shadow:
    10px 15px 24px #00000094,
    inset 1px 1px #ffffff12;
}
.v-route-media > span {
  border-width: 2px;
  width: 49px;
}
.v-section-heading {
  margin: 13px 0 7px;
}
.v-section-heading h3 {
  letter-spacing: -0.035em;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(23px, 6.1cqw, 29px);
  font-weight: 600;
}
.v-section-heading button {
  font-size: 9px;
}
.v-section-card h4 {
  letter-spacing: -0.025em;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(18px, 4.6cqw, 22px);
  font-weight: 600;
}
.v-section-card > p {
  margin-top: 5px;
  font-size: 11px;
}
.v-section-card .v-card-arrow {
  top: 13px;
  right: 11px;
}
.v-mini-stack i {
  background-blend-mode: soft-light, normal;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='3' seed='7'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.27'/%3E%3C/svg%3E"),
    linear-gradient(145deg, #303031, #111 68%);
  border-color: #ffffff45;
  box-shadow:
    8px 13px 18px #00000094,
    inset 1px 1px #ffffff12;
}
.v-material-grid i {
  background: linear-gradient(145deg, #29292b, #111112 70%);
  border-color: #ffffff40;
  box-shadow:
    inset 1px 1px #ffffff0e,
    3px 6px 10px #0000004d;
}
.v-continue-card h4 {
  max-width: 28ch;
  font-size: clamp(18px, 4.7cqw, 23px);
}
.v-continue-card p {
  font-size: 10px;
}
.v-progress-row {
  margin-top: 3px;
}
.v-progress-row b {
  min-width: 56px;
  min-height: 34px;
  font-size: 11px;
}
.v-ai-hero {
  grid-template-columns: minmax(0, 1.18fr) minmax(104px, 0.82fr);
}
.v-ai-hero h2 {
  letter-spacing: -0.055em;
  max-width: none;
  margin: 0;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(35px, 9.2cqw, 44px);
  font-weight: 500;
  line-height: 0.98;
}
.v-ai-hero h2 b {
  font: inherit;
  display: block;
}
.v-ai-disc {
  background-blend-mode: soft-light, normal;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='3' seed='10'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.22'/%3E%3C/svg%3E"),
    radial-gradient(circle at 43% 34%, #39393a, #19191a 55%, #09090a 88%);
  border-color: #ffffff4a;
  width: min(100%, 145px);
  box-shadow:
    11px 24px 33px #000000a3,
    inset 2px 2px #ffffff0f,
    inset -15px -17px 25px #0000006e;
}
.v-ai-disc svg {
  filter: drop-shadow(3px 5px 3px #cfa97038);
}
.v-role-card > h3,
.v-goals-card > h3 {
  margin-bottom: 12px;
  font-size: 11px;
}
.v-role-grid button {
  border-radius: 13px;
  gap: 8px;
  min-height: 64px;
  padding: 9px;
}
.v-goals-card > div {
  border-radius: 13px;
  min-height: 61px;
  padding: 11px;
}
.v-dialog-card > div {
  gap: 5px;
  width: 100%;
  min-width: 0;
}
.v-dialog-card > div > small {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%;
  font-size: 10px;
  display: -webkit-box;
  overflow: hidden;
}
.v-dialog-card em {
  color: #66666a;
  letter-spacing: 0.13em;
  font-size: 7px;
  font-style: normal;
}
.v-opportunity-hero {
  grid-template-columns: minmax(0, 1.22fr) minmax(108px, 0.78fr);
}
.v-opportunity-hero > div:first-child > span {
  font-size: 12px;
}
.v-opportunity-hero > div:first-child > small {
  margin-top: 5px;
  font-size: 8px;
}
.v-opportunity-hero h2 {
  max-width: 12ch;
  margin: 18px 0;
  font-size: clamp(27px, 7.2cqw, 36px);
}
.v-opportunity-symbol {
  background-blend-mode: soft-light, normal;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' seed='12'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.25'/%3E%3C/svg%3E"),
    linear-gradient(145deg, #343435, #101011 72%);
  border-color: #ffffff40;
  border-radius: 27px;
  width: min(100%, 143px);
  transform: rotate(-5deg);
  box-shadow:
    12px 23px 31px #0000009e,
    inset 2px 2px #ffffff14,
    inset -13px -15px 22px #00000057;
}
.v-opportunity-symbol > svg {
  stroke-width: 1.45px;
  filter: drop-shadow(3px 5px 5px #00000073);
  width: 49%;
  height: 49%;
}
.v-opportunity-symbol > span {
  border-radius: 14px;
  width: 39%;
  bottom: 7%;
  right: 7%;
  box-shadow:
    -8px -7px 18px #00000061,
    inset 1px 1px #ffffff0f;
}
.v-env-card > svg {
  width: 19px;
  height: 19px;
  top: 12px;
  right: 10px;
}
.v-community-card > div i {
  background: linear-gradient(145deg, #28282a, #0d0d0e 73%);
  border-color: #ffffff3b;
  box-shadow: 7px 11px 17px #00000073;
}
.v-feed-card > div {
  top: 47px;
  bottom: 7px;
}
.v-feed-card i {
  border-radius: 12px;
  min-height: 43px;
  padding: 7px;
}
.v-online-card > small {
  margin-top: 32px;
}
.v-online-card > div {
  bottom: 14px;
}
.v-activity-card > div {
  bottom: 16px;
}
.v-people-card .v-card-heading {
  font-size: 18px;
}
.v-bottom-nav {
  height: calc(76px + env(safe-area-inset-bottom));
  padding: 7px var(--side) env(safe-area-inset-bottom);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  background: #000000f7;
}
.v-bottom-nav button {
  gap: 4px;
}
.v-bottom-nav svg {
  width: 25px;
  height: 25px;
}
.v-bottom-nav span {
  font-size: 9px;
}
.v-bottom-nav i {
  height: 2px;
}
.v-bottom-nav button.active i {
  width: 32px;
}
.v-full-page-intro {
  border-radius: 18px;
  min-height: 178px;
  padding: 19px;
}
.v-full-page-intro > span {
  font-size: 8px;
}
.v-full-page-intro h2 {
  margin: 12px 0 6px;
  font-size: clamp(30px, 7.5cqw, 40px);
}
.v-full-page-intro p {
  font-size: 11px;
}
.v-menu-route {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-menu-route strong {
  margin-top: 0;
}
.v-menu-route p {
  margin: 2px 0 0;
}
.v-menu-route small {
  color: #737376;
  font-size: 10px;
  line-height: 1.4;
}
.v-menu-route .v-progress {
  margin-top: 10px;
}
.v-library-page {
  gap: 10px;
}
.v-library-group {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-library-group > header {
  justify-content: space-between;
  align-items: center;
  padding: 4px 2px 0;
  display: flex;
}
.v-library-group > header > span {
  color: #c5c5c5;
  letter-spacing: 0.06em;
  font-size: 11px;
  font-weight: 500;
}
.v-library-group > header > small {
  color: #77777a;
  border: 1px solid #ffffff1f;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 8px;
}
.v-channel-catalog {
  flex-direction: column;
  gap: 14px;
  display: flex;
}
.v-channel-catalog > header {
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  margin: 8px 0 1px;
  display: flex;
}
.v-channel-catalog > header > div > span {
  color: #6f6f72;
  letter-spacing: 0.15em;
  font-size: 8px;
}
.v-channel-catalog > header h3 {
  letter-spacing: -0.035em;
  margin: 4px 0 0;
  font-size: 23px;
  font-weight: 500;
}
.v-channel-catalog > header > small {
  color: #77777a;
  font-size: 9px;
}
.v-public-material-list > button {
  width: 100%;
  min-height: 100px;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 18px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  padding: 14px;
  display: grid;
}
.v-public-material-list > button > i {
  background: #1e1e20;
  border-radius: 14px;
  place-items: center;
  width: 48px;
  height: 48px;
  font-style: normal;
  display: grid;
}
.v-public-material-list > button > i svg {
  width: 22px;
  height: 22px;
}
.v-public-material-list > button > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-public-material-list > button > span svg {
  color: #777;
  width: 18px;
  height: 18px;
}
.v-chat-input.is-listening {
  grid-template-columns: minmax(0, 1fr) 47px;
}
.v-voice-capture {
  background: #111112;
  min-height: 51px;
  box-shadow: inset 0 1px #ffffff09;
}
.v-voice-wave {
  gap: 3px;
  height: 31px;
}
.v-voice-wave i {
  flex: 1;
  width: auto;
  max-width: 4px;
  transition: height 65ms linear;
  box-shadow: 0 0 5px #ffffff14;
}
.v-chat-input.is-listening .v-voice-button {
  width: 47px;
  height: 47px;
  border-radius: 50% !important;
}
@media (width<=400px) {
  .v-header {
    grid-template-columns: 48px minmax(0, 1fr) 48px;
  }
  .v-profile-trigger,
  .v-menu,
  .v-logo.v-back {
    width: 44px;
    height: 44px;
  }
  .v-route-hero {
    grid-template-columns: minmax(0, 1.38fr) minmax(88px, 0.62fr);
  }
  .v-route-media {
    width: 108px;
  }
  .v-ai-hero {
    grid-template-columns: minmax(0, 1.25fr) minmax(88px, 0.75fr);
  }
  .v-ai-disc {
    width: 108px;
  }
  .v-ai-hero h2 {
    font-size: 34px;
  }
  .v-opportunity-hero {
    grid-template-columns: minmax(0, 1.33fr) minmax(86px, 0.67fr);
  }
  .v-opportunity-symbol {
    border-radius: 22px;
    width: 105px;
  }
  .v-section-heading button {
    display: none;
  }
  .v-role-grid button {
    flex-direction: column;
    gap: 5px;
    min-height: 61px;
  }
  .v-role-grid span {
    font-size: 9px;
  }
}
.v-photo-hero {
  isolation: isolate;
  background: #101011;
  position: relative;
  overflow: hidden;
}
.v-photo-hero > .v-hero-photo {
  z-index: 0;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  width: 100% !important;
  height: 100% !important;
  position: absolute !important;
  inset: 0 !important;
}
.v-photo-hero:after {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, #05050680 0%, #05050640 43%, #0000 70%);
  position: absolute;
  inset: 0;
}
.v-photo-hero > :not(.v-hero-photo) {
  z-index: 2;
  position: relative;
}
.v-route-hero.v-photo-hero .v-hero-copy,
.v-opportunity-hero.v-photo-hero > div:first-of-type {
  width: min(64%, 285px);
}
.v-route-hero-photo {
  object-position: 51% center !important;
}
.v-opportunity-hero-photo {
  object-position: 50% center !important;
}
@media (width<=400px) {
  .v-route-hero.v-photo-hero .v-hero-copy,
  .v-opportunity-hero.v-photo-hero > div:first-of-type {
    width: 65%;
  }
  .v-photo-hero:after {
    background: linear-gradient(90deg, #0505068a, #05050645 49%, #0000 74%);
  }
}
.v-route-hero.v-photo-hero {
  aspect-ratio: 1.72;
  min-height: 0;
  padding: clamp(18px, 4.4cqw, 23px);
}
.v-route-hero.v-photo-hero .v-hero-copy {
  align-self: center;
  width: min(62%, 268px);
}
.v-route-hero .v-hero-copy h2.v-money-title {
  letter-spacing: -0.045em;
  max-width: none;
  font-size: clamp(27px, 7.25cqw, 36px);
  line-height: 0.98;
}
.v-money-title b {
  white-space: nowrap;
  font: inherit;
  display: block;
}
.v-opportunity-hero.v-photo-hero {
  aspect-ratio: 1.95;
  min-height: 0;
  padding: clamp(16px, 4cqw, 21px);
}
.v-opportunity-hero.v-photo-hero h2 {
  margin: clamp(12px, 3cqw, 17px) 0;
  font-size: clamp(25px, 6.6cqw, 34px);
  line-height: 1.03;
}
.v-opportunity-hero.v-photo-hero .v-primary {
  min-height: 41px;
}
.v-work-hero {
  min-height: clamp(194px, 45cqw, 220px);
  padding: clamp(18px, 4.2cqw, 23px);
}
.v-workspace-page {
  gap: 10px;
}
.v-project-workspace-hero,
.v-finance-workspace-hero {
  border: 1px solid #ffffff38;
  border-radius: 20px;
  min-height: 215px;
  padding: clamp(19px, 4.6cqw, 24px);
  position: relative;
  overflow: hidden;
}
.v-project-workspace-hero:after,
.v-finance-workspace-hero:after {
  content: "";
  border: 1px solid #ffffff17;
  border-radius: 50%;
  width: 210px;
  height: 210px;
  position: absolute;
  top: -74px;
  right: -54px;
  box-shadow:
    inset 0 0 60px #ffffff06,
    0 24px 60px #00000059;
}
.v-project-workspace-label {
  color: #aaa;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  display: flex;
}
.v-project-workspace-label svg {
  width: 16px;
  height: 16px;
}
.v-project-workspace-hero h2 {
  z-index: 1;
  overflow-wrap: anywhere;
  letter-spacing: -0.04em;
  max-width: 76%;
  margin: 22px 0 10px;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-size: clamp(28px, 7.6cqw, 39px);
  font-weight: 600;
  line-height: 1;
  position: relative;
}
.v-project-workspace-status {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}
.v-project-workspace-status > span {
  color: #aaa;
  background: #242425;
  border: 1px solid #ffffff21;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 9px;
}
.v-project-workspace-status > span[data-status="active"] {
  color: #e7ddc9;
  background: #d3b57e1a;
  border-color: #d3b57e38;
}
.v-project-workspace-status small {
  color: #878789;
  align-items: center;
  gap: 5px;
  font-size: 9px;
  display: flex;
}
.v-project-workspace-status svg {
  width: 13px;
  height: 13px;
}
.v-project-workspace-progress {
  z-index: 1;
  width: min(72%, 310px);
  margin-top: 20px;
  position: relative;
}
.v-project-workspace-progress > div {
  color: #8e8e90;
  justify-content: space-between;
  margin-bottom: 7px;
  font-size: 9px;
  display: flex;
}
.v-project-workspace-progress strong {
  color: #ddd;
  font-weight: 500;
}
.v-project-workspace-hero > button {
  z-index: 2;
  color: #aaa;
  cursor: pointer;
  background: #0c0c0dcc;
  border: 1px solid #ffffff1f;
  border-radius: 11px;
  align-items: center;
  gap: 5px;
  min-height: 34px;
  padding: 0 10px;
  font-size: 9px;
  display: flex;
  position: absolute;
  bottom: 16px;
  right: 16px;
}
.v-project-workspace-hero > button svg {
  width: 13px;
  height: 13px;
}
.v-workspace-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  display: grid;
}
.v-workspace-metrics article {
  background: linear-gradient(145deg, #151516, #0c0c0d);
  border: 1px solid #ffffff21;
  border-radius: 15px;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  min-height: 92px;
  padding: 11px;
  display: flex;
}
.v-workspace-metrics svg {
  color: #aaa;
  width: 17px;
  height: 17px;
}
.v-workspace-metrics span {
  color: #777;
  margin-top: auto;
  font-size: 8px;
}
.v-workspace-metrics strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  margin-top: 3px;
  font-size: clamp(10px, 2.6cqw, 14px);
  font-weight: 500;
  overflow: hidden;
}
.v-workspace-tabs {
  gap: 13px !important;
}
.v-workspace-tabs > .v-tab-list {
  scrollbar-width: none;
  justify-content: flex-start;
  width: 100%;
  overflow-x: auto;
}
.v-workspace-tabs > .v-tab-list::-webkit-scrollbar {
  display: none;
}
.v-workspace-tabs > .v-tab-list button {
  flex: none;
}
.v-workspace-panel {
  outline: none;
  flex-direction: column;
  gap: 10px;
  display: flex;
}
.v-workspace-form,
.v-workspace-quick-form,
.v-team-workspace,
.v-ai-accounting,
.v-finance-projects {
  border: 1px solid #ffffff26;
  border-radius: 18px;
  padding: 16px;
}
.v-workspace-form {
  flex-direction: column;
  gap: 13px;
  display: flex;
}
.v-workspace-form label {
  flex-direction: column;
  gap: 6px;
  display: flex;
}
.v-workspace-form label > span {
  color: #8b8b8e;
  font-size: 9px;
}
.v-workspace-form input,
.v-workspace-form textarea,
.v-workspace-form select,
.v-workspace-quick-form input,
.v-workspace-quick-form select,
.v-team-workspace input,
.v-ai-accounting textarea {
  color: #e9e9e7 !important;
  background: #0d0d0e !important;
  border-color: #ffffff21 !important;
}
.v-workspace-form textarea {
  resize: vertical;
  min-height: 94px;
  line-height: 1.5;
}
.v-workspace-form-title,
.v-ai-accounting-head {
  align-items: center;
  gap: 10px;
  display: flex;
}
.v-workspace-form-title > svg,
.v-ai-accounting-head > svg {
  color: #c9c9c6;
  width: 21px;
  height: 21px;
}
.v-workspace-form-title > span,
.v-ai-accounting-head > span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-workspace-form-title strong,
.v-ai-accounting-head strong {
  font-size: 13px;
  font-weight: 500;
}
.v-workspace-form-title small,
.v-ai-accounting-head small {
  color: #777;
  font-size: 8px;
}
.v-reminder-note {
  background: #00000038;
  border: 1px solid #ffffff1a;
  border-radius: 13px;
  gap: 9px;
  padding: 11px;
  display: flex;
}
.v-reminder-note svg {
  color: #ceb889;
  flex: none;
  width: 18px;
  height: 18px;
}
.v-reminder-note span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-reminder-note strong {
  font-size: 10px;
  font-weight: 500;
}
.v-reminder-note small {
  color: #79797c;
  font-size: 8px;
  line-height: 1.4;
}
.v-workspace-quick-form {
  flex-direction: column;
  gap: 9px;
  display: flex;
}
.v-workspace-quick-form > div {
  gap: 8px;
  display: flex;
}
.v-workspace-quick-form > div:first-child {
  align-items: center;
}
.v-workspace-quick-form > div:first-child svg {
  color: #aaa;
  flex: none;
  width: 19px;
  height: 19px;
}
.v-workspace-quick-form > div:last-child > * {
  flex: 1;
  min-width: 0;
}
.v-workspace-quick-form .v-primary {
  flex: none !important;
}
.v-workspace-task-list {
  flex-direction: column;
  gap: 7px;
  display: flex;
}
.v-workspace-task-list article {
  background: #101011;
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 62px;
  padding: 9px 10px;
  display: grid;
}
.v-workspace-task-list article.done {
  opacity: 0.5;
}
.v-workspace-task-list article.done strong {
  text-decoration: line-through;
}
.v-workspace-task-list button {
  color: #aaa;
  cursor: pointer;
  background: #1a1a1b;
  border: 0;
  border-radius: 10px;
  place-items: center;
  width: 33px;
  height: 33px;
  display: grid;
}
.v-workspace-task-list button:last-child {
  color: #7d6060;
  background: 0 0;
}
.v-workspace-task-list svg {
  width: 16px;
  height: 16px;
}
.v-workspace-task-list article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-workspace-task-list small {
  color: #777;
  font-size: 8px;
}
.v-workspace-task-list strong {
  overflow-wrap: anywhere;
  font-size: 11px;
  font-weight: 500;
}
.v-ai-accounting {
  flex-direction: column;
  gap: 11px;
  display: flex;
}
.v-ai-accounting form {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 8px;
  display: grid;
}
.v-ai-accounting textarea {
  resize: vertical;
  min-height: 67px;
  max-height: 140px;
  font-size: 11px;
  line-height: 1.45;
}
.v-ai-accounting-result {
  color: #bbb;
  overflow-wrap: anywhere;
  border-left: 2px solid #c9b17e;
  margin: 0;
  padding-left: 9px;
  font-size: 9px;
  line-height: 1.45;
}
.v-workspace-section-heading {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 39px;
  display: flex;
}
.v-workspace-section-heading > div {
  align-items: center;
  gap: 7px;
  display: flex;
}
.v-workspace-section-heading > div span {
  font-size: 14px;
  font-weight: 500;
}
.v-workspace-section-heading > div small {
  color: #888;
  background: #1d1d1e;
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 8px;
}
.v-workspace-section-heading > button {
  color: #8b8b8e;
  cursor: pointer;
  background: 0 0;
  border: 0;
  align-items: center;
  gap: 4px;
  font-size: 9px;
  display: flex;
}
.v-workspace-section-heading > button svg {
  width: 13px;
  height: 13px;
}
.v-workspace-transactions {
  flex-direction: column;
  display: flex;
}
.v-workspace-transactions article {
  border-bottom: 1px solid #ffffff17;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 64px;
  padding: 9px 2px;
  display: grid;
}
.v-workspace-transactions article > i {
  color: #84a38f;
  background: #181819;
  border-radius: 11px;
  place-items: center;
  width: 36px;
  height: 36px;
  font-style: normal;
  display: grid;
}
.v-workspace-transactions article > i[data-type="expense"] {
  color: #b17474;
}
.v-workspace-transactions article > i svg {
  width: 17px;
  height: 17px;
}
.v-workspace-transactions article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-workspace-transactions strong {
  overflow-wrap: anywhere;
  font-size: 10px;
  font-weight: 500;
}
.v-workspace-transactions small {
  text-overflow: ellipsis;
  color: #747477;
  white-space: nowrap;
  font-size: 8px;
  overflow: hidden;
}
.v-workspace-transactions article > b {
  white-space: nowrap;
  font-size: 10px;
  font-weight: 500;
}
.v-workspace-transactions article > button {
  color: #765b5b;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 9px;
  place-items: center;
  width: 30px;
  height: 30px;
  display: grid;
}
.v-workspace-transactions article > button svg {
  width: 14px;
  height: 14px;
}
.v-workspace-empty {
  color: #888;
  text-align: center;
  border: 1px dashed #ffffff21;
  border-radius: 15px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 130px;
  padding: 20px;
  display: flex;
}
.v-workspace-empty > svg {
  width: 25px;
  height: 25px;
  margin-bottom: 9px;
}
.v-workspace-empty strong {
  color: #bdbdbb;
  font-size: 12px;
  font-weight: 500;
}
.v-workspace-empty p {
  max-width: 32ch;
  margin: 5px 0 0;
  font-size: 9px;
  line-height: 1.45;
}
.v-team-workspace {
  flex-direction: column;
  gap: 13px;
  display: flex;
}
.v-team-role-list {
  flex-direction: column;
  gap: 7px;
  display: flex;
}
.v-team-role-list article {
  background: #101011;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 9px;
  display: grid;
}
.v-team-role-list article > i {
  background: #242425;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: 10px;
  font-style: normal;
  display: grid;
}
.v-team-role-list article > div {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-team-role-list strong {
  overflow-wrap: anywhere;
  font-size: 10px;
  font-weight: 500;
}
.v-team-role-list input {
  height: 31px;
  font-size: 9px;
}
.v-team-role-list article > button {
  color: #755;
  cursor: pointer;
  background: 0 0;
  border: 0;
  place-items: center;
  width: 29px;
  height: 29px;
  display: grid;
}
.v-team-role-list article > button svg {
  width: 14px;
  height: 14px;
}
.v-team-add {
  grid-template-columns: 1fr 1fr auto;
  gap: 7px;
  display: grid;
}
.v-workspace-delete {
  color: #9e7070;
  cursor: pointer;
  background: #8029290f;
  border: 1px solid #9d484833;
  border-radius: 14px;
  justify-content: center;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  font-size: 10px;
  display: flex;
}
.v-workspace-delete svg {
  width: 15px;
  height: 15px;
}
.v-finance-workspace-hero {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 205px;
  display: grid;
}
.v-finance-workspace-hero > div:first-child {
  z-index: 1;
  position: relative;
}
.v-finance-workspace-hero > div:first-child > span {
  color: #aaa;
  letter-spacing: 0.08em;
  font-size: 9px;
}
.v-finance-workspace-hero h2 {
  overflow-wrap: anywhere;
  letter-spacing: -0.04em;
  max-width: 10ch;
  margin: 16px 0 5px;
  font-size: clamp(28px, 7.2cqw, 38px);
  font-weight: 500;
  line-height: 1;
}
.v-finance-workspace-hero p {
  color: #858588;
  margin: 0;
  font-size: 10px;
}
.v-finance-workspace-hero > svg {
  z-index: 1;
  color: #ffffffc7;
  stroke-width: 1px;
  width: clamp(70px, 18cqw, 100px);
  height: clamp(70px, 18cqw, 100px);
  position: relative;
}
.v-finance-workspace-hero > div:last-child {
  border-top: 1px solid #ffffff1a;
  grid-column: 1/-1;
  gap: 26px;
  padding-top: 11px;
  display: flex;
}
.v-finance-workspace-hero > div:last-child span {
  flex-direction: column;
  gap: 3px;
  display: flex;
}
.v-finance-workspace-hero > div:last-child small {
  color: #747477;
  font-size: 8px;
}
.v-finance-workspace-hero > div:last-child strong {
  font-size: 12px;
  font-weight: 500;
}
.v-finance-projects {
  flex-direction: column;
  gap: 12px;
  display: flex;
}
.v-finance-projects > div:last-child {
  flex-direction: column;
  gap: 6px;
  display: flex;
}
.v-finance-projects > div:last-child > button {
  color: #ddd;
  text-align: left;
  cursor: pointer;
  background: #101011;
  border: 1px solid #ffffff1c;
  border-radius: 14px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 58px;
  padding: 8px;
  display: grid;
}
.v-finance-projects button > i {
  color: #eee;
  border-radius: 11px;
  place-items: center;
  width: 37px;
  height: 37px;
  font-size: 9px;
  font-style: normal;
  display: grid;
}
.v-finance-projects button > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-finance-projects button strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  font-weight: 500;
  overflow: hidden;
}
.v-finance-projects button small {
  text-overflow: ellipsis;
  color: #747477;
  white-space: nowrap;
  font-size: 8px;
  overflow: hidden;
}
.v-finance-projects button > svg {
  color: #777;
  width: 15px;
  height: 15px;
}
.v-finance-ledger {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
@media (width<=400px) {
  .v-route-hero.v-photo-hero {
    aspect-ratio: 1.66;
  }
  .v-route-hero.v-photo-hero .v-hero-copy {
    width: 66%;
  }
  .v-route-hero .v-hero-copy h2.v-money-title {
    font-size: clamp(25px, 7.8cqw, 31px);
  }
  .v-opportunity-hero.v-photo-hero {
    aspect-ratio: 1.82;
  }
  .v-opportunity-hero.v-photo-hero > div:first-of-type {
    width: 63%;
  }
  .v-workspace-metrics {
    grid-template-columns: 1fr 1fr;
  }
  .v-workspace-metrics article {
    min-height: 82px;
  }
  .v-workspace-metrics strong {
    font-size: 13px;
  }
  .v-project-workspace-hero h2 {
    max-width: 82%;
  }
  .v-project-workspace-progress {
    width: 63%;
  }
  .v-project-workspace-hero > button {
    justify-content: center;
    width: 35px;
    padding: 0;
    font-size: 0;
  }
  .v-ai-accounting form {
    grid-template-columns: 1fr;
  }
  .v-ai-accounting form .v-primary {
    width: 100%;
  }
  .v-team-add {
    grid-template-columns: 1fr;
  }
  .v-workspace-quick-form > div:last-child {
    grid-template-columns: 1fr 1fr;
    display: grid;
  }
  .v-workspace-quick-form > div:last-child .v-primary {
    grid-column: 1/-1;
  }
  .v-workspace-transactions article {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .v-workspace-transactions article > b {
    grid-column: 2;
  }
  .v-workspace-transactions article > button {
    grid-area: 1/3 / span 2;
  }
}
.v-texture {
  background-blend-mode: soft-light, normal, normal !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' seed='12' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.105'/%3E%3C/svg%3E"),
    radial-gradient(circle at 78% 15%, #ffffff06, #0000 34%),
    linear-gradient(145deg, #141415 0%, #0d0d0e 56%, #080809 100%) !important;
  background-size:
    220px 220px,
    auto,
    auto !important;
  border-color: #fff2 !important;
  box-shadow:
    inset 0 1px #ffffff09,
    inset 0 -24px 46px #0000003d,
    0 10px 26px #00000045 !important;
}
.v-texture:before {
  opacity: 0.075 !important;
  mix-blend-mode: soft-light !important;
  background-image: linear-gradient(
    112deg,
    #ffffff09,
    #0000 30%,
    #00000029 76%
  ) !important;
}
.v-role-card,
.v-goals-card,
.v-dialog-card,
.v-reflection-card,
.v-people-card,
.v-section-card,
.v-continue-card,
.v-env-card {
  background-color: #0d0d0e !important;
}
.v-photo-hero:after {
  background: linear-gradient(
    90deg,
    #030304b8 0%,
    #03030478 46%,
    #03030414 78%
  ) !important;
}
.v-route-hero.v-photo-hero,
.v-opportunity-hero.v-photo-hero {
  border-color: #ffffff29 !important;
}
.v-section-card {
  border-radius: 17px;
  min-height: clamp(190px, 46cqw, 214px);
  padding: 14px;
}
.v-section-card h4 {
  font-size: clamp(17px, 4.1cqw, 20px);
}
.v-section-card > p {
  color: #8a8a8d;
  font-size: 10px;
}
.v-section-card .v-card-arrow {
  color: #d5d5d3;
  top: 12px;
  right: 10px;
}
.v-mini-stack {
  height: 58%;
  inset: auto 7% 4%;
}
.v-mini-stack i {
  border-color: #ffffff29;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110' height='110'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.86' numOctaves='3' seed='7'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.105'/%3E%3C/svg%3E"),
    linear-gradient(145deg, #232325, #0b0b0c 72%) !important;
  box-shadow:
    7px 11px 17px #0000009e,
    inset 1px 1px #ffffff09 !important;
}
.v-material-grid {
  gap: 5px;
  height: 55%;
  bottom: 5%;
  left: 6%;
  right: 6%;
}
.v-material-grid i {
  border-color: #ffffff26;
  background: linear-gradient(145deg, #202022, #0d0d0e 72%) !important;
  box-shadow:
    inset 1px 1px #ffffff09,
    2px 5px 9px #00000059 !important;
}
.v-continue-card {
  border-radius: 17px;
  min-height: 116px;
  padding: 15px 16px;
}
.v-ai-hero {
  aspect-ratio: 1.96;
  border-radius: 18px;
  grid-template-columns: minmax(0, 1.2fr) minmax(96px, 0.8fr);
  min-height: 0;
  padding: clamp(17px, 4cqw, 21px);
}
.v-ai-hero-copy {
  gap: 0;
}
.v-ai-hero-copy > div {
  gap: 16px;
}
.v-ai-hero h2 {
  font-size: clamp(32px, 8.3cqw, 40px);
  line-height: 0.98;
}
.v-ai-hero .v-primary {
  min-height: 42px;
  padding-inline: 15px !important;
  font-size: 11px !important;
}
.v-ai-disc {
  border-color: #ffffff2e;
  width: min(100%, 132px);
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='g'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='3' seed='10'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.09'/%3E%3C/svg%3E"),
    radial-gradient(circle at 43% 34%, #29292a, #141415 57%, #070708 88%) !important;
  box-shadow:
    10px 20px 29px #000000b3,
    inset 1px 1px #ffffff09,
    inset -14px -16px 23px #00000073 !important;
}
.v-role-card,
.v-goals-card,
.v-dialog-card,
.v-reflection-card,
.v-people-card {
  border-radius: 17px;
  padding: 14px;
}
.v-role-card > h3,
.v-goals-card > h3 {
  color: #a7a7a9;
  margin-bottom: 10px;
  font-size: 10px;
}
.v-role-grid {
  gap: 7px;
}
.v-role-grid button {
  background: #ffffff03;
  border-color: #ffffff21;
  border-radius: 12px;
  gap: 7px;
  min-height: 54px;
  padding: 8px;
}
.v-role-grid button:not(.active) {
  color: #c7c7c5;
}
.v-role-grid button.active {
  color: #080808;
  background: #f1f1ef;
  border-color: #f1f1ef;
}
.v-role-grid svg {
  width: 19px;
  height: 19px;
}
.v-role-grid span {
  font-size: clamp(9px, 2.4cqw, 11px);
}
.v-goals-card {
  gap: 7px;
}
.v-goals-card > div {
  background: #ffffff02;
  border-color: #ffffff1f;
  border-radius: 12px;
  gap: 9px;
  min-height: 56px;
  padding: 9px 10px;
}
.v-goals-card > div > svg {
  width: 21px;
  height: 21px;
}
.v-goals-card > div > span {
  gap: 7px;
}
.v-goals-card strong,
.v-goals-card b {
  font-size: 10px;
}
.v-dialog-card {
  gap: 12px;
  min-height: 112px;
}
.v-dialog-card > div > span {
  font-size: 16px;
}
.v-reflection-card {
  min-height: 84px;
}
.v-opportunity-hero.v-photo-hero {
  aspect-ratio: 2.06;
  padding: clamp(14px, 3.7cqw, 18px);
}
.v-opportunity-hero.v-photo-hero > div:first-of-type {
  justify-content: center;
  align-self: stretch;
  width: min(57%, 240px);
  min-width: 0;
}
.v-opportunity-meta {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}
.v-opportunity-meta > span {
  color: #d0d0ce;
  font-size: 11px;
  line-height: 1;
}
.v-opportunity-meta > small {
  color: #aaa;
  background: #00000040;
  border: 1px solid #ffffff1f;
  border-radius: 8px;
  padding: 4px 8px;
  font-size: 8px;
  line-height: 1;
}
.v-opportunity-hero.v-photo-hero h2 {
  -webkit-line-clamp: 3;
  width: 100%;
  max-width: 12.5ch;
  margin: 9px 0 10px;
  font-size: clamp(22px, 5.7cqw, 27px);
  line-height: 1.01;
}
.v-opportunity-hero.v-photo-hero .v-primary {
  min-height: 38px;
  border-radius: 14px !important;
  padding-inline: 14px !important;
  font-size: 10px !important;
}
.v-environment-grid {
  gap: 8px;
}
.v-env-card {
  border-radius: 17px;
  min-height: clamp(155px, 37.5cqw, 170px);
  padding: 12px;
}
.v-env-card > span {
  font-size: clamp(15px, 3.7cqw, 18px);
  top: 12px;
  left: 12px;
}
.v-env-card > svg {
  color: #d2d2d0;
  width: 18px;
  height: 18px;
  top: 11px;
  right: 9px;
}
.v-community-card > div {
  top: 43px;
  bottom: 7px;
}
.v-community-card > div i {
  background: linear-gradient(145deg, #1d1d1f, #09090a 75%);
  border-color: #ffffff24;
  gap: 6px;
  box-shadow: 6px 9px 15px #00000094;
}
.v-community-card > div i svg {
  width: 26px;
  height: 26px;
}
.v-community-card > svg {
  width: 18px;
  height: 18px;
}
.v-community-card small {
  font-size: clamp(8px, 1.9cqw, 10px);
}
.v-feed-card > div {
  gap: 6px;
  top: 42px;
  bottom: 7px;
}
.v-feed-card i {
  background: #101011;
  border-color: #ffffff1c;
  border-radius: 11px;
  gap: 7px;
  min-height: 39px;
  padding: 7px;
}
.v-feed-card i svg {
  width: 19px;
  height: 19px;
}
.v-feed-card small {
  font-size: clamp(8px, 1.9cqw, 10px);
}
.v-online-card > small {
  color: #818184;
  margin-top: 29px;
  font-size: 10px;
}
.v-online-card > div {
  bottom: 13px;
  left: 12px;
  right: 12px;
}
.v-online-card > div i {
  border-color: #ffffff24;
  width: 37px;
  background-color: #171718 !important;
}
.v-activity-card > div {
  gap: 3px;
  height: 43%;
  bottom: 14px;
  left: 12px;
  right: 12px;
}
.v-activity-card > div i {
  background: linear-gradient(#464648, #262628);
}
.v-people-card {
  gap: 7px;
}
.v-people-card .v-card-heading {
  padding-bottom: 3px;
  font-size: 17px;
}
.v-people-card article {
  background: #0f0f10;
  border-color: #ffffff1c;
  border-radius: 12px;
  min-height: 61px;
  padding: 8px 10px;
}
.v-people-card article > i {
  width: 39px;
}
.v-people-card article > .v-primary {
  min-height: 35px !important;
}
@media (width<=400px) {
  .v-section-card {
    min-height: 180px;
  }
  .v-ai-hero {
    aspect-ratio: 1.86;
    grid-template-columns: minmax(0, 1.28fr) minmax(82px, 0.72fr);
  }
  .v-ai-disc {
    width: 105px;
  }
  .v-ai-hero h2 {
    font-size: 31px;
  }
  .v-role-grid button {
    flex-direction: row;
    min-height: 51px;
  }
  .v-opportunity-hero.v-photo-hero {
    aspect-ratio: 1.96;
  }
  .v-opportunity-hero.v-photo-hero > div:first-of-type {
    width: 61%;
  }
  .v-opportunity-hero.v-photo-hero h2 {
    font-size: 22px;
  }
  .v-env-card {
    min-height: 150px;
  }
}
html,
body {
  background: #000;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}
.v-app,
.v-shell {
  background: #000;
}
.v-texture {
  box-shadow: none;
  background-color: #111112;
  border-color: #ffffff29;
}
.v-route-hero.v-photo-hero {
  aspect-ratio: auto;
  align-items: stretch;
  width: 100%;
  height: auto;
  min-height: 238px;
  padding: 22px;
  overflow: hidden;
}
.v-route-hero.v-photo-hero .v-hero-copy {
  justify-content: flex-start;
  width: 64%;
  min-height: 194px;
}
.v-route-hero .v-hero-copy > span {
  max-width: 19ch;
  font-size: 10px;
  line-height: 1.25;
}
.v-route-hero .v-hero-copy h2,
.v-route-hero .v-hero-copy h2.v-money-title {
  overflow-wrap: normal;
  max-width: 9ch;
  margin: 16px 0 7px;
  font-size: clamp(28px, 7.4cqw, 38px);
  line-height: 0.94;
}
.v-route-hero .v-hero-copy p {
  max-width: 18ch;
  margin: 0 0 14px;
  font-size: 12px;
  line-height: 1.35;
}
.v-route-hero .v-primary {
  flex: none;
  margin-top: auto;
  min-height: 42px !important;
}
.v-opportunity-hero.v-photo-hero {
  aspect-ratio: 2;
  width: 100%;
  height: auto;
  min-height: 176px;
  padding: 16px;
}
.v-opportunity-hero.v-photo-hero > div:first-of-type {
  width: 58%;
}
.v-ai-hero h2 {
  white-space: nowrap;
  max-width: none;
  font-size: clamp(27px, 7.3cqw, 39px);
  line-height: 1;
}
.v-route-roadmap {
  flex-direction: column;
  gap: 8px;
  display: flex;
}
.v-route-roadmap > button {
  color: #e4e4e2;
  text-align: left;
  background: #101011;
  border: 1px solid #ffffff21;
  border-radius: 16px;
  grid-template-columns: 34px 1fr 22px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 67px;
  padding: 11px 14px;
  display: grid;
}
.v-route-roadmap > button.active {
  background: #161617;
  border-color: #ffffff57;
}
.v-route-roadmap > button:disabled {
  opacity: 0.42;
}
.v-route-roadmap > button > span {
  color: #9b9b9d;
  border: 1px solid #ffffff29;
  border-radius: 50%;
  place-items: center;
  width: 32px;
  height: 32px;
  font-size: 10px;
  display: grid;
}
.v-route-roadmap > button > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-route-roadmap strong {
  font-size: 14px;
  font-weight: 500;
}
.v-route-roadmap small {
  color: #747477;
  font-size: 10px;
}
.v-route-roadmap svg {
  width: 17px;
  height: 17px;
}
.v-next-route-card {
  border-radius: 20px;
  flex-direction: column;
  align-items: flex-start;
  min-height: 190px;
  padding: 24px;
  display: flex;
}
.v-next-route-card > span {
  color: #8b8b8e;
  font-size: 10px;
}
.v-next-route-card > strong {
  margin-top: 18px;
  font-size: 26px;
  line-height: 1;
}
.v-next-route-card > p {
  color: #858588;
  margin: 8px 0 20px;
  font-size: 12px;
}
.v-next-route-card .v-primary {
  margin-top: auto;
}
.v-own-profile-preview,
.v-ai-match-switch,
.v-profile-option,
.v-ai-limit-card {
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 17px;
}
.v-own-profile-preview {
  padding: 20px;
}
.v-own-profile-preview > span {
  color: #77777a;
  font-size: 10px;
}
.v-own-profile-preview > strong {
  margin-top: 9px;
  font-size: 20px;
  font-weight: 500;
  display: block;
}
.v-own-profile-preview > p {
  color: #8b8b8e;
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.45;
}
.v-ai-match-switch,
.v-profile-option {
  cursor: pointer;
  grid-template-columns: 20px 34px 1fr;
  align-items: center;
  gap: 10px;
  min-height: 66px;
  padding: 12px 14px;
  display: grid;
}
.v-ai-match-switch input,
.v-profile-option input {
  accent-color: #f1f1ef;
}
.v-ai-match-switch > i,
.v-profile-option > i {
  background: #1c1c1e;
  border-radius: 10px;
  place-items: center;
  width: 32px;
  height: 32px;
  display: grid;
}
.v-ai-match-switch svg,
.v-profile-option svg {
  width: 17px;
  height: 17px;
}
.v-ai-match-switch > span,
.v-profile-option > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-ai-match-switch strong,
.v-profile-option strong {
  font-size: 12px;
  font-weight: 500;
}
.v-ai-match-switch small,
.v-profile-option small {
  color: #77777a;
  font-size: 10px;
  line-height: 1.35;
}
.v-ai-limit-card {
  flex-direction: column;
  gap: 6px;
  margin: 9px 16px 0;
  padding: 14px;
  display: flex;
}
.v-ai-limit-card span {
  color: #9c8a67;
  font-size: 10px;
}
.v-ai-limit-card strong {
  color: #d3c096;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}
.v-ai-limit-card button {
  color: #0d0d0d;
  background: linear-gradient(135deg, #c8aa73, #8d7449);
  border: 1px solid #c7aa756b;
  border-radius: 12px;
  min-height: 40px;
  margin-top: 6px;
  font-size: 11px;
}
.v-admin-panel {
  padding-top: 0;
}
@media (width<=520px) {
  .v-shell {
    width: 100%;
    max-width: none;
    margin: 0;
  }
  .v-main {
    width: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }
  .v-screen {
    width: 100%;
    min-width: 0;
  }
  .v-route-hero.v-photo-hero {
    min-height: 238px;
  }
  .v-section-card {
    min-height: 180px;
  }
  .v-bottom-nav {
    width: 100%;
    max-width: none;
    left: 0;
    right: 0;
    transform: none;
  }
}
@media (width<=370px) {
  .v-route-hero.v-photo-hero {
    min-height: 226px;
    padding: 18px;
  }
  .v-route-hero.v-photo-hero .v-hero-copy {
    min-height: 190px;
  }
  .v-route-hero .v-hero-copy h2,
  .v-route-hero .v-hero-copy h2.v-money-title {
    font-size: 26px;
  }
  .v-route-hero .v-primary {
    padding-inline: 13px !important;
    font-size: 11px !important;
  }
}
.v-people-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-people-controls .v-ai-match-switch {
  background: #080809;
  border-color: #ffffff1a;
  border-radius: 14px;
  grid-template-columns: 15px 28px minmax(0, 1fr);
  gap: 7px;
  min-width: 0;
  min-height: 70px;
  padding: 9px;
}
.v-people-controls .v-ai-match-switch > i {
  background: #141415;
  border-radius: 9px;
  width: 28px;
  height: 28px;
}
.v-people-controls .v-ai-match-switch strong {
  font-size: 10px;
  line-height: 1.2;
}
.v-people-controls .v-ai-match-switch small {
  color: #656568;
  font-size: 8px;
  line-height: 1.25;
}
.v-people-page-list > article.is-own-profile {
  background: #121213;
  border-color: #ffffff3d;
}
.v-people-page-list > article.is-own-profile .v-person-meta:after {
  content: "это ты";
  color: #aaa;
}
.v-environment-screen .v-opportunity-hero {
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
.v-environment-screen .v-env-card,
.v-environment-screen .v-people-card {
  border-color: #ffffff1a;
  background-color: #060607 !important;
  background-image:
    radial-gradient(circle at 70% 20%, #ffffff06, #0000 31%),
    linear-gradient(145deg, #0b0b0c, #040405 72%) !important;
}
.v-environment-screen .v-people-card {
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
.v-environment-screen .v-community-card > div i {
  background: linear-gradient(145deg, #151516, #050506 76%) !important;
}
.v-environment-screen .v-community-card > div i:first-child > * {
  transform: rotate(7deg);
}
.v-environment-screen .v-community-card > div i:last-child > * {
  transform: rotate(-7deg);
}
.v-environment-screen .v-community-card > div i svg {
  flex: none;
}
@media (width<=370px) {
  .v-people-controls {
    grid-template-columns: 1fr;
  }
  .v-people-controls .v-ai-match-switch {
    min-height: 62px;
  }
}
.v-environment-screen .v-opportunity-hero {
  border: 1px solid #ffffff26;
  border-radius: 17px;
  overflow: hidden;
  box-shadow:
    inset 0 0 34px #0000007a,
    0 10px 25px #0000004d !important;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero:after {
  border-radius: inherit;
  background:
    radial-gradient(#0000 43%, #00000075 100%),
    linear-gradient(
      90deg,
      #020203b8 0%,
      #02020366 45%,
      #02020314 73%,
      #0003 100%
    ) !important;
}
.v-environment-screen .v-env-card,
.v-environment-screen .v-people-card,
.v-home-grid .v-section-card {
  border: 1px solid #ffffff21;
  border-radius: 16px;
  background-color: #080809 !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.91' numOctaves='3' seed='21'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.075'/%3E%3C/svg%3E"),
    radial-gradient(circle at 78% 13%, #ffffff06, #0000 35%),
    linear-gradient(145deg, #111112, #070708 70%) !important;
  background-size:
    180px 180px,
    auto,
    auto !important;
  box-shadow:
    inset 0 1px #ffffff06,
    inset 0 -18px 34px #00000047,
    0 7px 18px #00000040 !important;
}
.v-environment-screen .v-people-card {
  border-left: 1px solid #ffffff21;
  border-right: 1px solid #ffffff21;
}
.v-home-grid {
  gap: 8px;
}
.v-home-grid .v-section-card {
  min-height: clamp(181px, 44cqw, 204px);
  padding: 13px;
}
.v-home-grid .v-section-card h4 {
  font-size: clamp(17px, 4.2cqw, 20px);
  line-height: 1.02;
}
.v-community-page-list article > i.v-community-avatar {
  aspect-ratio: 1;
  background:
    radial-gradient(circle at 36% 28%, #ffffff1f, #0000 35%),
    linear-gradient(145deg, #242426, #101011 72%);
  border: 1px solid #ffffff2b;
  border-radius: 50%;
  place-self: center;
  place-items: center;
  width: 46px;
  height: 46px;
  display: grid;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff0e,
    0 5px 13px #00000059;
}
.v-community-page-list article > i.v-community-avatar > span {
  color: #ededeb;
  letter-spacing: -0.02em;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
  display: block;
  transform: translateY(0.5px);
}
.v-channel-library-controls {
  grid-template-columns: minmax(0, 1fr) minmax(118px, 0.58fr);
  gap: 8px;
  margin: 13px 0 10px;
  display: grid;
}
.v-channel-library-controls > label {
  background: #101011;
  border: 1px solid #ffffff21;
  border-radius: 13px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 43px;
  padding: 0 11px;
  display: flex;
}
.v-channel-library-controls > label svg {
  color: #77777a;
  flex: none;
  width: 16px;
  height: 16px;
}
.v-channel-library-controls > label input {
  min-width: 0;
  font-size: 11px;
  height: 40px !important;
  box-shadow: none !important;
  background: 0 0 !important;
  border: 0 !important;
  padding: 0 !important;
}
.v-channel-library-controls [data-slot="native-select-wrapper"] {
  width: 100%;
}
.v-channel-library-controls select {
  min-height: 43px;
  background-color: #101011 !important;
  border-color: #ffffff21 !important;
  border-radius: 13px !important;
  font-size: 10px !important;
}
.v-channel-material-list > button > div p {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}
.v-curated-channel {
  margin-top: 18px;
}
@media (width<=370px) {
  .v-home-grid .v-section-card {
    min-height: 170px;
    padding: 11px;
  }
  .v-channel-library-controls {
    grid-template-columns: 1fr;
  }
}
.v-environment-screen .v-opportunity-hero.v-photo-hero {
  aspect-ratio: 1.72;
  min-height: 238px;
  padding: clamp(18px, 4.4cqw, 23px);
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  max-width: 11ch;
  margin: 15px 0 17px;
  font-size: clamp(28px, 7.2cqw, 36px);
  line-height: 0.98;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  min-height: 42px;
  padding-inline: 15px !important;
  font-size: 11px !important;
}
.v-channel-mark {
  background-blend-mode: soft-light, normal;
  background-color: #101011;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.82' numOctaves='4' seed='17'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E"),
    radial-gradient(circle at 38% 28%, #252527, #111112 54%, #060607 88%);
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 96px;
  height: 96px;
  display: grid;
  overflow: hidden;
  box-shadow:
    inset 1px 1px #ffffff0e,
    inset -11px -13px 20px #00000080,
    0 15px 30px #00000085;
}
.v-channel-mark b {
  color: #f1f1ef;
  text-shadow: 0 1px 8px #ffffff1f;
  font-family:
    Georgia,
    Times New Roman,
    serif;
  font-size: 48px;
  font-weight: 400;
  line-height: 1;
}
.v-channel-mark.compact {
  width: 38px;
  height: 38px;
  box-shadow:
    inset 1px 1px #ffffff0b,
    0 5px 12px #00000059;
}
.v-channel-mark.compact b {
  font-size: 20px;
}
.v-subscription-card > div > .v-channel-mark {
  flex: 0 0 38px;
}
.v-subscribe-dialog {
  text-align: center;
  overflow: hidden;
}
.v-subscribe-brand {
  flex-direction: column;
  align-items: center;
  gap: 10px;
  display: flex;
}
.v-subscribe-brand > span {
  color: #77777a;
  letter-spacing: 0.18em;
  font-size: 10px;
}
.v-subscribe-dialog [data-slot="dialog-header"] {
  text-align: center;
}
.v-subscribe-dialog [data-slot="dialog-title"] {
  letter-spacing: -0.04em;
  font-size: 31px;
  line-height: 1;
}
.v-subscribe-dialog [data-slot="dialog-description"] {
  max-width: 310px;
  margin-inline: auto;
}
.v-lifetime-tariff {
  text-align: left;
  background:
    radial-gradient(circle at 78% 17%, #fff1, #0000 32%),
    linear-gradient(145deg, #181819, #0b0b0c 72%);
  border: 1px solid #ffffff29;
  border-radius: 19px;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 102px;
  padding: 17px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff09,
    0 10px 24px #0000004d;
}
.v-lifetime-tariff:before {
  content: "V";
  color: #ffffff07;
  pointer-events: none;
  font-family:
    Georgia,
    Times New Roman,
    serif;
  font-size: 105px;
  line-height: 0.8;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-48%);
}
.v-lifetime-tariff > div,
.v-lifetime-tariff > span {
  z-index: 1;
  flex-direction: column;
  gap: 5px;
  display: flex;
  position: relative;
}
.v-lifetime-tariff > div > small {
  color: #69696c;
  letter-spacing: 0.18em;
  font-size: 9px;
}
.v-lifetime-tariff > div > strong {
  color: #d2d2d0;
  font-size: 12px;
  font-weight: 500;
}
.v-lifetime-tariff > span {
  align-items: flex-end;
}
.v-lifetime-tariff > span > strong {
  color: #f4f4f2;
  letter-spacing: -0.035em;
  white-space: nowrap;
  font-size: 26px;
  font-weight: 500;
}
.v-lifetime-tariff > span > small {
  color: #77777a;
  font-size: 9px;
}
.v-dialog-tariff {
  margin: 3px 0;
}
.v-access-paywall {
  overflow-y: auto;
}
.v-access-paywall > section {
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 26px 5px 20px;
}
.v-paywall-brand {
  flex-direction: column;
  align-items: center;
  gap: 10px;
  display: flex;
}
.v-paywall-brand > span {
  color: #77777a;
  letter-spacing: 0.18em;
  font-size: 9px;
}
.v-access-paywall section > span {
  margin-top: 18px;
}
.v-access-paywall h1 {
  margin: 12px 0;
  font-size: clamp(48px, 12.5cqw, 62px);
  line-height: 0.86;
}
.v-access-paywall section > p {
  text-align: center;
  max-width: 350px;
  font-size: 13px;
  line-height: 1.45;
}
.v-access-paywall .v-lifetime-tariff {
  margin-top: 20px;
}
.v-access-paywall ul {
  width: 100%;
  margin: 17px 0;
}
.v-access-paywall li {
  justify-content: center;
}
.v-access-paywall .v-quiz-cta {
  min-height: 51px;
}
.v-dossier-ai-analytics {
  background: linear-gradient(145deg, #141415, #09090a 72%);
}
.v-dossier-ai-analytics > header em {
  background: #0d0d0e;
  border: 1px solid #ffffff14;
}
.v-dossier-ai-grid article {
  min-height: 104px;
}
.v-dossier-ai-grid article > p > small {
  line-height: 1.4;
}
.v-dossier-ai-grid article > p > small + small {
  margin-top: 3px;
}
.v-bottom-nav button:nth-child(3) svg {
  stroke-width: 1.9px;
  width: 30px;
  height: 30px;
}
@media (width<=370px) {
  .v-environment-screen .v-opportunity-hero.v-photo-hero {
    min-height: 226px;
    padding: 18px;
  }
  .v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
    font-size: 27px;
  }
  .v-channel-mark {
    width: 82px;
    height: 82px;
  }
  .v-channel-mark b {
    font-size: 42px;
  }
  .v-channel-mark.compact {
    width: 36px;
    height: 36px;
  }
  .v-channel-mark.compact b {
    font-size: 19px;
  }
  .v-access-paywall h1 {
    font-size: 45px;
  }
  .v-lifetime-tariff {
    min-height: 94px;
    padding: 14px;
  }
  .v-lifetime-tariff > span > strong {
    font-size: 22px;
  }
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
  max-width: 12ch;
  margin: 12px 0 15px;
  font-size: clamp(25px, 6.6cqw, 32px);
  line-height: 0.98;
  display: block;
  overflow: visible;
}
.v-route-checklist > article {
  background: #111112;
  border: 1px solid #ffffff21;
  border-radius: 16px;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: stretch;
  min-width: 0;
  min-height: 76px;
  display: grid;
  overflow: hidden;
}
.v-route-checklist > article.completed {
  background: linear-gradient(145deg, #121614, #0e100f 72%);
  border-color: #86aa9747;
}
.v-route-material-open {
  color: #ececea;
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 11px 7px 11px 11px;
  display: grid;
}
.v-route-material-open > svg {
  color: #747477;
  width: 17px;
  height: 17px;
}
.v-route-material-open .v-channel-link {
  color: #bca783;
}
.v-route-material-check {
  color: #6d6d70;
  cursor: pointer;
  background: #ffffff03;
  border: 0;
  border-left: 1px solid #ffffff17;
  place-items: center;
  width: 48px;
  display: grid;
}
.v-route-material-check svg {
  width: 21px;
  height: 21px;
}
.v-route-checklist .v-content-number {
  min-width: 17px;
}
.v-route-checklist .v-content-copy strong,
.v-library-list > button .v-content-copy strong,
.v-public-material-list strong {
  white-space: normal;
  text-overflow: clip;
  overflow-wrap: anywhere;
  line-height: 1.28;
  overflow: visible;
}
.v-public-material-list p,
.v-channel-material-list > button > div p {
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
  display: block;
  overflow: visible;
}
.v-public-material-list > button,
.v-public-material-list > article,
.v-public-material-list > a {
  align-items: start;
  min-height: 0;
}
.v-opportunity-page-list strong,
.v-opportunity-page-list p,
.v-feed-page-list p,
.v-community-page-list p {
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
  display: block;
  overflow: visible;
}
.v-activity-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-activity-summary article {
  background: linear-gradient(145deg, #151516, #0b0b0c 72%);
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
  min-height: 82px;
  padding: 12px;
  display: flex;
}
.v-activity-summary span {
  color: #747477;
  font-size: 9px;
}
.v-activity-summary strong {
  font-size: 21px;
  font-weight: 500;
}
.v-activity-page-list {
  flex-direction: column;
  gap: 9px;
  display: flex;
}
.v-activity-page-list > article {
  background: #111112;
  border: 1px solid #ffffff1f;
  border-radius: 16px;
  grid-template-columns: 41px minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  min-width: 0;
  padding: 13px;
  display: grid;
}
.v-activity-page-list > article > i {
  color: #c8c8c6;
  background: #1b1b1d;
  border: 1px solid #ffffff1a;
  border-radius: 12px;
  place-items: center;
  width: 41px;
  height: 41px;
  font-style: normal;
  display: grid;
}
.v-activity-page-list > article > i svg {
  width: 19px;
  height: 19px;
}
.v-activity-page-list > article > div {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}
.v-activity-page-list small {
  color: #68686b;
  font-size: 8px;
}
.v-activity-page-list strong {
  overflow-wrap: anywhere;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
}
.v-activity-page-list p {
  color: #8b8b8e;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 10px;
  line-height: 1.45;
}
.v-message > .v-message-markdown {
  color: #c8c8c7;
  overflow-wrap: anywhere;
  background: #141415;
  border: 1px solid #ffffff1f;
  border-radius: 16px 16px 16px 4px;
  flex-direction: column;
  gap: 9px;
  max-width: 86%;
  padding: 13px 15px;
  font-size: 13px;
  line-height: 1.52;
  display: flex;
}
.v-message .v-message-markdown p {
  max-width: none;
  color: inherit;
  font: inherit;
  line-height: inherit;
  background: 0 0;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
}
.v-message-markdown h4 {
  color: #f0f0ee;
  margin: 2px 0 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}
.v-message-markdown strong {
  color: #f0f0ee;
  font-weight: 600;
}
.v-message-markdown em {
  color: #d8d8d6;
}
.v-message-markdown code {
  color: #e5e5e2;
  background: #09090a;
  border: 1px solid #ffffff1a;
  border-radius: 5px;
  padding: 1px 4px;
  font-size: 0.92em;
}
.v-message .v-message-markdown .v-markdown-list-line {
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 6px;
  display: grid;
}
.v-markdown-list-line > b {
  color: #f0f0ee;
  font-weight: 600;
}
@media (width<=370px) {
  .v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
    font-size: 24px;
  }
  .v-route-checklist > article {
    grid-template-columns: minmax(0, 1fr) 44px;
  }
  .v-route-material-open {
    gap: 7px;
    padding-left: 9px;
  }
  .v-route-material-check {
    width: 44px;
  }
  .v-route-checklist .v-content-icon {
    width: 36px;
    height: 36px;
  }
  .v-message > .v-message-markdown {
    max-width: 88%;
    padding: 12px 13px;
  }
}
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-empty-opportunity-title {
  letter-spacing: -0.045em;
  max-width: none;
}
.v-empty-opportunity-title > span {
  white-space: nowrap;
  display: block;
}
.v-online-card > .v-online-stack {
  isolation: isolate;
  align-items: center;
  gap: 0;
  min-height: 48px;
  display: flex;
  bottom: 15px;
  left: 13px;
  right: 13px;
}
.v-online-card > .v-online-stack > i,
.v-online-card > .v-online-stack > b {
  color: #ededeb;
  border: 2px solid #09090a;
  border-radius: 50%;
  flex: 0 0 45px;
  place-items: center;
  width: 45px;
  height: 45px;
  margin-right: -10px;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  display: grid;
  position: relative;
  overflow: visible;
  box-shadow:
    0 0 0 1px #cda558b8,
    0 7px 15px #0000008c;
  background-color: #171719 !important;
}
.v-online-card > .v-online-stack > i:first-child {
  z-index: 4;
}
.v-online-card > .v-online-stack > i:nth-child(2) {
  z-index: 3;
}
.v-online-card > .v-online-stack > i:nth-child(3) {
  z-index: 2;
}
.v-online-card > .v-online-stack > b {
  z-index: 1;
  border-color: #ffffff29;
  margin-left: 1px;
  margin-right: 0;
  font-size: 12px;
  box-shadow:
    0 7px 15px #00000080,
    inset 0 1px #ffffff0a;
  background: linear-gradient(145deg, #222224, #0d0d0e 76%) !important;
}
.v-online-card > .v-online-stack > i.has-photo {
  background-position: 50% !important;
  background-size: cover !important;
}
.v-online-card > .v-online-stack > i > em {
  background: #92e0ba;
  border: 2px solid #09090a;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  position: absolute;
  bottom: 1px;
  right: -1px;
  box-shadow: 0 0 8px #92e0ba85;
}
.v-online-card > .v-online-stack > i.v-online-empty {
  color: #8b8b8e;
  box-shadow:
    0 0 0 1px #ffffff1f,
    0 7px 15px #00000080;
}
.v-home-grid .v-section-card {
  min-height: clamp(184px, 45cqw, 208px);
  overflow: hidden;
}
.v-home-grid .v-lessons-card h4 {
  max-width: 7.2ch;
}
.v-home-grid .v-mini-stack > i {
  border-radius: 12px;
  overflow: hidden;
}
.v-home-grid .v-mini-stack > i > svg {
  color: #c8c8c7;
  stroke-width: 1.6px;
  border: 1px solid #ffffff61;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  padding: 3px;
  position: absolute;
  top: 12px;
  left: 11px;
}
.v-home-grid .v-mini-stack > i > span,
.v-home-grid .v-material-grid > i > span {
  background: #ffffff38;
  border-radius: 99px;
  height: 2px;
  position: absolute;
  bottom: 17px;
  left: 11px;
  right: 11px;
}
.v-home-grid .v-mini-stack > i > span:last-child {
  background: #ffffff61;
  bottom: 10px;
  right: 26px;
}
.v-home-grid .v-material-grid > i {
  border-radius: 7px;
  display: block;
  position: relative;
  overflow: hidden;
}
.v-home-grid .v-material-grid > i > svg {
  color: #b9b9b8;
  stroke-width: 1.5px;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 8px;
  left: 9px;
}
.v-home-grid .v-material-grid > i > span {
  height: 1px;
  bottom: 11px;
  left: 9px;
  right: 9px;
}
.v-home-grid .v-material-grid > i > span:last-child {
  bottom: 6px;
  right: 17px;
}
.v-city-loader {
  padding: max(18px, env(safe-area-inset-top)) 18px
    max(22px, env(safe-area-inset-bottom));
  background: radial-gradient(circle at 50% 43%, #5e4e3a1f, #0000 34%), #000;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 14px;
}
.v-city-loader header {
  z-index: 2;
  min-height: 48px;
  position: relative;
}
.v-city-loader header > span {
  background: radial-gradient(circle at 36% 28%, #29292b, #0c0c0d 72%);
  border-color: #ffffff2e;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  font-family:
    Georgia,
    Times New Roman,
    serif;
  font-size: 21px;
  box-shadow:
    inset 0 1px #ffffff0d,
    0 9px 20px #0000007a;
}
.v-city-loader header > div {
  gap: 4px;
}
.v-city-loader header strong {
  color: #dddcd9;
  letter-spacing: 0.18em;
  font-size: 8px;
  font-weight: 500;
}
.v-city-loader header small {
  color: #555558;
  letter-spacing: 0.16em;
  font-size: 6px;
}
.v-city-loader header > i {
  color: #77777a;
  font-size: 6px;
}
.v-city-loader header > i b {
  background: #92e0ba;
}
.v-city-stage {
  background:
    linear-gradient(#ffffff06, #0000 38%),
    radial-gradient(at 50% 68%, #745b3a26, #0000 48%),
    linear-gradient(160deg, #0c0c0d, #030304 72%);
  border: 1px solid #ffffff1c;
  border-radius: 27px;
  width: 100%;
  min-height: min(57svh, 520px);
  position: relative;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff09,
    inset 0 -45px 70px #00000094,
    0 20px 55px #0000006b;
}
.v-city-stage:before {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(#0000 54%, #00000078 100%);
  position: absolute;
  inset: 0;
}
.v-city-loader .v-city-stage canvas {
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  position: absolute;
  inset: 0;
}
.v-city-coordinate {
  z-index: 2;
  flex-direction: column;
  gap: 3px;
  display: flex;
  position: absolute;
  bottom: 15px;
  left: 16px;
}
.v-city-coordinate span {
  color: #6f665c;
  letter-spacing: 0.2em;
  font-size: 6px;
}
.v-city-coordinate b {
  color: #82776c;
  letter-spacing: 0.12em;
  font-size: 7px;
  font-weight: 500;
}
.v-city-pulse {
  z-index: 2;
  border: 1px solid #dab27133;
  border-radius: 50%;
  place-items: center;
  width: 36px;
  height: 36px;
  display: grid;
  position: absolute;
  top: 17px;
  right: 17px;
}
.v-city-pulse:before,
.v-city-pulse:after {
  content: "";
  border: 1px solid #dab27129;
  border-radius: 50%;
  position: absolute;
  inset: 7px;
}
.v-city-pulse:after {
  background: #c9a66e;
  border: 0;
  inset: 14px;
  box-shadow: 0 0 9px #c9a66e8c;
}
.v-city-pulse > i,
.v-city-pulse > span {
  background: #dab27129;
  position: absolute;
}
.v-city-pulse > i {
  width: 46px;
  height: 1px;
}
.v-city-pulse > span {
  width: 1px;
  height: 46px;
}
.v-city-loader > section {
  border-color: #ffffff1a;
  width: 100%;
  margin: 0;
  padding: 15px 2px 0;
}
.v-city-loader > section > small {
  color: #69615a;
  letter-spacing: 0.17em;
  font-size: 7px;
}
.v-city-loader > section strong {
  color: #d8d7d4;
  font-size: 13px;
}
.v-city-loader > section b {
  color: #efeeeb;
  font-size: 24px;
}
.v-city-loader > section > i {
  background: #181818;
  border-radius: 99px;
  height: 3px;
}
.v-city-loader > section > i span {
  border-radius: inherit;
  background: linear-gradient(90deg, #66533b, #dbc39d 58%, #f1e5d1);
  box-shadow: 0 0 12px #d5b78940;
}
@media (width<=370px) {
  .v-online-card > .v-online-stack > i,
  .v-online-card > .v-online-stack > b {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }
  .v-home-grid .v-section-card {
    min-height: 174px;
  }
  .v-city-stage {
    min-height: min(54svh, 450px);
  }
}
.v-environment-screen .v-opportunity-hero.v-photo-hero {
  aspect-ratio: auto;
  width: 100%;
  height: clamp(188px, 49cqw, 214px);
  min-height: 0;
  padding: 15px;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero:after {
  inset: 0;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
  justify-content: center;
  width: min(61%, 250px);
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  overflow-wrap: anywhere;
  max-width: 11ch;
  margin: 10px 0 12px;
  font-size: clamp(22px, 5.8cqw, 28px);
  line-height: 0.98;
}
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-featured-opportunity-title {
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  flex: none;
  min-height: 39px;
}
.v-opportunity-hero-photo {
  object-fit: cover !important;
  object-position: center !important;
}
.v-online-card > small {
  margin: 0;
  font-size: 10px;
  position: absolute;
  top: 43px;
  left: 12px;
}
.v-online-card > .v-online-stack {
  max-width: calc(100% - 26px);
  min-height: 37px;
  bottom: 14px;
  left: 13px;
  right: 13px;
  overflow: visible;
}
.v-online-card > .v-online-stack > i,
.v-online-card > .v-online-stack > b {
  flex-basis: 35px;
  width: 35px;
  height: 35px;
  margin-right: -7px;
  font-size: 10px;
  box-shadow:
    0 0 0 1px #cda5589e,
    0 5px 11px #00000080;
}
.v-online-card > .v-online-stack > i > em {
  width: 8px;
  height: 8px;
}
.v-online-card > .v-online-stack > i.v-online-empty svg {
  width: 16px;
  height: 16px;
}
.v-opportunity-page-list > article:not(.expanded) > strong,
.v-opportunity-page-list > article:not(.expanded) > p {
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}
.v-opportunity-page-list > article:not(.expanded) > strong {
  -webkit-line-clamp: 2;
}
.v-opportunity-page-list > article:not(.expanded) > p {
  -webkit-line-clamp: 3;
}
.v-opportunity-more {
  color: #b5b5b6;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #ffffff38;
  width: max-content;
  padding: 2px 0;
  font-size: 10px;
}
.v-route-checklist-note {
  background: linear-gradient(145deg, #151516, #0c0c0d 75%);
  border: 1px solid #ffffff1f;
  border-radius: 15px;
  align-items: center;
  gap: 10px;
  margin: 0 0 11px;
  padding: 11px 12px;
  display: flex;
}
.v-route-checklist-note > svg {
  color: #9eb4a7;
  flex: none;
  width: 19px;
  height: 19px;
}
.v-route-checklist-note > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-route-checklist-note strong {
  color: #e5e5e3;
  font-size: 11px;
  font-weight: 500;
}
.v-route-checklist-note small {
  color: #77777a;
  font-size: 9px;
  line-height: 1.35;
}
.v-route-checklist > article {
  grid-template-columns: minmax(0, 1fr) 62px;
}
.v-route-material-check {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 62px;
  display: flex;
}
.v-route-material-check small {
  color: currentColor;
  font-size: 8px;
  line-height: 1;
}
.v-channel-mark {
  background: #09090a;
  position: relative;
}
.v-channel-mark > img {
  border-radius: inherit;
  object-fit: cover;
}
.v-channel-mark b {
  display: none;
}
.v-chat-simple-head {
  grid-template-columns: auto auto minmax(0, 1fr) auto;
}
.v-chat-brand-logo {
  border: 1px solid #ffffff26;
  border-radius: 50%;
  flex: none;
  width: 34px;
  height: 34px;
  overflow: hidden;
}
.v-chat-brand-logo img,
.v-message-v-logo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.v-message-v-logo {
  padding: 0;
  overflow: hidden;
}
.v-blocked-brand {
  margin-bottom: 18px;
}
.v-blocked-screen .v-blocked-brand + span {
  margin-top: 0;
}
.v-city-pulse {
  display: none !important;
}
.v-home-grid .v-mini-stack > i {
  width: 47%;
  height: 92%;
}
.v-home-grid .v-mini-stack > i:first-child {
  left: 2%;
}
.v-home-grid .v-mini-stack > i:nth-child(2) {
  left: 27%;
}
.v-home-grid .v-mini-stack > i:nth-child(3) {
  right: 0;
}
.v-form label > .v-form-hint {
  color: #68686b;
  margin-top: -2px;
  padding-left: 2px;
  font-size: 9px;
}
@media (width<=370px) {
  .v-environment-screen .v-opportunity-hero.v-photo-hero {
    height: 184px;
    min-height: 0;
    padding: 14px;
  }
  .v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
    font-size: 21px;
  }
  .v-route-checklist > article {
    grid-template-columns: minmax(0, 1fr) 56px;
  }
  .v-route-material-check {
    width: 56px;
  }
}
.v-city-loader {
  background: radial-gradient(circle at 50% 42%, #68686c17, #0000 35%), #000;
}
.v-city-loader header > i b {
  background: #c9c9c7;
  box-shadow: 0 0 9px #ffffff38;
}
.v-city-stage {
  background:
    linear-gradient(#ffffff06, #0000 40%),
    radial-gradient(at 50% 67%, #68686c1c, #0000 49%),
    linear-gradient(158deg, #0c0c0e, #020203 74%);
  border-color: #ffffff24;
  align-self: center;
  height: min(57svh, 520px);
  min-height: min(57svh, 520px);
  box-shadow:
    inset 0 1px #ffffff0b,
    inset 0 -45px 70px #0000009e,
    0 20px 55px #00000073;
}
.v-city-stage:before {
  background: radial-gradient(#0000 57%, #00000082 100%);
}
.v-city-coordinate span {
  color: #747477;
}
.v-city-coordinate b {
  color: #929295;
}
.v-city-stage-label {
  z-index: 2;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  display: flex;
  position: absolute;
  top: 17px;
  right: 17px;
}
.v-city-stage-label small {
  color: #555558;
  letter-spacing: 0.2em;
  font-size: 6px;
}
.v-city-stage-label span {
  color: #a2a2a4;
  letter-spacing: 0.13em;
  background: #09090a9e;
  border: 1px solid #ffffff1f;
  border-radius: 99px;
  padding: 5px 7px;
  font-size: 6px;
}
.v-city-loader > section > small {
  color: #727275;
}
.v-city-loader > section > i span {
  background: linear-gradient(90deg, #4a4a4d, #a7a7aa 58%, #eeeeeb);
  box-shadow: 0 0 10px #ffffff29;
}
.v-ai-nav-mark {
  color: currentColor;
  place-items: center;
  width: 25px;
  height: 25px;
  display: grid;
}
.v-ai-nav-mark svg,
.v-bottom-nav button:nth-child(3) > .v-ai-nav-mark svg {
  stroke-width: 1.55px;
  width: 23px;
  height: 23px;
}
.v-bottom-nav button:nth-child(3) {
  gap: 3px;
}
.v-bottom-nav button:nth-child(3) > span:not(.v-ai-nav-mark) {
  letter-spacing: 0.04em;
  font-size: 8px;
}
.v-sheet-links .v-ai-nav-mark,
.v-sheet-links .v-ai-nav-mark svg {
  width: 20px;
  height: 20px;
}
.v-online-card > .v-online-stack > i,
.v-online-card > .v-online-stack > b {
  border-color: #0a0a0b;
  box-shadow:
    0 0 0 1px #dadad78f,
    0 6px 13px #00000094;
}
.v-online-card > .v-online-stack > i > em {
  background: #e7e7e4;
  box-shadow: 0 0 7px #ffffff6b;
}
.v-ai-match-state {
  color: #89898c;
  background: #0d0d0e;
  border: 1px solid #ffffff17;
  border-radius: 12px;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  margin-top: -4px;
  padding: 8px 10px;
  font-size: 9px;
  display: flex;
}
.v-ai-match-state svg {
  color: #cececc;
  stroke-width: 1.6px;
  width: 14px;
  height: 14px;
}
.v-person-card-main > i {
  position: relative;
}
.v-person-online-dot {
  background: #ededeb;
  border: 2px solid #111112;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  position: absolute;
  bottom: 1px;
  right: 0;
  box-shadow: 0 0 7px #ffffff61;
}
.v-skill-match {
  color: #bdbdba !important;
}
.v-quiz-portrait {
  z-index: 2;
  flex-direction: column;
  justify-content: center;
  min-height: calc(100svh - 90px);
  padding: clamp(28px, 6vh, 58px) clamp(28px, 7cqw, 55px) 30px;
  animation: 0.36s ease-out both v-quiz-in;
  display: flex;
  position: relative;
}
.v-quiz-portrait > span {
  color: #8b8b8e;
  letter-spacing: 0.18em;
  font-size: 9px;
}
.v-quiz-portrait h1 {
  letter-spacing: -0.045em;
  margin: 16px 0 9px;
  font-size: clamp(34px, 9cqw, 46px);
  font-weight: 500;
  line-height: 1;
}
.v-quiz-portrait > p {
  color: #858588;
  max-width: 380px;
  margin: 0 0 19px;
  font-size: 12px;
  line-height: 1.48;
}
.v-quiz-portrait-grid {
  grid-template-columns: minmax(0, 1fr) 116px;
  gap: 10px;
  margin-bottom: 18px;
  display: grid;
}
.v-quiz-portrait-grid label {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}
.v-quiz-portrait-grid label:nth-child(n + 3) {
  grid-column: 1/-1;
}
.v-quiz-portrait-grid label > span {
  color: #aaa;
  font-size: 10px;
}
.v-quiz-portrait-grid input {
  color: #efefed !important;
  background: #121213e6 !important;
  border: 1px solid #ffffff26 !important;
  border-radius: 14px !important;
  height: 48px !important;
  padding: 0 14px !important;
  font-size: 12px !important;
  box-shadow: inset 0 1px #ffffff06 !important;
}
.v-quiz-portrait-grid input:focus {
  border-color: #ffffff5c !important;
}
.v-quiz-portrait .v-quiz-cta {
  align-self: flex-start;
}
.v-quiz-progress-complete {
  width: 100%;
  margin-bottom: 24px;
}
.v-questionnaire-context {
  border-left: 2px solid #ffffff57;
  padding: 3px 0 3px 12px;
}
.v-questionnaire-context span {
  color: #b4b4b2;
  letter-spacing: 0.12em;
  font-size: 9px;
}
.v-questionnaire-context p {
  color: #6f6f72;
  margin: 5px 0 0;
  font-size: 9px;
  line-height: 1.42;
}
.v-dossier-client-portrait {
  background: linear-gradient(145deg, #141415, #0a0a0b 74%);
  border: 1px solid #ffffff1f;
  border-radius: 16px;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  display: flex;
}
.v-dossier-client-portrait > header {
  align-items: center;
  gap: 9px;
  display: flex;
}
.v-dossier-client-portrait > header > svg {
  color: #d8d8d6;
  border: 1px solid #ffffff1f;
  border-radius: 9px;
  width: 27px;
  height: 27px;
  padding: 6px;
}
.v-dossier-client-portrait > header > span {
  flex-direction: column;
  gap: 2px;
  display: flex;
}
.v-dossier-client-portrait > header strong {
  font-size: 11px;
  font-weight: 500;
}
.v-dossier-client-portrait > header small {
  color: #69696c;
  font-size: 8px;
}
.v-dossier-client-portrait > div {
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  display: grid;
}
.v-dossier-client-portrait article {
  background: #0d0d0e;
  border: 1px solid #ffffff14;
  border-radius: 11px;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
  min-height: 62px;
  padding: 10px;
  display: flex;
}
.v-dossier-client-portrait article small {
  color: #666669;
  font-size: 8px;
}
.v-dossier-client-portrait article strong {
  color: #c9c9c7;
  overflow-wrap: anywhere;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.35;
}
@media (height<=720px) {
  .v-quiz-portrait {
    justify-content: flex-start;
    padding-top: 16px;
  }
  .v-quiz-progress-complete {
    margin-bottom: 15px;
  }
  .v-quiz-portrait h1 {
    margin-top: 12px;
    font-size: 32px;
  }
  .v-quiz-portrait > p {
    margin-bottom: 13px;
  }
  .v-quiz-portrait-grid {
    gap: 7px;
    margin-bottom: 12px;
  }
  .v-quiz-portrait-grid input {
    height: 43px !important;
  }
  .v-quiz-portrait .v-quiz-cta {
    min-height: 50px !important;
  }
}
@media (width<=370px) {
  .v-quiz-portrait {
    padding-inline: 21px;
  }
  .v-quiz-portrait-grid {
    grid-template-columns: minmax(0, 1fr) 102px;
  }
  .v-dossier-client-portrait > div {
    grid-template-columns: 1fr;
  }
}
.v-environment-screen {
  gap: 10px;
  width: 100%;
  margin-inline: 0;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero {
  aspect-ratio: 2.04;
  border: 1px solid #ffffff26;
  border-radius: 17px;
  width: 100%;
  height: auto;
  min-height: 0;
}
.v-environment-screen .v-environment-grid {
  gap: 9px;
}
.v-environment-screen .v-env-card {
  aspect-ratio: 279/221;
  border-radius: 15px;
  min-height: 0;
}
.v-environment-screen .v-people-card {
  border: 1px solid #ffffff21;
  border-radius: 17px;
}
.v-quiz-navigator {
  z-index: 6;
  aspect-ratio: 1;
  filter: none;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #030303f5;
  border: 1px solid #ffffff57;
  border-radius: 12px;
  width: clamp(32px, 8cqw, 38px);
  height: auto;
  padding: 6px;
  box-shadow:
    0 0 0 5px #000000bd,
    0 10px 26px #000000c7,
    inset 0 0 0 1px #ffffff0f;
}
.v-quiz-navigator svg {
  fill: #f4f4f2;
  stroke: #f4f4f2;
  filter: drop-shadow(0 1px 1px #000);
  width: 100%;
  height: 100%;
}
@supports (-webkit-touch-callout: none) {
  input,
  textarea,
  select {
    font-size: 16px !important;
  }
}
.v-home-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.v-home-grid .v-section-card,
.v-environment-screen .v-env-card,
.v-environment-screen .v-people-card {
  border: 1px solid #ffffff29;
  background-blend-mode: soft-light, normal, normal !important;
  background-color: #0c0c0d !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='190' height='190'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.88' numOctaves='3' seed='31' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E"),
    radial-gradient(circle at 76% 14%, #ffffff0b, #0000 34%),
    linear-gradient(145deg, #151516 0%, #0d0d0e 55%, #070708 100%) !important;
  background-size:
    190px 190px,
    auto,
    auto !important;
  box-shadow:
    inset 0 1px #ffffff0b,
    inset 0 -22px 38px #00000040,
    0 8px 20px #00000047 !important;
}
.v-home-grid .v-section-card {
  aspect-ratio: 1;
  border-radius: 17px;
  min-height: 0;
  padding: 14px;
  overflow: hidden;
}
.v-home-grid .v-section-card h4 {
  margin-right: 30px;
  font-size: clamp(17px, 4.25cqw, 20px);
  line-height: 1;
}
.v-home-grid .v-section-card > p {
  color: #929295;
  margin-top: 6px;
  font-size: clamp(10px, 2.35cqw, 12px);
}
.v-home-grid .v-card-arrow {
  top: 13px;
  right: 11px;
}
.v-home-grid .v-card-arrow svg {
  color: #e3e3e1;
  width: 19px;
  height: 19px;
}
.v-home-grid .v-mini-stack {
  height: 58%;
  inset: auto 6% 4%;
}
.v-home-grid .v-mini-stack > i,
.v-home-grid .v-material-grid > i,
.v-environment-screen .v-community-card > div > i {
  background: linear-gradient(145deg, #222224, #0c0c0d 74%);
  border-color: #ffffff2e;
  box-shadow:
    inset 0 1px #ffffff0b,
    6px 10px 17px #00000075;
}
.v-home-grid .v-material-grid {
  gap: 6px;
  height: 56%;
  bottom: 5%;
  left: 6%;
  right: 6%;
}
.v-home-grid .v-material-grid > i {
  border-radius: 8px;
}
.v-environment-screen .v-env-card {
  padding: 13px;
  overflow: hidden;
}
.v-environment-screen .v-env-card > span {
  color: #ededeb;
  font-size: clamp(16px, 3.9cqw, 19px);
  top: 13px;
  left: 13px;
}
.v-environment-screen .v-env-card > svg {
  color: #e0e0de;
  width: 19px;
  height: 19px;
  top: 12px;
  right: 11px;
}
.v-environment-screen .v-community-card > div {
  height: auto;
  inset: 49px 8px 10px;
}
.v-environment-screen .v-community-card > div > i {
  border-radius: 12px;
  gap: 8px;
  width: 50%;
}
.v-environment-screen .v-community-card > div > i:first-child {
  transform: rotate(-4deg);
}
.v-environment-screen .v-community-card > div > i:last-child {
  transform: rotate(4deg);
}
.v-environment-screen .v-community-card > div > i:first-child > * {
  transform: rotate(4deg) !important;
}
.v-environment-screen .v-community-card > div > i:last-child > * {
  transform: rotate(-4deg) !important;
}
.v-environment-screen .v-community-card > div svg {
  color: #b8b8ba;
  width: 27px;
  height: 27px;
}
.v-environment-screen .v-community-card small {
  color: #e2e2e0;
  font-size: clamp(9px, 2.15cqw, 11px);
}
.v-environment-screen .v-feed-card i,
.v-environment-screen .v-people-card article {
  background: #121213;
  border-color: #ffffff21;
}
.v-environment-screen .v-activity-card > div i {
  background: linear-gradient(#4a4a4c, #242426);
}
.v-home-grid .v-section-card,
.v-environment-screen .v-env-card,
.v-environment-screen .v-people-card {
  border-color: #ffffff2b;
  background-blend-mode: soft-light, screen, normal, normal !important;
  background-color: #050506 !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='210' height='210'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.86' numOctaves='3' seed='39' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.045'/%3E%3C/svg%3E"),
    linear-gradient(118deg, #ffffff07, #0000 31%),
    radial-gradient(circle at 78% 13%, #ffffff05, #0000 34%),
    linear-gradient(148deg, #0b0b0c 0%, #050506 57%, #020203 100%) !important;
  background-size:
    210px 210px,
    auto,
    auto,
    auto !important;
  box-shadow:
    inset 0 1px #ffffff0d,
    inset 0 0 0 1px #0000008c,
    inset 0 -26px 40px #0000006b,
    0 9px 22px #00000052 !important;
}
.v-home-grid .v-section-card:before,
.v-environment-screen .v-env-card:before,
.v-environment-screen .v-people-card:before {
  opacity: 0.05 !important;
  background-image: linear-gradient(
    112deg,
    #ffffff08,
    #0000 32%,
    #00000038 76%
  ) !important;
}
.v-home-grid .v-mini-stack > i,
.v-home-grid .v-material-grid > i,
.v-environment-screen .v-community-card > div > i,
.v-environment-screen .v-feed-card i,
.v-environment-screen .v-people-card article {
  background:
    linear-gradient(135deg, #ffffff06, #0000 38%),
    linear-gradient(155deg, #0e0e0f 0%, #070708 60%, #030304 100%);
  border-color: #ffffff25;
  box-shadow:
    inset 0 1px #ffffff0a,
    5px 9px 16px #0000007a;
}
.v-home-grid .v-section-card,
.v-environment-screen .v-env-card {
  transition:
    border-color 0.18s,
    filter 0.18s,
    transform 0.12s;
}
.v-home-grid .v-section-card:active,
.v-environment-screen .v-env-card:active {
  filter: brightness(0.94);
  transform: scale(0.992);
}
.v-home-grid .v-section-card > p,
.v-environment-screen .v-online-card > small {
  color: #7d7d80;
}
.v-home-grid .v-material-grid svg,
.v-home-grid .v-mini-stack svg,
.v-environment-screen .v-community-card > div svg {
  color: #a9a9ab;
}
.v-subscription-card,
.v-subscription-card.active {
  background:
    radial-gradient(circle at 14% 18%, #d9e2ec12, #0000 30%),
    linear-gradient(145deg, #111317 0%, #08090b 66%, #040506 100%);
  border: 1px solid #cdd6e04d;
  border-radius: 19px;
  width: 100%;
  min-height: 88px;
  margin-inline: 0;
  padding: 14px 16px;
  box-shadow:
    inset 0 1px #fff1,
    inset 0 0 0 1px #00000061,
    0 11px 24px #0000004d;
}
.v-subscription-card > div {
  gap: 13px;
}
.v-subscription-card > div > .v-channel-mark {
  border-color: #d7dfe747;
  flex-basis: 43px;
  width: 43px;
  height: 43px;
  box-shadow:
    inset 1px 1px #fff1,
    0 7px 15px #0000006b;
}
.v-subscription-card small {
  color: #8d949c;
  font-size: 12px;
}
.v-subscription-card strong {
  color: #f1f3f5;
  font-size: 16px;
  font-weight: 560;
}
.v-subscription-card > svg {
  color: #cbd3dc;
  filter: drop-shadow(0 0 8px #c6d2de29);
  width: 21px;
  height: 21px;
}
.v-library-page > .v-full-page-intro {
  background:
    radial-gradient(circle at 82% 14%, #ffffff0b, #0000 35%),
    linear-gradient(148deg, #151617 0%, #090a0b 67%, #050506 100%);
  border-color: #ffffff29;
  min-height: 198px;
  padding: 22px;
  box-shadow:
    inset 0 1px #ffffff0e,
    0 12px 26px #00000042;
}
.v-library-page > .v-full-page-intro h2:first-child {
  margin-top: 0;
}
.v-route-checklist {
  gap: 10px;
}
.v-route-checklist > article {
  background: linear-gradient(145deg, #131416 0%, #090a0b 74%);
  border-color: #ffffff29;
  min-height: 86px;
  box-shadow:
    inset 0 1px #ffffff0a,
    0 8px 18px #00000038;
}
.v-route-material-open {
  gap: 10px;
  padding: 12px 10px 12px 13px;
}
.v-route-checklist .v-content-icon {
  width: 44px;
  height: 44px;
}
.v-route-checklist .v-content-copy {
  justify-content: center;
  gap: 0;
}
.v-route-checklist .v-content-copy strong,
.v-curated-channel .v-content-copy strong {
  color: #f0f1f2;
  font-size: 15px;
  line-height: 1.3;
}
.v-route-material-open .v-channel-link,
.v-content-list .v-channel-link {
  color: #aeb7c1;
}
.v-route-material-check {
  background: #cdd6e006;
  border-left-color: #cdd6e01c;
}
.v-route-material-check[aria-pressed="true"] {
  color: #bdc8c1;
  background: #b7c7be11;
}
.v-curated-channel .v-library-list > button {
  background: linear-gradient(145deg, #131416, #090a0b 74%);
  border-color: #ffffff26;
  min-height: 86px;
  box-shadow:
    inset 0 1px #ffffff0a,
    0 8px 18px #0003;
}
.v-curated-channel .v-content-copy {
  justify-content: center;
  gap: 0;
}
.v-blocked-screen > section {
  padding-top: 28px;
}
.v-blocked-screen > section > span {
  margin-top: 0;
}
@media (width<=370px) {
  .v-subscription-card,
  .v-subscription-card.active {
    min-height: 82px;
    padding: 12px 13px;
  }
  .v-subscription-card > div > .v-channel-mark {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }
  .v-subscription-card strong {
    font-size: 14px;
  }
  .v-route-checklist > article {
    min-height: 82px;
  }
  .v-route-material-open {
    gap: 7px;
    padding-left: 10px;
  }
  .v-route-checklist .v-content-icon {
    width: 38px;
    height: 38px;
  }
  .v-route-checklist .v-content-copy strong,
  .v-curated-channel .v-content-copy strong {
    font-size: 13px;
  }
}
.v-quiz-result {
  justify-content: flex-start;
  min-height: calc(100svh - 92px);
  padding-top: clamp(34px, 7svh, 64px);
}
.v-quiz-result h1 {
  margin-top: 17px;
}
.v-quiz-result > p {
  margin-bottom: 22px;
}
.v-quiz-route.is-question {
  opacity: 0.2;
  width: min(68%, 50svh);
  left: auto;
  right: -24%;
  transform: translateY(-50%);
}
.v-quiz-portrait-grid .v-portrait-wide {
  grid-column: 1/-1;
}
.v-quiz-portrait-grid input {
  font-size: 16px !important;
}
.v-trial-preview-screen {
  width: min(100%, 480px);
  min-height: var(--tg-viewport-stable-height, 100svh);
  padding: max(20px, env(safe-area-inset-top)) 24px
    max(28px, env(safe-area-inset-bottom));
  color: #f4f4f2;
  background: #030303;
  margin: 0 auto;
  overflow-y: auto;
}
.v-trial-preview-screen > header {
  align-items: center;
  gap: 11px;
  min-height: 54px;
  display: flex;
  position: sticky;
  z-index: 30;
  top: 0;
  margin: 0 -24px;
  padding: 0 24px;
  background: #030303e8;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.v-trial-preview-screen > header > span:last-child {
  color: #858b92;
  letter-spacing: 0.16em;
  font-size: 10px;
}
.v-trial-preview-screen > section {
  flex-direction: column;
  align-items: flex-start;
  padding: 27px 0 8px;
  display: flex;
}
.v-trial-preview-screen > section > span {
  color: #8f969d;
  letter-spacing: 0.16em;
  font-size: 9px;
}
.v-trial-preview-screen h1 {
  letter-spacing: -0.055em;
  white-space: nowrap;
  margin: 13px 0 12px;
  font-size: clamp(30px, 8cqw, 40px);
  font-weight: 500;
  line-height: 1;
}
.v-trial-preview-screen p {
  color: #9a9da1;
  max-width: 400px;
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.5;
}
.v-trial-preview-screen > section > small {
  color: #686c71;
  text-align: center;
  width: 100%;
  margin-top: 12px;
  font-size: 10px;
  line-height: 1.45;
}
.v-route-page-tabs {
  width: 100%;
}
.v-route-tabs-shell {
  position: sticky;
  z-index: 25;
  top: 54px;
  width: calc(100% + 48px);
  margin: 0 -24px;
  padding: 0 24px;
  background: #030303f2;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.v-route-tabs-list {
  scrollbar-width: none;
  justify-content: flex-start;
  gap: 22px;
  width: 100%;
  height: 58px;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
  display: flex;
  overflow-x: auto;
}
.v-route-tabs-list::-webkit-scrollbar {
  display: none;
}
.v-route-tabs-list > button {
  color: #66696d;
  flex: none;
  gap: 6px;
  height: 58px;
  padding: 0;
  background: none !important;
  border: 0;
  border-radius: 0;
  box-shadow: none !important;
  font-size: 13px;
  font-weight: 500;
}
.v-route-tabs-list > button > small {
  color: #4f5154;
  letter-spacing: 0.08em;
  font-size: 9px;
  font-weight: 600;
}
.v-route-tabs-list > button[data-state="active"],
.v-route-tabs-list > button.active {
  color: #f2f1ee;
}
.v-route-tabs-list > button[data-state="active"] > small,
.v-route-tabs-list > button.active > small {
  color: #f0f1f2;
}
.v-route-tab-progress {
  background: #ffffff14;
  width: calc(100% + 48px);
  height: 2px;
  margin: 0 -24px;
  overflow: hidden;
}
.v-route-tab-progress > i {
  background: linear-gradient(90deg, #555b61, #f0f1f2);
  height: 100%;
  display: block;
  transition: width 0.32s ease;
}
.v-route-page {
  width: 100%;
  margin: 0;
  outline: none;
}
.v-route-page[data-state="active"] {
  animation: v-route-page-in 0.24s ease both;
}
@keyframes v-route-page-in {
  from {
    opacity: 0;
    transform: translateY(7px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.v-route-page-inner {
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  min-height: calc(var(--tg-viewport-stable-height, 100svh) - 114px);
  padding: 28px 0 16px;
  display: flex;
}
.v-route-page-heading > small {
  color: #7b8086;
  letter-spacing: 0.2em;
  font-size: 11px;
  font-weight: 600;
}
.v-route-page-heading > h1 {
  white-space: normal;
  margin: 14px 0 10px;
}
.v-route-page-heading > p {
  margin-bottom: 25px;
}
.v-route-page-next {
  color: #11100e;
  cursor: pointer;
  background: #f3f0e9;
  border: 0;
  border-radius: 999px;
  width: 100%;
  min-height: 58px;
  margin-top: 24px;
  padding: 0 18px;
  letter-spacing: 0.18em;
  font-size: 11px;
  font-weight: 600;
  transition:
    transform 0.15s ease,
    background 0.15s ease;
}
.v-route-page-next:active {
  background: #ded9d0;
  transform: scale(0.985);
}
.v-route-page-map .v-result-route-map {
  margin-top: 0;
}
.v-route-page-shift {
  padding-top: 0;
}
.v-route-page-shift .v-route-shift {
  min-height: calc(var(--tg-viewport-stable-height, 100svh) - 114px);
  margin-top: 0;
}
.v-route-page-access {
  justify-content: center;
  padding-top: 36px;
  padding-bottom: 40px;
}
.v-route-page-access .v-route-offer-heading {
  margin-top: 0;
}
.v-route-access-copy {
  color: #8f9397 !important;
  width: 100%;
  margin: 4px 0 24px !important;
  font-size: 15px !important;
}
.v-access-preview-video {
  background: #08090a;
  border: 1px solid #cdd6e033;
  border-radius: 20px;
  width: 100%;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff0d,
    0 14px 32px #0000005c;
}
.v-access-preview-video video {
  aspect-ratio: 1084/480;
  object-fit: contain;
  background: #050506;
  width: 100%;
  display: block;
}
.v-access-preview-video > span {
  color: #aeb5bc;
  align-items: center;
  gap: 7px;
  min-height: 39px;
  padding: 0 13px;
  font-size: 11px;
  display: flex;
}
.v-access-preview-video > span svg {
  width: 14px;
  height: 14px;
}
.v-access-preview-video.compact {
  border-radius: 16px;
}
.v-access-preview-video.compact > span {
  min-height: 34px;
  font-size: 10px;
}
.v-personal-route-result > section {
  align-items: stretch;
  padding-top: 18px;
}
.v-personal-route-result .v-route-result-kicker {
  color: #8f969d;
  letter-spacing: 0.16em;
  font-size: 10px;
  font-weight: 600;
}
.v-personal-route-result h1 {
  white-space: normal;
  width: 100%;
  margin: 12px 0 9px;
  font-size: clamp(36px, 10cqw, 52px);
  line-height: 0.94;
}
.v-personal-route-result .v-route-result-summary {
  color: #9da2a7;
  width: 100%;
  max-width: 410px;
  margin: 0 0 17px;
  font-size: 15px;
  line-height: 1.45;
}
.v-current-configuration {
  width: 100%;
  margin: 3px 0 18px;
}
.v-current-configuration > header {
  padding: 10px 1px 16px;
}
.v-current-configuration > header > small,
.v-route-shift > header > small {
  color: #777c82;
  letter-spacing: 0.24em;
  font-size: 12px;
  font-weight: 500;
}
.v-current-configuration > header > h2 {
  color: #f3f2ef;
  letter-spacing: -0.055em;
  max-width: 390px;
  margin: 14px 0 0;
  font-size: clamp(36px, 10cqw, 48px);
  font-weight: 500;
  line-height: 0.98;
}
.v-configuration-card {
  background: linear-gradient(145deg, #171819 0%, #0d0e0f 66%, #080909 100%);
  border: 1px solid #ffffff21;
  border-radius: 27px;
  padding: 20px 20px 18px;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff12,
    0 20px 45px #00000073;
}
.v-configuration-code {
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  display: flex;
}
.v-configuration-code > small {
  color: #777571;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  font-size: 12px;
}
.v-configuration-code > small:last-child {
  color: #9ba0a5;
  text-align: right;
}
.v-configuration-card > h3 {
  color: #f4f2ed;
  letter-spacing: -0.055em;
  max-width: 330px;
  margin: 4px 0 13px;
  font-size: clamp(31px, 8.6cqw, 41px);
  font-weight: 500;
  line-height: 0.98;
}
.v-configuration-card > p {
  color: #aaa6a1;
  max-width: none;
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.55;
}
.v-configuration-facts {
  border-top: 1px solid #ffffff14;
}
.v-configuration-facts > div {
  border-bottom: 1px solid #ffffff14;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  min-height: 62px;
  padding: 17px 0 15px;
  display: flex;
}
.v-configuration-facts small {
  color: #73777c;
  letter-spacing: 0.2em;
  flex: none;
  padding-top: 3px;
  font-size: 12px;
}
.v-configuration-facts strong {
  color: #e9e7e3;
  text-align: right;
  max-width: 64%;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}
.v-configuration-insight {
  color: #aaa6a1;
  background: linear-gradient(140deg, #ffffff08, #ffffff03);
  border: 1px solid #ffffff13;
  border-radius: 18px;
  margin-top: 18px;
  padding: 16px;
  font-size: 15px;
  line-height: 1.55;
}
.v-personal-route-result .v-access-preview-video {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0;
  overflow: visible;
  box-shadow: none;
  flex-direction: column;
  gap: 14px;
  display: flex;
}
.v-route-video-heading {
  order: 2;
  flex-direction: column;
  gap: 5px;
  padding: 0 2px;
  display: flex;
}
.v-route-video-heading small {
  color: #777e84;
  letter-spacing: 0.15em;
  font-size: 12px;
  font-weight: 600;
}
.v-route-video-heading strong {
  color: #eff1f2;
  letter-spacing: -0.02em;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.2;
}
.v-personal-route-result .v-access-preview-video video {
  aspect-ratio: 16/9;
  border: 1px solid #ffffff24;
  border-radius: 20px;
  box-shadow: 0 18px 36px #00000070;
}
.v-personal-route-result .v-access-route-video {
  border: 1px solid #ffffff24;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 18px 36px #00000070;
}
.v-result-route-map {
  background:
    radial-gradient(circle at 85% 10%, #dfe6ec0d, #0000 34%),
    linear-gradient(150deg, #121416, #08090a 76%);
  border: 1px solid #d5dce32b;
  border-radius: 21px;
  width: 100%;
  margin-top: 18px;
  padding: 17px 17px 12px;
  box-shadow: inset 0 1px #ffffff09;
}
.v-result-route-map > header {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-result-route-map > header > small {
  color: #777e84;
  letter-spacing: 0.15em;
  font-size: 10px;
  font-weight: 600;
}
.v-result-route-map > header > strong {
  color: #eef0f1;
  letter-spacing: -0.025em;
  font-size: 19px;
  font-weight: 500;
}
.v-result-route-track {
  flex-direction: column;
  margin-top: 14px;
  display: flex;
}
.v-result-route-track > article {
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 58px;
  display: grid;
  position: relative;
}
.v-result-route-track > article:not(:last-child):after {
  content: "";
  background: #ffffff1e;
  width: 1px;
  position: absolute;
  top: 42px;
  bottom: -16px;
  left: 17px;
}
.v-result-route-track > article.done:not(:last-child):after {
  background: linear-gradient(#bfc5ca, #5c6268);
}
.v-result-route-track > article > i {
  z-index: 1;
  color: #727980;
  background: #111315;
  border: 1px solid #ffffff26;
  border-radius: 50%;
  place-items: center;
  width: 35px;
  height: 35px;
  display: grid;
  position: relative;
}
.v-result-route-track > article.done > i:after {
  content: "";
  background: #dfe3e6;
  border-radius: 50%;
  width: 7px;
  height: 7px;
}
.v-result-route-track > article.current > i {
  color: #0b0c0d;
  background: #eef0f1;
  border-color: #fff;
  box-shadow: 0 0 0 5px #ffffff0d;
}
.v-result-route-track > article.current > i svg {
  width: 17px;
  height: 17px;
  transform: rotate(45deg);
}
.v-result-route-track > article > div {
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: grid;
}
.v-result-route-track > article > div > small {
  color: #62686e;
  letter-spacing: 0.08em;
  font-size: 10px;
}
.v-result-route-track > article > div > strong {
  color: #8b9197;
  font-size: 15px;
  font-weight: 500;
}
.v-result-route-track > article.done > div > strong,
.v-result-route-track > article.current > div > strong {
  color: #ebedef;
}
.v-result-route-track > article > div > em {
  color: #0a0b0c;
  white-space: nowrap;
  background: #eef0f1;
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 600;
}
.v-route-shift {
  background: linear-gradient(180deg, #101112 0%, #070808 50%, #020303 100%);
  border-top: 1px solid #ffffff18;
  border-bottom: 1px solid #ffffff0d;
  width: calc(100% + 48px);
  margin: 22px -24px 0;
  padding: 34px 24px 30px;
}
.v-route-shift > header > h2 {
  color: #f3f1ed;
  letter-spacing: -0.06em;
  margin: 15px 0 15px;
  font-size: clamp(42px, 12cqw, 58px);
  font-weight: 500;
  line-height: 0.9;
}
.v-route-shift > header > span {
  color: #777c82;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-size: 12px;
}
.v-route-shift-intro {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 45px 1px 14px;
  display: flex;
}
.v-route-shift-intro > strong {
  color: #efeeeb;
  font-size: 21px;
  font-weight: 500;
}
.v-route-shift-intro > small {
  color: #74797e;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-size: 12px;
}
.v-route-shift-steps {
  flex-direction: column;
  gap: 12px;
  display: flex;
}
.v-route-shift-steps > article {
  background: linear-gradient(145deg, #18191a, #0d0e0f 70%);
  border: 1px solid #ffffff21;
  border-radius: 25px;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 16px;
  padding: 18px 18px 19px;
  display: grid;
  box-shadow:
    inset 0 1px #ffffff0f,
    0 14px 28px #0000005c;
}
.v-route-shift-steps > article > b {
  color: #e2e4e6;
  letter-spacing: -0.055em;
  font-family: inherit;
  font-size: 39px;
  font-weight: 400;
  line-height: 1;
}
.v-route-shift-steps > article > div {
  min-width: 0;
}
.v-route-shift-steps > article small {
  color: #777c82;
  letter-spacing: 0.2em;
  font-size: 12px;
}
.v-route-shift-steps > article strong {
  color: #f0eeea;
  align-items: baseline;
  gap: 9px;
  margin-top: 7px;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.25;
  display: flex;
  flex-wrap: wrap;
}
.v-route-shift-steps > article strong > em {
  color: #6f6b66;
  letter-spacing: 0.14em;
  white-space: nowrap;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
}
.v-route-shift-steps > article p {
  color: #a7a39e;
  max-width: none;
  margin: 9px 0 0;
  font-size: 15px;
  line-height: 1.5;
}
.v-route-shift-cta {
  color: #11100e;
  cursor: pointer;
  background: #f3f0e9;
  border: 0;
  border-radius: 999px;
  width: 100%;
  min-height: 62px;
  margin-top: 30px;
  padding: 0 20px;
  letter-spacing: 0.22em;
  font-size: 12px;
  font-weight: 600;
  transition:
    transform 0.15s ease,
    background 0.15s ease;
}
.v-route-shift-cta:active {
  background: #ded9d0;
  transform: scale(0.985);
}
.v-route-shift-next {
  color: #5f5c58;
  text-align: center;
  letter-spacing: 0.2em;
  width: 100%;
  margin-top: 17px;
  font-size: 12px;
  display: block;
}
.v-route-offer-heading {
  flex-direction: column;
  gap: 5px;
  width: 100%;
  margin: 22px 2px 12px;
  display: flex;
}
.v-route-offer-heading small {
  color: #747b81;
  letter-spacing: 0.15em;
  font-size: 10px;
  font-weight: 600;
}
.v-route-offer-heading strong {
  color: #f0f1f2;
  letter-spacing: -0.03em;
  font-size: 24px;
  font-weight: 500;
}
#v-route-payment {
  scroll-margin-top: 18px;
}
.v-access-preview-strip {
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  gap: 8px;
  width: calc(100% + 24px);
  margin: 12px -12px 15px;
  padding: 0 12px 3px;
  display: flex;
  overflow-x: auto;
}
.v-access-preview-strip::-webkit-scrollbar {
  display: none;
}
.v-access-preview-strip article {
  scroll-snap-align: start;
  background: linear-gradient(145deg, #141517, #08090a);
  border: 1px solid #ffffff21;
  border-radius: 15px;
  flex-direction: column;
  justify-content: space-between;
  min-width: 116px;
  min-height: 72px;
  padding: 12px;
  display: flex;
}
.v-access-preview-strip strong {
  color: #f1f3f5;
  font-size: 20px;
  font-weight: 500;
}
.v-access-preview-strip span {
  color: #82878d;
  font-size: 10px;
}
.v-trial-preview-actions {
  flex-direction: column;
  gap: 9px;
  width: 100%;
  display: flex;
}
.v-trial-preview-actions .v-outline-wide {
  min-height: 52px;
}
.v-subscribe-dialog {
  max-height: min(92svh, 760px);
  overflow-y: auto;
}
.v-subscribe-dialog .v-access-preview-video {
  margin: 2px 0 0;
}
.v-subscribe-dialog .v-access-preview-strip {
  margin-bottom: 4px;
}
.v-access-paywall .v-access-preview-video {
  margin-top: 18px;
}
.v-access-paywall .v-access-preview-strip {
  text-align: left;
}
.v-trial-library-banner {
  background: linear-gradient(145deg, #121416, #08090b 72%);
  border: 1px solid #cbd5df33;
  border-radius: 17px;
  justify-content: space-between;
  align-items: center;
  gap: 11px;
  min-height: 82px;
  padding: 12px;
  display: flex;
}
.v-trial-library-banner > span {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}
.v-trial-library-banner > span > svg {
  color: #aeb7c1;
  flex: none;
  width: 21px;
  height: 21px;
}
.v-trial-library-banner i {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  font-style: normal;
  display: flex;
}
.v-trial-library-banner strong {
  color: #e8eaec;
  font-size: 12px;
  font-weight: 500;
}
.v-trial-library-banner small {
  color: #7f858c;
  font-size: 10px;
  line-height: 1.35;
}
.v-trial-library-banner > button {
  color: #0a0b0c;
  cursor: pointer;
  background: #e9ecef;
  border: 1px solid #ffffff2e;
  border-radius: 11px;
  flex: none;
  min-height: 34px;
  padding: 0 11px;
  font-size: 10px;
  font-weight: 600;
}
.v-free-material-video {
  background: linear-gradient(145deg, #111214, #050506 74%);
  border: 1px solid #ffffff24;
  border-radius: 18px;
  gap: 11px;
  padding: 12px;
  display: grid;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff0b,
    0 10px 24px #0000004d;
}
.v-free-material-video > header {
  justify-content: space-between;
  align-items: end;
  gap: 12px;
  padding: 2px 2px 0;
  display: flex;
}
.v-free-material-video > header > small {
  color: #777d84;
  letter-spacing: 0.12em;
  font-size: 10px;
  font-weight: 600;
}
.v-free-material-video > header > strong {
  color: #f0f1f2;
  text-align: right;
  font-size: 14px;
  font-weight: 560;
}
.v-free-material-video > video {
  aspect-ratio: 16 / 9;
  background: #000;
  border: 1px solid #ffffff17;
  border-radius: 13px;
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}
.v-channel-library-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.v-channel-library-controls > label {
  grid-column: 1/-1;
}
.v-channel-library-controls select {
  width: 100%;
  min-width: 0;
  font-size: 11px !important;
}
.v-public-material-list > button.locked,
.v-curated-channel .v-library-list > button.locked {
  background: linear-gradient(145deg, #111214, #070809 76%);
  border-color: #c6d0da24;
}
.v-public-material-list > button.locked > div,
.v-curated-channel .v-library-list > button.locked .v-content-copy {
  opacity: 0.76;
}
.v-public-material-list > button.locked > span svg,
.v-curated-channel .v-library-list > button.locked > svg {
  color: #9ba5af;
}
.v-route-checklist > article.locked {
  background: linear-gradient(145deg, #101113, #070809 76%);
  border-color: #c6d0da24;
}
.v-route-checklist > article.locked .v-content-copy {
  opacity: 0.72;
}
.v-route-checklist > article.locked .v-route-material-check {
  color: #929ca6;
}
.v-route-material-check:disabled {
  cursor: pointer;
  opacity: 1;
}
.v-route-checklist > article.locked .v-route-material-check small {
  text-align: center;
  max-width: 52px;
  line-height: 1.15;
}
.v-material-copy-blur {
  max-height: 2.7em;
  margin: 5px 0 0;
  position: relative;
  color: #7f858c !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  overflow: hidden !important;
}
.v-material-copy-blur:after {
  content: "";
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  pointer-events: none;
  background: linear-gradient(90deg, #090a0b00, #090a0b80 34%, #090a0bd1);
  position: absolute;
  inset: -2px -2px -2px 47%;
}
.v-route-checklist > article.locked {
  min-height: 102px;
}
.v-route-checklist > article.locked .v-content-copy,
.v-curated-channel .v-library-list > button.locked .v-content-copy {
  justify-content: center;
  gap: 1px;
}
@media (width<=390px) {
  .v-quiz-result {
    padding-top: 28px;
  }
  .v-trial-preview-screen {
    padding-inline: 20px;
  }
  .v-trial-preview-screen > header {
    margin-inline: -20px;
    padding-inline: 20px;
  }
  .v-route-tabs-shell {
    width: calc(100% + 40px);
    margin-inline: -20px;
    padding-inline: 20px;
  }
  .v-route-tab-progress {
    width: calc(100% + 40px);
    margin-inline: -20px;
  }
  .v-route-tabs-list {
    gap: 19px;
  }
  .v-trial-preview-screen > section {
    padding-top: 20px;
  }
  .v-trial-preview-screen h1 {
    font-size: clamp(30px, 8cqw, 34px);
  }
  .v-personal-route-result h1 {
    font-size: clamp(33px, 9.5cqw, 42px);
  }
  .v-current-configuration > header > h2 {
    font-size: clamp(33px, 9cqw, 40px);
  }
  .v-configuration-card {
    border-radius: 23px;
    padding: 18px 16px 16px;
  }
  .v-configuration-facts > div {
    gap: 12px;
  }
  .v-configuration-facts strong {
    max-width: 62%;
    font-size: 15px;
  }
  .v-result-route-map {
    padding-inline: 14px;
  }
  .v-result-route-track > article > div {
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 6px;
  }
  .v-result-route-track > article > div > strong {
    font-size: 14px;
  }
  .v-route-shift {
    width: calc(100% + 40px);
    margin-inline: -20px;
    padding-inline: 20px;
  }
  .v-route-shift-steps > article {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 12px;
    padding-inline: 15px;
  }
  .v-route-shift-steps > article > b {
    font-size: 34px;
  }
  .v-trial-preview-screen > section > .v-access-feature-rail {
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px;
  }
  .v-trial-library-banner {
    align-items: flex-start;
  }
  .v-trial-library-banner > button {
    margin-top: 1px;
  }
}
@media (height<=760px) {
  .v-quiz-result {
    padding-top: 22px;
  }
  .v-quiz-result h1 {
    font-size: clamp(39px, 10.5cqw, 52px);
  }
  .v-quiz-result > p {
    margin-bottom: 17px;
  }
}
.v-purchase-page {
  gap: 20px;
  padding-bottom: 32px;
}
.v-purchase-intro {
  padding: 6px 2px 2px;
}
.v-purchase-intro > div {
  align-items: center;
  gap: 11px;
  display: flex;
}
.v-purchase-intro > div > span:last-child {
  color: #8c9299;
  letter-spacing: 0.15em;
  font-size: 12px;
}
.v-purchase-intro h1 {
  color: #f3f4f4;
  letter-spacing: -0.055em;
  max-width: 9ch;
  margin: 22px 0 14px;
  font-size: clamp(43px, 11cqw, 58px);
  font-weight: 500;
  line-height: 0.93;
}
.v-purchase-intro > p {
  color: #989da2;
  max-width: 410px;
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}
.v-purchase-overview {
  flex-direction: column;
  display: flex;
}
.v-purchase-overview .v-access-preview-strip {
  margin-bottom: 0;
}
.v-locked-preview-card {
  background:
    radial-gradient(circle at 84% 4%, #dde4ea12, #0000 27%),
    linear-gradient(150deg, #151719, #08090a 70%);
  border: 1px solid #d6dde42e;
  border-radius: 22px;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff09,
    0 18px 38px #00000052;
}
.v-locked-preview-card > header {
  border-bottom: 1px solid #ffffff17;
  align-items: center;
  gap: 12px;
  min-height: 74px;
  padding: 15px 16px;
  display: flex;
}
.v-locked-preview-card > header > i {
  background: #1b1d20;
  border: 1px solid #ffffff1f;
  border-radius: 14px;
  flex: none;
  place-items: center;
  width: 44px;
  height: 44px;
  display: grid;
}
.v-locked-preview-card > header > i svg {
  stroke-width: 1.5px;
  width: 21px;
  height: 21px;
}
.v-locked-preview-card > header > span {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}
.v-locked-preview-card > header small {
  color: #858b91;
  font-size: 12px;
}
.v-locked-preview-card > header strong {
  color: #dfe2e4;
  font-size: 15px;
  font-weight: 500;
}
.v-locked-media-fragment {
  background:
    radial-gradient(circle at 50% 42%, #d9e1e817, #0000 31%),
    repeating-linear-gradient(115deg, #ffffff05 0 1px, #0000 1px 6px), #090a0b;
  border: 1px solid #ffffff1c;
  border-radius: 17px;
  grid-template-columns: auto 1fr auto;
  align-items: end;
  gap: 12px;
  min-height: 146px;
  margin: 15px 15px 0;
  padding: 16px;
  display: grid;
}
.v-locked-media-fragment > button {
  color: #f0f1f1;
  cursor: default;
  background: #17191ce0;
  border: 1px solid #ffffff38;
  border-radius: 50%;
  grid-column: 1/-1;
  place-self: center;
  place-items: center;
  width: 50px;
  height: 50px;
  display: grid;
}
.v-locked-media-fragment > button svg {
  fill: currentColor;
  width: 20px;
  height: 20px;
}
.v-locked-media-fragment > span {
  background: #ffffff21;
  border-radius: 999px;
  height: 3px;
  overflow: hidden;
}
.v-locked-media-fragment > span i {
  border-radius: inherit;
  background: #dce1e5;
  width: 26%;
  height: 100%;
  display: block;
}
.v-locked-media-fragment > small {
  color: #7f858b;
  font-size: 12px;
}
.v-locked-fragment-copy {
  padding: 22px 18px 18px;
  position: relative;
  overflow: hidden;
}
.v-locked-fragment-copy > span {
  color: #7e858c;
  letter-spacing: 0.15em;
  font-size: 12px;
}
.v-locked-fragment-copy h2 {
  color: #f1f2f2;
  letter-spacing: -0.04em;
  margin: 12px 0 14px;
  font-size: clamp(27px, 7cqw, 35px);
  font-weight: 500;
  line-height: 1.02;
}
.v-locked-fragment-copy > p {
  color: #c0c4c7;
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}
.v-blurred-continuation {
  color: #9b9fa3;
  filter: blur(5px);
  opacity: 0.38;
  -webkit-user-select: none;
  user-select: none;
  max-height: 126px;
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.55;
}
.v-blurred-continuation p {
  margin: 0 0 10px;
}
.v-locked-fragment-copy:after {
  content: "";
  pointer-events: none;
  background: linear-gradient(#0000, #08090aad 54%, #08090a 92%);
  height: 142px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.v-fragment-lock {
  z-index: 2;
  background: #0f1012eb;
  border: 1px solid #ffffff24;
  border-radius: 16px;
  align-items: center;
  gap: 11px;
  min-height: 68px;
  margin-top: -50px;
  padding: 13px 14px;
  display: flex;
  position: relative;
  box-shadow: 0 10px 28px #00000061;
}
.v-fragment-lock > svg {
  color: #cbd1d6;
  flex: none;
  width: 22px;
  height: 22px;
}
.v-fragment-lock > span {
  flex-direction: column;
  gap: 4px;
  display: flex;
}
.v-fragment-lock strong {
  color: #e9eaeb;
  font-size: 15px;
  font-weight: 500;
}
.v-fragment-lock small {
  color: #83898f;
  font-size: 13px;
  line-height: 1.3;
}
.v-purchase-offer {
  background: linear-gradient(150deg, #121315, #070808 76%);
  border: 1px solid #ffffff24;
  border-radius: 22px;
  flex-direction: column;
  gap: 17px;
  padding: 16px;
  display: flex;
}
.v-purchase-offer .v-lifetime-tariff {
  margin: 0;
}
.v-purchase-benefits {
  flex-direction: column;
  gap: 0;
  display: flex;
}
.v-purchase-benefits > p {
  border-bottom: 1px solid #ffffff17;
  align-items: center;
  gap: 12px;
  min-height: 70px;
  margin: 0;
  display: flex;
}
.v-purchase-benefits > p:last-child {
  border-bottom: 0;
}
.v-purchase-benefits > p > svg {
  color: #d9dee2;
  flex: none;
  width: 21px;
  height: 21px;
}
.v-purchase-benefits > p > span {
  flex-direction: column;
  gap: 5px;
  display: flex;
}
.v-purchase-benefits strong {
  color: #eeefef;
  font-size: 16px;
  font-weight: 500;
}
.v-purchase-benefits small {
  color: #858a90;
  font-size: 13px;
  line-height: 1.35;
}
.v-purchase-cta {
  min-height: 60px !important;
  padding-inline: 21px !important;
  font-size: 16px !important;
}
.v-manual-payment-note {
  background: #0a0b0c;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  align-items: flex-start;
  gap: 11px;
  min-height: 76px;
  padding: 14px;
  display: flex;
}
.v-manual-payment-note > svg {
  color: #a9b0b6;
  flex: none;
  width: 21px;
  height: 21px;
  margin-top: 1px;
}
.v-manual-payment-note > span {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-manual-payment-note strong {
  color: #dfe2e4;
  font-size: 15px;
  font-weight: 500;
}
.v-manual-payment-note small {
  color: #858b91;
  font-size: 13px;
  line-height: 1.45;
}
.v-manual-payment-note.is-pending {
  background: #36564414;
  border-color: #97bea833;
}
.v-manual-payment-note.is-pending > svg {
  color: #a8c5b4;
}
@media (width<=390px) {
  .v-purchase-intro h1 {
    font-size: 42px;
  }
  .v-purchase-intro > p {
    font-size: 15px;
  }
  .v-purchase-offer {
    padding: 13px;
  }
  .v-locked-fragment-copy {
    padding-inline: 15px;
  }
}
.v-access-feature-rail {
  background:
    linear-gradient(#ffffff09, #0000 42%),
    linear-gradient(100deg, #1a1c1e, #101113 50%, #181a1c);
  border: 1px solid #dadfe429;
  border-radius: 17px;
  align-items: center;
  width: 100%;
  min-height: 62px;
  margin: 14px 0 17px;
  display: flex;
  overflow: hidden;
  box-shadow:
    inset 0 1px #ffffff09,
    0 12px 26px #00000038;
}
.v-access-feature-rail > div {
  will-change: transform;
  align-items: center;
  width: max-content;
  animation: 25s linear infinite v-feature-rail;
  display: flex;
}
.v-trial-preview-screen > section > .v-access-feature-rail {
  width: calc(100% + 48px);
  margin-left: -24px;
  margin-right: -24px;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
.v-access-feature-group {
  flex: none;
  align-items: center;
  padding: 0 10px;
  display: flex;
}
.v-access-feature-group > i {
  color: #c5c9cd;
  white-space: nowrap;
  align-items: center;
  gap: 9px;
  padding: 0 13px;
  font-size: 14px;
  font-style: normal;
  line-height: 60px;
  display: inline-flex;
}
.v-access-feature-group > i > b {
  background: #7c8288;
  border-radius: 50%;
  width: 4px;
  height: 4px;
  box-shadow: 0 0 0 4px #ffffff06;
}
@keyframes v-feature-rail {
  to {
    transform: translate(-50%);
  }
}
.v-trial-access-options {
  flex-direction: column;
  gap: 12px;
  width: 100%;
  display: flex;
}
.v-access-choice {
  text-align: left;
  cursor: pointer;
  border: 1px solid #0000;
  border-radius: 21px;
  grid-template-columns: minmax(0, 1fr) auto 34px;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 16px 18px;
  transition:
    border-color 0.16s,
    filter 0.16s,
    transform 0.16s;
  display: grid;
  position: relative;
  overflow: hidden;
}
.v-access-choice:before {
  content: "V";
  color: #ffffff08;
  pointer-events: none;
  font-family:
    Georgia,
    Times New Roman,
    serif;
  font-size: 118px;
  line-height: 0.8;
  position: absolute;
  top: 50%;
  right: 22px;
  transform: translateY(-48%);
}
.v-access-choice:hover {
  filter: brightness(1.06);
}
.v-access-choice:active {
  transform: scale(0.992);
}
.v-access-choice:disabled {
  opacity: 0.62;
  cursor: default;
}
.v-access-choice:disabled:active {
  transform: none;
}
.v-access-choice > span,
.v-access-choice > b,
.v-access-choice > svg {
  z-index: 1;
  position: relative;
}
.v-access-choice > span {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}
.v-access-choice > span > small {
  letter-spacing: 0.15em;
  font-size: 11px;
  font-weight: 500;
}
.v-access-choice > span > strong {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.18;
}
.v-access-choice > b {
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
  min-width: 78px;
  font-weight: 400;
  display: flex;
}
.v-access-choice > b > strong {
  white-space: nowrap;
  font-size: 21px;
  font-weight: 500;
  line-height: 1;
}
.v-access-choice > b > small {
  white-space: nowrap;
  font-size: 12px;
  font-weight: 400;
}
.v-access-choice > svg {
  stroke-width: 2px;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  padding: 8px;
}
.v-access-choice-trial {
  color: #090a0b;
  background: linear-gradient(135deg, #f5f5f2, #dfe1e2);
  border-color: #ffffffe6;
  min-height: 76px;
  box-shadow:
    0 11px 28px #00000042,
    inset 0 1px #fffc;
}
.v-access-choice-trial:before {
  display: none;
}
.v-access-choice-trial > span > small {
  color: #6d7175;
}
.v-access-choice-trial > span > strong {
  color: #090a0b;
}
.v-access-choice-trial > b > strong {
  color: #121315;
}
.v-access-choice-trial > b > small {
  color: #6f7377;
}
.v-access-choice-trial > svg {
  color: #f4f4f1;
  background: #111315;
}
.v-access-choice-full {
  color: #f1f3f4;
  background:
    radial-gradient(circle at 89% 9%, #e3e8ec1a, #0000 34%),
    linear-gradient(145deg, #17191b, #050607 76%);
  border-color: #e0e4e845;
  min-height: 116px;
  box-shadow:
    inset 0 1px #ffffff0e,
    inset 0 -1px #000000b3,
    0 16px 34px #0000005c;
}
.v-access-choice-full > span > small {
  color: #8e969d;
}
.v-access-choice-full > span > strong {
  color: #f2f3f4;
  letter-spacing: -0.02em;
  font-size: 19px;
}
.v-access-choice-full > b > strong {
  color: #f7f7f5;
  font-size: 26px;
}
.v-access-choice-full > b > small {
  color: #777e84;
}
.v-access-choice-full > svg {
  color: #e6e9eb;
  background: #ffffff0e;
  border: 1px solid #ffffff29;
}
.v-access-paywall .v-access-feature-rail,
.v-purchase-overview .v-access-feature-rail {
  text-align: left;
}
.v-purchase-overview .v-access-feature-rail {
  margin-bottom: 0;
}
@media (width<=390px) {
  .v-access-choice {
    grid-template-columns: minmax(0, 1fr) auto 32px;
    gap: 9px;
    padding: 14px;
  }
  .v-access-choice-trial {
    min-height: 72px;
  }
  .v-access-choice-full {
    min-height: 108px;
  }
  .v-access-choice > span > strong {
    font-size: 15px;
  }
  .v-access-choice-full > span > strong {
    font-size: 18px;
  }
  .v-access-choice > b {
    min-width: 68px;
  }
  .v-access-choice > b > strong {
    font-size: 18px;
  }
  .v-access-choice-full > b > strong {
    font-size: 23px;
  }
  .v-access-choice > b > small {
    font-size: 11px;
  }
  .v-access-choice > svg {
    width: 32px;
    height: 32px;
  }
  .v-access-feature-group > i {
    padding-inline: 11px;
    font-size: 13px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-access-feature-rail {
    scrollbar-width: none;
    overflow-x: auto;
  }
  .v-access-feature-rail::-webkit-scrollbar {
    display: none;
  }
  .v-access-feature-rail > div {
    animation: none;
  }
  .v-access-feature-group:nth-child(2) {
    display: none;
  }
}
.v-video-error {
  color: #d5d5d5;
  margin: 0;
  padding: 12px;
  font-size: 14px;
}
.v-video-error button {
  color: #fff;
  cursor: pointer;
  text-decoration: underline;
}
.v-route-hero .v-hero-copy h2,
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  letter-spacing: -0.04em;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 600;
  line-height: 0.96;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  max-width: 11ch;
  font-size: clamp(28px, 7.4cqw, 38px);
}
.v-route-hero .v-primary,
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  border-radius: 16px !important;
  min-height: 42px !important;
  padding-inline: 21px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}
.v-home-grid .v-section-card h4,
.v-environment-screen .v-env-card > span,
.v-environment-screen .v-people-card .v-card-heading span {
  letter-spacing: -0.025em;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 600;
}
.v-environment-screen .v-env-card > span {
  font-size: clamp(17px, 4.25cqw, 20px);
  line-height: 1;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero {
  aspect-ratio: auto;
  align-items: stretch;
  min-height: 238px;
  padding: 22px;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
  justify-content: flex-start;
  width: 58%;
  min-height: 194px;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2 {
  max-width: 10.5ch;
  margin: 16px 0 8px;
  font-size: clamp(25px, 6.5cqw, 33px);
}
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-empty-opportunity-title,
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-featured-opportunity-title {
  max-width: 10.5ch;
  font-size: clamp(25px, 6.5cqw, 33px);
}
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  flex: none;
  margin-top: auto;
}
.v-route-builder-page {
  gap: 12px;
}
.v-route-builder-page > .v-full-page-intro {
  background:
    radial-gradient(circle at 88% 12%, #bac5d021, #0000 34%),
    linear-gradient(148deg, #161719 0%, #090a0b 69%, #050506 100%);
  border-color: #ffffff29;
  min-height: 220px;
}
.v-route-builder-form {
  gap: 16px;
}
.v-route-content-group {
  flex-direction: column;
  gap: 9px;
  display: flex;
}
.v-route-content-group > header {
  justify-content: space-between;
  align-items: center;
  padding: 3px 2px 0;
  display: flex;
}
.v-route-content-group > header > span {
  color: #aeb5bc;
  letter-spacing: 0.14em;
  font-size: 9px;
  font-weight: 600;
}
.v-route-content-group > header > small {
  color: #7f858b;
  border: 1px solid #ffffff1f;
  border-radius: 9px;
  place-items: center;
  min-width: 25px;
  height: 25px;
  font-size: 9px;
  display: grid;
}
.v-reader-video-wide {
  aspect-ratio: 1084/480;
}
.v-reader-page-content > .v-video-error {
  background: #090a0b;
  border: 1px solid #ffffff1a;
  border-top: 0;
  border-radius: 0 0 14px 14px;
  margin-top: -17px;
}
@media (width<=370px) {
  .v-environment-screen .v-opportunity-hero.v-photo-hero {
    min-height: 226px;
    padding: 18px;
  }
  .v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
    min-height: 190px;
  }
  .v-route-builder-page > .v-full-page-intro {
    min-height: 205px;
  }
}

/* V product-audit funnel: restrained black interface and separate result stages. */
.v-bottom-nav {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.v-city-loader {
  background: #050505;
  padding-inline: 0;
}
.v-city-loader > header,
.v-city-loader > .v-city-stage {
  display: none !important;
}
.v-city-loader > section {
  width: 100%;
  margin: auto 0;
  padding-inline: 24px;
}
.v-city-loader > section > i {
  border-radius: 0;
  width: 100vw;
  margin-left: -24px;
}
.v-city-loader > section > i span {
  background: linear-gradient(90deg, #5a5a5d, #f2f2ef);
  box-shadow: none;
}
.v-trial-preview-screen {
  background: #050505;
}
.v-result-tabs {
  background: #09090a;
  border: 1px solid #ffffff1c;
  border-radius: 16px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2px;
  width: 100%;
  margin: 10px 0 0;
  padding: 5px;
  display: grid;
}
.v-result-tabs > button {
  color: #656569;
  background: transparent;
  border: 0;
  border-radius: 11px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  min-height: 48px;
  padding: 5px 2px;
  display: flex;
}
.v-result-tabs > button small {
  letter-spacing: 0.12em;
  font-size: 7px;
}
.v-result-tabs > button span {
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 9px;
}
.v-result-tabs > button.active {
  color: #f3f3f0;
  background: #1a1a1c;
}
.v-result-tabs > button.done:not(.active) {
  color: #a0a0a3;
}
.v-trial-preview-screen > .v-result-stage {
  align-items: stretch;
  width: 100%;
  padding: 24px 0 8px;
}
.v-result-step-controls {
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  margin-top: 22px;
  display: flex;
}
.v-result-step-controls > button:first-child:not(:last-child),
.v-result-back-link {
  color: #858589;
  background: transparent;
  border: 0;
  padding: 12px 2px;
  font-size: 12px;
}
.v-result-step-controls > .v-primary {
  margin-left: auto;
}
.v-result-back-link {
  align-self: flex-start;
  margin-top: 12px;
}
.v-current-configuration {
  margin-bottom: 0;
}
.v-current-configuration > header > small,
.v-route-shift > header > small {
  color: #747478;
}
.v-configuration-card {
  background: linear-gradient(145deg, #181819, #0b0b0c 72%);
  border-color: #ffffff24;
  box-shadow: inset 0 1px #ffffff0d;
}
.v-configuration-card > h3 {
  margin-top: 4px;
}
.v-configuration-facts small,
.v-configuration-insight,
.v-configuration-card > p {
  color: #96969a;
}
.v-personal-route-result .v-access-preview-video {
  background: #080809;
  border-color: #ffffff24;
  box-shadow: none;
}
.v-personal-route-result .v-access-preview-video video {
  border-radius: 20px 20px 0 0;
}
.v-route-video-heading {
  background: #0d0d0e;
  border-top: 1px solid #ffffff17;
}
.v-route-video-heading small {
  color: #707074;
}
.v-result-route-map {
  background: linear-gradient(150deg, #141415, #080809 76%);
  border-color: #ffffff22;
  box-shadow: none;
  margin-top: 0;
}
.v-route-shift {
  background: #050505;
  border: 0;
  width: 100%;
  margin: 0;
  padding: 0;
}
.v-route-shift-steps > article {
  background: linear-gradient(145deg, #19191a, #0c0c0d 72%);
  border-color: #ffffff24;
  box-shadow: inset 0 1px #ffffff0c;
}
.v-route-shift-steps > article > b {
  color: #c9c9cc;
  font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
  font-weight: 300;
}
.v-route-shift-steps > article small,
.v-route-shift-steps > article strong > em,
.v-route-shift-next {
  color: #747478;
}
.v-route-shift-steps > article p {
  color: #9b9b9e;
}
.v-route-shift-cta {
  color: #0a0a0b;
  background: #f0f0ed;
}
.v-purchase-application {
  background: #0d0d0e;
  border: 1px solid #ffffff20;
  border-radius: 20px;
  flex-direction: column;
  gap: 14px;
  padding: 18px;
  display: flex;
}
.v-purchase-application > strong {
  color: #f0f0ee;
  font-size: 18px;
  font-weight: 600;
}
.v-purchase-application-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}
.v-purchase-application-grid > label {
  color: #8e8e92;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  font-size: 11px;
  display: flex;
}
.v-purchase-application-grid > label.wide {
  grid-column: 1 / -1;
}
.v-purchase-application-grid input,
.v-purchase-application-grid textarea {
  color: #f3f3f1;
  background: #151516;
  border-color: #ffffff22;
  width: 100%;
}
.v-main > .v-empty {
  background: linear-gradient(145deg, #171718, #080809 72%);
  border: 1px solid #ffffff22;
  border-radius: 24px;
  justify-content: center;
  min-height: min(58svh, 520px);
  margin: 10px 0 28px;
  padding: 34px 26px;
}
.v-main > .v-empty > i {
  color: #d6d6d8;
  background: #202022;
}
.v-main > .v-empty > strong {
  max-width: 14ch;
  font-size: clamp(27px, 7cqw, 38px);
  line-height: 1.02;
}
.v-main > .v-empty > p {
  max-width: 32ch;
  font-size: 14px;
}
.v-route-hero.v-photo-hero .v-primary,
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  min-height: 42px !important;
  font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
  justify-content: flex-start;
  min-height: 194px;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero h2,
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-empty-opportunity-title,
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  h2.v-featured-opportunity-title {
  max-width: 10.5ch;
  margin: 13px 0 12px;
  font-size: clamp(22px, 5.6cqw, 28px);
  line-height: 0.98;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary {
  flex: none;
  margin-top: auto;
}
@media (width<=370px) {
  .v-trial-preview-screen {
    padding-inline: 18px;
  }
  .v-result-tabs > button span {
    font-size: 8px;
  }
  .v-trial-preview-screen > .v-result-stage {
    padding-top: 20px;
  }
  .v-purchase-application-grid {
    grid-template-columns: 1fr;
  }
  .v-purchase-application-grid > label.wide {
    grid-column: auto;
  }
  .v-route-shift-steps > article {
    grid-template-columns: 48px minmax(0, 1fr);
  }
}

/* 10.09 product audit: centred start and restrained metallic accents. */
:root,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-metal: #b8a18b;
  --v-metal-bright: #c3ae98;
  --v-metal-soft: #b8a18b26;
  --v-metal-line: #b8a18b66;
}
.v-quiz-shell {
  background: #000;
}
.v-quiz-welcome {
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: clamp(30px, 7cqw, 44px) 28px max(82px, env(safe-area-inset-bottom));
  background: radial-gradient(ellipse at center, #000 0 40%, #000e 55%, #0000 76%);
}
.v-quiz-welcome > * {
  position: relative;
  z-index: 1;
}
.v-quiz-welcome .v-quiz-kicker,
.v-quiz-question > span,
.v-quiz-header > span:last-child {
  color: var(--v-metal);
}
.v-quiz-welcome h1 {
  text-wrap: balance;
  max-width: 10ch;
  margin: 22px auto 14px;
  font-size: clamp(38px, 10.5cqw, 52px);
  line-height: 1;
}
.v-quiz-welcome > p {
  color: #b8b3aa;
  text-wrap: balance;
  max-width: 31ch;
  margin: 0 auto 26px;
  font-size: 16px;
  line-height: 1.45;
}
.v-quiz-welcome > small {
  color: #817970;
  text-align: center;
  max-width: 32ch;
  margin-top: 15px;
  font-size: 12px;
  line-height: 1.35;
}
.v-quiz-cta {
  color: #100f0e !important;
  background: linear-gradient(135deg, var(--v-metal-bright), var(--v-metal)) !important;
  border: 1px solid #d1c0af !important;
  justify-content: center;
  width: min(100%, 330px);
  min-height: 58px !important;
  padding-inline: 22px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.015em;
  box-shadow: 0 14px 34px #0009, 0 0 0 1px #b8a18b1f !important;
}
.v-quiz-cta:hover {
  background: linear-gradient(135deg, #cfbba7, var(--v-metal-bright)) !important;
}
.v-quiz-cta:focus-visible,
.v-quiz-options button:focus-visible,
.v-route-tabs-list > button:focus-visible,
.v-route-page-next:focus-visible,
.v-route-shift-cta:focus-visible {
  outline: 2px solid var(--v-metal-bright);
  outline-offset: 3px;
}
.v-quiz-route path.travelled {
  stroke: var(--v-metal-bright);
  filter: drop-shadow(0 0 6px #b8a18b52);
}
.v-quiz-route circle.passed {
  fill: var(--v-metal-bright);
  stroke: #d8c8b8;
}
.v-quiz-navigator {
  color: var(--v-metal-bright);
  border-color: var(--v-metal-line);
  box-shadow: 0 0 0 4px #b8a18b0a, 0 10px 28px #000a;
}
.v-quiz-navigator svg {
  fill: var(--v-metal-bright);
  stroke: var(--v-metal-bright);
}
.v-quiz-progress {
  grid-template-columns: repeat(10, minmax(0, 1fr));
  gap: 4px;
}
.v-quiz-progress i {
  height: 3px;
}
.v-quiz-progress i.active {
  background: var(--v-metal-bright);
  box-shadow: 0 0 8px #b8a18b38;
}
.v-quiz-question > span {
  font-size: 11px;
}
.v-quiz-options button:hover,
.v-quiz-options button.selected {
  color: #f4f2ee;
  background: var(--v-metal-soft);
  border-color: var(--v-metal-line);
  transform: none;
}
.v-quiz-result-card {
  border-color: #b8a18b40;
}
.v-quiz-result-card > i {
  background: var(--v-metal-bright);
}
.v-route-tabs-list > button[data-state="active"],
.v-route-tabs-list > button[data-state="active"] > small,
.v-route-tabs-list > button.active,
.v-route-tabs-list > button.active > small,
.v-result-tabs > button.active,
.v-bottom-nav button.active {
  color: var(--v-metal-bright);
}
.v-bottom-nav button.active i {
  background: var(--v-metal-bright);
}
.v-route-tab-progress > i,
.v-city-loader > section > i span {
  background: linear-gradient(90deg, #6f6052, var(--v-metal-bright));
  box-shadow: 0 0 10px #b8a18b33;
}
.v-personal-route-result .v-route-result-kicker,
.v-current-configuration > header > small,
.v-route-shift > header > small,
.v-route-video-heading small,
.v-result-route-map > header > small,
.v-route-page-heading > small {
  color: var(--v-metal);
}
.v-configuration-card,
.v-result-route-map,
.v-personal-route-result .v-access-route-video,
.v-personal-route-result .v-access-preview-video video {
  border-color: #b8a18b3d;
}
.v-configuration-code > small:last-child,
.v-route-shift-steps > article > b {
  color: var(--v-metal-bright);
}
.v-result-route-track > article.done:not(:last-child):after {
  background: linear-gradient(var(--v-metal-bright), #6f6052);
}
.v-result-route-track > article.done > i:after {
  background: var(--v-metal-bright);
}
.v-result-route-track > article.current > i,
.v-result-route-track > article > div > em {
  color: #100f0e;
  background: var(--v-metal-bright);
  border-color: #d8c8b8;
}
.v-route-page-next,
.v-route-shift-cta {
  color: #100f0e;
  background: linear-gradient(135deg, var(--v-metal-bright), var(--v-metal));
  border: 1px solid #d1c0af;
}
.v-route-page-next:active,
.v-route-shift-cta:active {
  background: var(--v-metal);
}
@media (width<=390px) {
  .v-quiz-welcome {
    padding-inline: 22px;
  }
  .v-quiz-welcome h1 {
    font-size: clamp(37px, 10.5cqw, 43px);
  }
  .v-quiz-welcome > p {
    font-size: 15px;
  }
  .v-quiz-progress {
    gap: 3px;
  }
}
.v-quiz-shell {
  height: var(--tg-viewport-stable-height, 100svh);
  min-height: var(--tg-viewport-stable-height, 100svh);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
}
.v-quiz-processing {
  z-index: 2;
  min-height: calc(var(--tg-viewport-stable-height, 100svh) - 92px);
  padding: 42px 28px max(48px, env(safe-area-inset-bottom));
  text-align: center;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  display: flex;
  position: relative;
  opacity: 1;
  animation: none;
}
.v-quiz-processing-mark {
  color: #0b0a09;
  background: linear-gradient(135deg, var(--v-metal-bright), var(--v-metal));
  border: 1px solid #d1c0af;
  border-radius: 20px;
  place-items: center;
  width: 64px;
  height: 64px;
  margin-bottom: 24px;
  font-size: 29px;
  font-weight: 600;
  display: grid;
  box-shadow: 0 18px 50px #000b, 0 0 30px #b8a18b1f;
}
.v-quiz-processing > span {
  color: var(--v-metal);
  letter-spacing: 0.2em;
  font-size: 10px;
}
.v-quiz-processing h1 {
  max-width: 9.5ch;
  margin: 19px auto 14px;
  font-size: clamp(38px, 10cqw, 50px);
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 0.98;
}
.v-quiz-processing p {
  color: #94918d;
  max-width: 31ch;
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
.v-quiz-processing-line {
  background: #ffffff17;
  width: min(100vw, 480px);
  height: 2px;
  margin: 30px 0 14px;
  position: relative;
  left: 50%;
  overflow: hidden;
  transform: translateX(-50%);
}
.v-quiz-processing-line > i {
  background: linear-gradient(90deg, #6f6052, var(--v-metal-bright), #f1e3d4);
  width: 58%;
  height: 100%;
  display: block;
  animation: 1.15s ease-in-out infinite v-quiz-processing-scan;
  box-shadow: 0 0 12px #b8a18b47;
}
.v-quiz-processing > small {
  color: #6f6c68;
  font-size: 11px;
}
.v-quiz-portrait-grid label:nth-child(n + 3) {
  grid-column: auto;
}
.v-quiz-portrait-grid label.v-portrait-wide {
  grid-column: 1 / -1;
}
.v-quiz-portrait-grid textarea {
  color: #efefed !important;
  resize: vertical;
  background: #121213e6 !important;
  border: 1px solid #ffffff26 !important;
  border-radius: 14px !important;
  width: 100%;
  min-height: 86px;
  padding: 13px 14px !important;
  font-size: 16px !important;
  line-height: 1.4;
  box-shadow: inset 0 1px #ffffff06 !important;
}
.v-quiz-portrait-grid textarea:focus {
  border-color: #ffffff5c !important;
}
.v-quiz-portrait {
  opacity: 1;
  min-height: calc(var(--tg-viewport-stable-height, 100svh) - 90px);
  animation: none;
  transform: none;
}
@keyframes v-quiz-processing-scan {
  0% {
    transform: translateX(-110%);
  }
  to {
    transform: translateX(190%);
  }
}
@media (height<=720px) {
  .v-quiz-processing {
    min-height: calc(var(--tg-viewport-stable-height, 100svh) - 76px);
  }
  .v-quiz-portrait-grid textarea {
    min-height: 72px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-quiz-processing-line > i {
    width: 100%;
    animation: none;
  }
}
@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;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  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: 0;
}
@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-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-content {
  syntax: "*";
  inherits: false;
  initial-value: "";
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes enter {
  0% {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(
        var(--tw-enter-translate-x, 0),
        var(--tw-enter-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1)
      )
      rotate(var(--tw-enter-rotate, 0));
    filter: blur(var(--tw-enter-blur, 0));
  }
}
@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(
        var(--tw-exit-translate-x, 0),
        var(--tw-exit-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1)
      )
      rotate(var(--tw-exit-rotate, 0));
    filter: blur(var(--tw-exit-blur, 0));
  }
}
@keyframes accordion-down {
  0% {
    height: 0;
  }
  to {
    height: var(
      --radix-accordion-content-height,
      var(--accordion-panel-height, auto)
    );
  }
}
@keyframes accordion-up {
  0% {
    height: var(
      --radix-accordion-content-height,
      var(--accordion-panel-height, auto)
    );
  }
  to {
    height: 0;
  }
}
@keyframes caret-blink {
  0%,
  70%,
  to {
    opacity: 1;
  }
  20%,
  50% {
    opacity: 0;
  }
}
@keyframes scroll-fade-reveal-b {
  0% {
    --scroll-fade-b: var(
      --_scroll-fade-size-b,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
  to {
    --scroll-fade-b: 0px;
  }
}
@keyframes scroll-fade-reveal-s {
  0% {
    --scroll-fade-s: 0px;
  }
  to {
    --scroll-fade-s: var(
      --_scroll-fade-size-s,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
}
@keyframes scroll-fade-reveal-e {
  0% {
    --scroll-fade-e: var(
      --_scroll-fade-size-e,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
  to {
    --scroll-fade-e: 0px;
  }
}
@keyframes tw-shimmer {
  0% {
    background-position: 100% 0;
  }
  to {
    background-position: 0 0;
  }
}

/* 12.09: two-day access, sequential route map and VIP handoff. */
:root,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-metal: #9a9aa0;
  --v-metal-bright: #ededf0;
  --v-metal-soft: #ffffff14;
  --v-metal-line: #ffffff4a;
}

.v-quiz-cta,
.v-route-page-next,
.v-route-shift-cta {
  color: #09090a !important;
  background: linear-gradient(135deg, #f4f4f5, #a9a9ae) !important;
  border-color: #ffffff70 !important;
  box-shadow: 0 14px 34px #0009, 0 0 0 1px #ffffff17 !important;
}

.v-home-screen > .v-hero-card {
  order: 0;
}
.v-home-screen > .v-free-access-status {
  order: 1;
}
.v-home-screen > .v-global-route-map {
  order: 2;
}
.v-home-screen > .v-section-heading {
  order: 3;
}
.v-home-screen > .v-home-grid {
  order: 4;
}
.v-home-screen > .v-continue-card {
  order: 5;
}

.v-free-access-status {
  background: linear-gradient(135deg, #1a1a1c, #0b0b0c 70%);
  border: 1px solid #ffffff2b;
  border-radius: 17px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 70px;
  padding: 14px 16px;
  display: grid;
  box-shadow: inset 0 1px #ffffff0c;
}
.v-free-access-status > div {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-free-access-status small {
  color: #8f8f94;
  letter-spacing: 0.12em;
  font-size: 9px;
}
.v-free-access-status strong {
  color: #f2f2f3;
  font-size: 18px;
  font-weight: 550;
}
.v-free-access-status > span {
  color: #96969b;
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  font-size: 10px;
  display: flex;
}
.v-free-access-status > span svg {
  width: 12px;
  height: 12px;
}

.v-global-route-map {
  background:
    radial-gradient(circle at 88% 3%, #ffffff0d, #0000 30%),
    linear-gradient(155deg, #151516, #070708 72%);
  border: 1px solid #ffffff27;
  border-radius: 25px;
  padding: 21px 18px 18px;
  overflow: hidden;
  box-shadow: inset 0 1px #ffffff0d, 0 22px 48px #00000045;
}
.v-global-route-map > header {
  border-bottom: 1px solid #ffffff16;
  padding-bottom: 18px;
}
.v-global-route-map > header > small {
  color: #96969b;
  letter-spacing: 0.18em;
  font-size: 9px;
  font-weight: 650;
}
.v-global-route-map > header > h3 {
  color: #f1f1f2;
  text-wrap: balance;
  margin: 10px 0 13px;
  font-size: clamp(22px, 6.5cqw, 31px);
  font-weight: 520;
  line-height: 1.06;
  letter-spacing: -0.035em;
}
.v-global-route-map > header > p {
  color: #a0a0a5;
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}
.v-global-route-map > header > p > span {
  color: #69696e;
  letter-spacing: 0.13em;
  margin-right: 8px;
  font-size: 8px;
}
.v-global-route-plan {
  flex-direction: column;
  padding: 18px 0;
  display: flex;
}
.v-global-route-connector {
  background: repeating-linear-gradient(to bottom, #ffffff25 0 3px, #0000 3px 7px);
  width: 1px;
  height: 16px;
  margin-left: 20px;
  display: block;
}
.v-global-route-connector.open {
  background: linear-gradient(#bcbcc0, #69696d);
}
.v-global-route-plan > button {
  color: #e9e9ea;
  text-align: left;
  background: #0d0d0ee8;
  border: 1px solid #ffffff1e;
  border-radius: 17px;
  grid-template-columns: 42px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 72px;
  padding: 11px 14px;
  display: grid;
  transition: border-color 0.18s ease, background 0.18s ease, opacity 0.18s ease;
}
.v-global-route-plan > button.active {
  background: linear-gradient(135deg, #232325, #111112);
  border-color: #ffffff62;
  box-shadow: inset 0 1px #ffffff10, 0 0 0 3px #ffffff08;
}
.v-global-route-plan > button.locked {
  opacity: 0.47;
}
.v-global-route-plan > button.locked:hover {
  opacity: 0.64;
  border-color: #ffffff35;
}
.v-global-route-plan > button > span {
  color: #85858a;
  background: #171719;
  border: 1px solid #ffffff2a;
  border-radius: 50%;
  place-items: center;
  width: 40px;
  height: 40px;
  font-size: 10px;
  display: grid;
}
.v-global-route-plan > button.active > span,
.v-global-route-plan > button.completed > span {
  color: #101011;
  background: #ededee;
  border-color: #fff;
}
.v-global-route-plan > button > div {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}
.v-global-route-plan > button strong {
  font-size: 14px;
  font-weight: 540;
}
.v-global-route-plan > button small {
  color: #78787d;
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-global-route-plan > button svg {
  width: 16px;
  height: 16px;
}
.v-global-route-action {
  background: #0a0a0bba;
  border: 1px solid #ffffff18;
  border-radius: 18px;
  padding: 15px;
}
.v-global-route-action > div {
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  display: flex;
}
.v-global-route-action > div > small {
  color: #737378;
  max-width: 22ch;
  font-size: 8px;
  line-height: 1.35;
  letter-spacing: 0.11em;
}
.v-global-route-action > div > strong {
  color: #dcdcdf;
  text-align: right;
  font-size: 12px;
  font-weight: 530;
}
.v-global-route-action ol {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin: 13px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
}
.v-global-route-action li {
  background: #151516;
  border: 1px solid #ffffff14;
  border-radius: 12px;
  flex-direction: column;
  min-width: 0;
  min-height: 77px;
  padding: 9px;
  display: flex;
}
.v-global-route-action li > span {
  color: #66666a;
  letter-spacing: 0.1em;
  font-size: 7px;
}
.v-global-route-action li > b {
  color: #d5d5d7;
  margin-top: 6px;
  font-size: 10px;
  font-weight: 520;
  line-height: 1.18;
}
.v-global-route-action li > small {
  color: #747479;
  margin-top: auto;
  padding-top: 5px;
  font-size: 8px;
}

.v-route-rebuild-page {
  gap: 18px;
}
.v-route-rebuild-card {
  background: linear-gradient(150deg, #151516, #080809 72%);
  border: 1px solid #ffffff24;
  border-radius: 23px;
  padding: 21px 18px;
  box-shadow: inset 0 1px #ffffff0b;
}
.v-route-rebuild-card > span {
  color: #8c8c91;
  letter-spacing: 0.13em;
  margin-top: 20px;
  font-size: 9px;
  display: block;
}
.v-route-rebuild-card > h2 {
  color: #f2f2f3;
  text-wrap: balance;
  margin: 12px 0 8px;
  font-size: clamp(25px, 7cqw, 34px);
  font-weight: 520;
  line-height: 1.05;
}
.v-route-rebuild-card > p {
  color: #828287;
  margin: 0 0 17px;
  font-size: 12px;
}
.v-route-rebuild-back,
.v-purchase-back {
  color: #99999e;
  background: none;
  border: 0;
  margin-top: 15px;
  padding: 4px 0;
  font-size: 11px;
}
.v-purchase-back {
  align-self: flex-start;
  margin: 0 2px;
}

.v-active-access-notice {
  background: linear-gradient(145deg, #171719, #09090a 74%);
  border: 1px solid #ffffff25;
  border-radius: 21px;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  padding: 18px;
  display: grid;
}
.v-active-access-notice > svg {
  color: #d0d0d3;
  background: #222225;
  border: 1px solid #ffffff27;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  padding: 13px;
}
.v-active-access-notice > div {
  flex-direction: column;
  display: flex;
}
.v-active-access-notice small {
  color: #78787d;
  letter-spacing: 0.13em;
  font-size: 8px;
}
.v-active-access-notice strong {
  color: #f0f0f1;
  margin-top: 5px;
  font-size: 20px;
  font-weight: 540;
}
.v-active-access-notice p {
  color: #929297;
  margin: 9px 0 0;
  font-size: 12px;
  line-height: 1.45;
}

.v-result-route-track > article > div {
  grid-template-columns: 28px minmax(0, 1fr) auto;
}
.v-result-route-track > article > div > p {
  color: #747a80;
  grid-column: 2 / -1;
  margin: -2px 0 0;
  font-size: 10px;
  line-height: 1.35;
}
.v-result-route-track > article > div > em {
  grid-column: 3;
  grid-row: 1;
}

@media (width <= 390px) {
  .v-free-access-status {
    grid-template-columns: 1fr;
    gap: 7px;
  }
  .v-free-access-status > span {
    white-space: normal;
  }
  .v-global-route-map {
    padding-inline: 15px;
  }
  .v-global-route-action ol {
    grid-template-columns: 1fr;
  }
  .v-global-route-action li {
    min-height: 58px;
  }
  .v-route-tabs-list {
    justify-content: space-between;
    gap: 12px;
  }
}

/* V68.1 — black route modules with selective gold accents */
.v-city-loader {
  background: #030303 !important;
  display: grid !important;
  place-items: center !important;
  grid-template: 1fr / 1fr !important;
  min-height: var(--tg-viewport-stable-height, 100svh) !important;
  padding: 0 !important;
}

.v-city-loader > header,
.v-city-loader > .v-city-stage {
  display: none !important;
}

.v-city-loader > section {
  border: 0 !important;
  width: 92px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.v-city-loader > section > small,
.v-city-loader > section > div {
  display: none !important;
}

.v-city-loader > section > i {
  background: #1a1a1a !important;
  border-radius: 999px !important;
  width: 92px !important;
  height: 2px !important;
  display: block !important;
  overflow: hidden !important;
}

.v-city-loader > section > i span {
  background: linear-gradient(90deg, #6c5937, #d2b272, #f1e5cf) !important;
  border-radius: inherit !important;
  height: 100% !important;
  display: block !important;
  box-shadow: 0 0 9px #c8a86b38 !important;
}

.v-quiz-header-spacer {
  width: 28px;
  height: 1px;
  display: block;
}

.v-quiz-processing-mark {
  background: #090909 !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 50% !important;
  width: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 16px 42px #000a !important;
}

.v-quiz-processing-mark > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.v-trial-preview-screen > header {
  justify-content: center !important;
}

.v-trial-preview-screen > header > span:last-child {
  color: #777b80 !important;
}

.v-route-tabs-list {
  justify-content: space-between !important;
  gap: 12px !important;
}

.v-route-tabs-list > button {
  flex: 0 1 auto !important;
  gap: 0 !important;
  font-size: 12px !important;
}

.v-result-tabs > button {
  gap: 0 !important;
}

.v-personal-video-match,
.v-route-video-heading {
  display: none !important;
}

.v-access-preview-video,
.v-personal-route-result .v-access-preview-video {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  gap: 0 !important;
  overflow: visible !important;
  box-shadow: none !important;
}

.v-access-preview-video video,
.v-personal-route-result .v-access-preview-video video,
.v-access-preview-video .v-access-route-video,
.v-personal-route-result .v-access-route-video {
  background: #050505 !important;
  border: 1px solid #ffffff17 !important;
  border-radius: 5px !important;
  overflow: hidden !important;
  box-shadow: 0 14px 32px #0008 !important;
}

.v-route-page-video {
  padding-top: 22px !important;
}

.v-free-material-video {
  background: #090909 !important;
  border-color: #ffffff1a !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px #ffffff08 !important;
}

.v-free-material-video > header > small {
  color: #777a7e !important;
}

.v-free-material-video > header > strong {
  color: #eeeeec !important;
}

.v-free-material-video > video {
  border-radius: 5px !important;
}

.v-global-route-map,
.v-home-shift-section {
  display: none !important;
}

.v-home-route-modules {
  margin-top: 10px !important;
}

.v-home-grid .v-section-card,
.v-home-grid .v-map-module-card,
.v-home-grid .v-shift-module-card {
  background: linear-gradient(145deg, #151515, #080808 76%) !important;
  border-color: #ffffff1a !important;
  box-shadow: inset 0 1px #ffffff09, 0 14px 30px #00000038 !important;
}

.v-home-grid .v-section-card:active {
  border-color: #ffffff30 !important;
}

.v-map-module-card,
.v-shift-module-card {
  min-height: 178px !important;
  overflow: hidden;
}

.v-module-map-visual,
.v-module-shift-visual {
  pointer-events: none;
  width: calc(100% - 28px);
  height: 58px;
  position: absolute;
  right: 14px;
  bottom: 11px;
  left: 14px;
}

.v-module-map-visual:before,
.v-module-map-visual:after {
  content: "";
  background: #4b4b4d;
  width: 58%;
  height: 1px;
  position: absolute;
  top: 31px;
  left: 2px;
  transform: rotate(-13deg);
  transform-origin: left center;
}

.v-module-map-visual:after {
  background: #666669;
  width: 49%;
  top: 18px;
  left: 52%;
  transform: rotate(14deg);
}

.v-module-map-visual > i {
  z-index: 1;
  background: #9a9a9b;
  border: 3px solid #111;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  position: absolute;
}

.v-module-map-visual > i:first-child {
  bottom: 9px;
  left: 1px;
}

.v-module-map-visual > i:nth-child(2) {
  top: 14px;
  left: 51%;
}

.v-module-map-visual > i:nth-child(3) {
  top: 27px;
  right: 0;
}

.v-module-map-visual > span {
  z-index: 2;
  color: var(--v-gold-bright);
  background: #16130d;
  border: 1px solid #c8a86b4a;
  border-radius: 50%;
  place-items: center;
  width: 26px;
  height: 26px;
  display: grid;
  position: absolute;
  top: 4px;
  left: 49%;
  transform: translateX(-50%) rotate(18deg);
  box-shadow: 0 0 13px #c8a86b24;
}

.v-module-map-visual > span svg {
  width: 14px;
  height: 14px;
}

.v-module-shift-visual {
  align-items: flex-end;
  gap: 7px;
  height: 52px;
  display: flex;
}

.v-module-shift-visual > i {
  background: #111;
  border: 1px solid #ffffff15;
  border-radius: 6px;
  flex: 1;
  height: 43px;
  padding: 8px 7px;
  font-style: normal;
}

.v-module-shift-visual > i:nth-child(2) {
  height: 49px;
}

.v-module-shift-visual > i:nth-child(3) {
  height: 56px;
}

.v-module-shift-visual b {
  color: #69696b;
  font-size: 8px;
  font-weight: 600;
}

.v-module-shift-visual span {
  background: #444447;
  border-radius: 99px;
  width: 100%;
  height: 2px;
  margin-top: 8px;
  display: block;
}

.v-module-shift-visual > i:first-child span {
  background: var(--v-gold);
}

.v-map-workspace,
.v-shift-workspace {
  padding-bottom: 34px;
}

.v-map-workspace-canvas {
  margin-top: 16px;
}

.v-map-workspace-canvas .v-result-route-map {
  margin-top: 0;
}

.v-map-workspace-guide {
  background: #0a0a0a;
  border: 1px solid #ffffff18;
  border-radius: 16px;
  align-items: center;
  gap: 14px;
  margin-top: 12px;
  padding: 15px;
  display: flex;
}

.v-map-workspace-guide > span {
  color: var(--v-gold-bright);
  background: #18140d;
  border: 1px solid #c8a86b47;
  border-radius: 50%;
  place-items: center;
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: grid;
}

.v-map-workspace-guide svg {
  width: 18px;
  height: 18px;
}

.v-map-workspace-guide > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.v-map-workspace-guide small {
  color: #77797c;
  letter-spacing: 0.15em;
  font-size: 8px;
}

.v-map-workspace-guide strong {
  color: #ededeb;
  font-size: 14px;
  font-weight: 540;
}

.v-map-workspace-guide p {
  color: #85878a;
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
}

.v-map-to-shift {
  color: #110e08;
  background: linear-gradient(112deg, #8b6b37, #d4b475 50%, #efdcac);
  border: 1px solid #f0dca47a;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 54px;
  margin-top: 14px;
  letter-spacing: 0.08em;
  font-size: 11px;
  font-weight: 650;
  display: flex;
  box-shadow: inset 0 1px #fff6d7a3;
}

.v-map-to-shift svg {
  width: 15px;
  height: 15px;
}

.v-result-route-map {
  background: linear-gradient(155deg, #111, #050505 75%) !important;
  border-color: #ffffff1b !important;
  box-shadow: inset 0 1px #ffffff08, 0 18px 42px #0007 !important;
}

.v-result-route-map > header > div > small,
.v-route-shift > header > small,
.v-route-video-heading small,
.v-global-route-map > header > small,
.v-home-shift-section > header > small {
  color: #747578 !important;
}

.v-result-route-map > header > div > strong,
.v-result-route-track > article.done > div > strong,
.v-result-route-track > article.current > div > strong {
  color: #ebebe8 !important;
}

.v-route-map-status {
  border-left-color: #ffffff1b !important;
}

.v-route-map-status > b {
  color: #d8d8d5 !important;
}

.v-route-map-status > small,
.v-route-map-context small {
  color: #707174 !important;
}

.v-route-map-context > article,
.v-route-map-context > article:last-child {
  background: #0f0f0f !important;
  border-color: #ffffff17 !important;
}

.v-route-map-context strong {
  color: #c8c8c5 !important;
}

.v-result-route-track > article:not(:last-child):after,
.v-result-route-track > article.done:not(:last-child):after {
  background: #414144 !important;
  box-shadow: none !important;
}

.v-result-route-track > article.done > i:after {
  background: #b7b7b5 !important;
  box-shadow: 0 0 7px #ffffff24 !important;
}

.v-result-route-track > article.current > i {
  color: #171109 !important;
  background: linear-gradient(135deg, var(--v-gold), var(--v-gold-bright)) !important;
  border-color: #ead5a3 !important;
  box-shadow: 0 0 0 5px #c8a86b12 !important;
}

.v-result-route-track > article > div > em {
  color: var(--v-gold-bright) !important;
  background: #c8a86b14 !important;
  border: 1px solid #c8a86b2b !important;
}

.v-route-shift,
.v-shift-workspace > .v-route-shift {
  background: linear-gradient(180deg, #101010, #050505 70%) !important;
  border-color: #ffffff1b !important;
  box-shadow: inset 0 1px #ffffff08 !important;
}

.v-route-shift-steps > article {
  background: #101010 !important;
  border-color: #ffffff18 !important;
}

.v-route-shift-steps > article > b,
.v-route-shift-steps > article strong > em,
.v-route-shift-next {
  color: #737477 !important;
}

.v-primary,
.v-route-page-next,
.v-route-shift-cta {
  color: #111 !important;
  background: #eeeeeb !important;
  border-color: #ffffff42 !important;
  box-shadow: inset 0 1px #fff8 !important;
}

.v-quiz-cta,
.v-route-hero .v-primary {
  color: #100d08 !important;
  background: linear-gradient(112deg, #8b6b37, #d4b475 48%, #f0dca9) !important;
  border-color: #f4dfae8f !important;
  box-shadow: inset 0 1px #fff5d4a8, 0 10px 28px #b58c4330 !important;
}

.v-bottom-nav button.active,
.v-bottom-nav button.active > span {
  color: var(--v-gold-bright) !important;
}

.v-bottom-nav button.active svg {
  color: var(--v-gold-bright) !important;
  filter: drop-shadow(0 0 7px #c8a86b44);
}

.v-bottom-nav button.active i {
  background: var(--v-gold) !important;
  box-shadow: 0 0 9px #c8a86b55 !important;
}

@media (width <= 390px) {
  .v-route-tabs-list {
    gap: 10px !important;
  }

  .v-route-tabs-list > button {
    font-size: 11px !important;
  }

  .v-map-module-card,
  .v-shift-module-card {
    min-height: 174px !important;
  }
}

/* V67.1 — restrained metallic-gold route system */
:root {
  --v-gold-deep: #806437;
  --v-gold: #c8a86b;
  --v-gold-bright: #ead5a3;
  --v-gold-faint: #c8a86b1f;
  --v-gold-line: #c8a86b52;
}

.v-free-access-status {
  display: none !important;
}

.v-primary,
.v-route-page-next,
.v-route-shift-cta {
  color: #100d08;
  background: linear-gradient(112deg, #8b6b37 0%, #d4b475 48%, #f0dca9 100%);
  border: 1px solid #f4dfae8f;
  box-shadow:
    inset 0 1px #fff5d4a8,
    0 10px 28px #b58c4330;
}

.v-primary:hover,
.v-route-page-next:active,
.v-route-shift-cta:active {
  background: linear-gradient(112deg, #987641 0%, #dfc084 50%, #f5e4b8 100%);
}

.v-quiz-kicker,
.v-quiz-question > span,
.v-route-result-kicker,
.v-route-page-heading > small,
.v-route-shift > header > small,
.v-global-route-map > header > small,
.v-home-shift-section > header > small {
  color: var(--v-gold) !important;
}

.v-quiz-progress i.active,
.v-route-tab-progress > i {
  background: linear-gradient(90deg, var(--v-gold-deep), var(--v-gold-bright));
}

.v-quiz-route path.travelled {
  stroke: var(--v-gold);
  filter: drop-shadow(0 0 5px #c8a86b4d);
}

.v-quiz-route circle.passed {
  fill: var(--v-gold-bright);
}

.v-quiz-navigator {
  color: var(--v-gold-bright);
  filter: drop-shadow(0 0 8px #c8a86b66);
}

.v-quiz-options button:hover,
.v-quiz-options button.selected {
  color: #f7edd8;
  background: linear-gradient(135deg, #2a2419, #15120d);
  border-color: var(--v-gold-line);
  box-shadow: inset 0 1px #ead5a31f;
}

.v-route-tabs-list > button[data-state="active"],
.v-route-tabs-list > button.active,
.v-route-tabs-list > button[data-state="active"] > small,
.v-route-tabs-list > button.active > small {
  color: var(--v-gold-bright);
}

.v-personal-video-match {
  order: -1;
  background: linear-gradient(105deg, #c8a86b1b, #c8a86b08);
  border: 1px solid var(--v-gold-line);
  border-radius: 16px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 12px 15px;
  display: flex;
}

.v-personal-video-match > span {
  color: var(--v-gold);
  letter-spacing: 0.14em;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.35;
}

.v-personal-video-match > strong {
  color: #f3e6c8;
  text-align: right;
  font-size: 13px;
  font-weight: 550;
}

.v-route-video-heading small {
  color: var(--v-gold);
}

.v-personal-route-result .v-access-preview-video video,
.v-personal-route-result .v-access-route-video {
  border-color: var(--v-gold-line);
  box-shadow:
    0 18px 36px #00000070,
    0 0 0 1px #c8a86b0d;
}

.v-result-route-map {
  background:
    radial-gradient(circle at 92% 3%, #c8a86b1c, transparent 34%),
    linear-gradient(150deg, #15130f, #080808 72%);
  border-color: var(--v-gold-line);
  padding: 20px 18px 16px;
  box-shadow:
    inset 0 1px #ead5a322,
    0 18px 45px #00000052;
}

.v-result-route-map > header {
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.v-result-route-map > header > div {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}

.v-result-route-map > header > div > small {
  color: var(--v-gold);
  letter-spacing: 0.14em;
  font-size: 10px;
  font-weight: 600;
}

.v-result-route-map > header > div > strong {
  color: #f2ead9;
  letter-spacing: -0.025em;
  font-size: 21px;
  font-weight: 540;
}

.v-route-map-status {
  border-left: 1px solid var(--v-gold-line);
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
  padding-left: 13px;
  display: flex;
}

.v-route-map-status > b {
  color: var(--v-gold-bright);
  letter-spacing: 0.08em;
  font-size: 13px;
  font-weight: 600;
}

.v-route-map-status > small {
  color: #827a69;
  white-space: nowrap;
  font-size: 9px;
}

.v-route-map-context {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 18px 0 20px;
  display: grid;
}

.v-route-map-context > article {
  background: #ffffff07;
  border: 1px solid #c8a86b24;
  border-radius: 14px;
  flex-direction: column;
  gap: 6px;
  min-height: 82px;
  padding: 12px;
  display: flex;
}

.v-route-map-context > article:last-child {
  background: linear-gradient(112deg, #c8a86b1b, #ffffff05);
  grid-column: 1 / -1;
  min-height: 68px;
}

.v-route-map-context small {
  color: #8d7a58;
  letter-spacing: 0.14em;
  font-size: 9px;
}

.v-route-map-context strong {
  color: #d8d0c0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}

.v-result-route-track {
  margin-top: 2px;
}

.v-result-route-track > article {
  min-height: 72px;
}

.v-result-route-track > article:not(:last-child):after {
  top: 46px;
  bottom: -26px;
  background: #c8a86b21;
}

.v-result-route-track > article.done:not(:last-child):after {
  background: linear-gradient(var(--v-gold-bright), var(--v-gold-deep));
  box-shadow: 0 0 8px #c8a86b42;
}

.v-result-route-track > article.done > i:after {
  background: var(--v-gold-bright);
  box-shadow: 0 0 9px #c8a86b85;
}

.v-result-route-track > article.current > i {
  color: #171109;
  background: linear-gradient(135deg, var(--v-gold), var(--v-gold-bright));
  border-color: #f5dfaa;
  box-shadow: 0 0 0 6px #c8a86b18, 0 0 20px #c8a86b3d;
}

.v-result-route-track > article.done > div > strong,
.v-result-route-track > article.current > div > strong {
  color: #f0e5cf;
}

.v-result-route-track > article > div > em {
  color: #171109;
  background: linear-gradient(100deg, var(--v-gold), var(--v-gold-bright));
}

.v-route-shift {
  background:
    radial-gradient(circle at 85% 5%, #c8a86b17, transparent 30%),
    linear-gradient(180deg, #12100c 0%, #070707 55%, #020202 100%);
  border-top-color: var(--v-gold-line);
}

.v-route-shift-steps > article {
  background: linear-gradient(145deg, #19160f, #0c0c0b 72%);
  border-color: #c8a86b2f;
}

.v-route-shift-steps > article > b,
.v-route-shift-steps > article strong > em {
  color: var(--v-gold);
}

.v-route-shift-next {
  color: #806f51;
}

.v-global-route-map {
  background:
    radial-gradient(circle at 90% 0%, #c8a86b1b, transparent 32%),
    linear-gradient(155deg, #12110e, #070707 74%);
  border-color: var(--v-gold-line);
  padding: 22px 18px 18px;
  box-shadow:
    inset 0 1px #ead5a31b,
    0 24px 54px #00000063;
}

.v-global-route-map > header > h3 {
  color: #f1e7d2;
}

.v-global-route-map > header > p > span {
  color: #9b8051;
}

.v-global-route-map > .v-result-route-map {
  background: #0505058c;
  border-color: #c8a86b30;
  margin-top: 22px;
}

.v-global-route-directions-heading {
  border-top: 1px solid #c8a86b2b;
  flex-direction: column;
  gap: 5px;
  margin-top: 22px;
  padding-top: 20px;
  display: flex;
}

.v-global-route-directions-heading > small {
  color: var(--v-gold);
  letter-spacing: 0.18em;
  font-size: 9px;
}

.v-global-route-directions-heading > strong {
  color: #e8dfcc;
  font-size: 16px;
  font-weight: 520;
}

.v-global-route-plan > button.active {
  border-color: var(--v-gold-line);
  box-shadow: inset 0 0 0 1px #c8a86b14;
}

.v-global-route-plan > button.active > span,
.v-global-route-plan > button.completed > span,
.v-global-route-connector.open {
  background: linear-gradient(135deg, var(--v-gold-deep), var(--v-gold-bright));
}

.v-home-shift-section {
  background:
    linear-gradient(118deg, #c8a86b17, transparent 42%),
    linear-gradient(150deg, #15130f, #080808 76%);
  border: 1px solid var(--v-gold-line);
  border-radius: 25px;
  margin-top: 16px;
  padding: 22px 18px 18px;
  box-shadow: inset 0 1px #ead5a31f;
}

.v-home-shift-section > header > small {
  letter-spacing: 0.18em;
  font-size: 9px;
}

.v-home-shift-section > header > h3 {
  color: #f3ead8;
  letter-spacing: -0.05em;
  margin-top: 8px;
  font-size: 36px;
  font-weight: 520;
  line-height: 1;
}

.v-home-shift-section > header > p {
  color: #9d9689;
  margin-top: 9px;
  font-size: 13px;
  line-height: 1.45;
}

.v-home-shift-section > ol {
  border-top: 1px solid #c8a86b29;
  margin-top: 17px;
}

.v-home-shift-section li {
  border-bottom: 1px solid #c8a86b21;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  display: grid;
}

.v-home-shift-section li > b {
  color: var(--v-gold);
  font-size: 12px;
  font-weight: 550;
}

.v-home-shift-section li > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.v-home-shift-section li small {
  color: #89795d;
  letter-spacing: 0.13em;
  font-size: 8px;
}

.v-home-shift-section li strong {
  color: #e7dfd0;
  font-size: 13px;
  font-weight: 520;
}

.v-home-shift-section li > em {
  color: #8b806c;
  font-size: 10px;
  font-style: normal;
}

.v-home-shift-section > button {
  color: #171109;
  background: linear-gradient(112deg, #94713b, #d4b475 52%, #ecd7a5);
  border: 1px solid #f0dba677;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 54px;
  margin-top: 18px;
  letter-spacing: 0.08em;
  font-size: 12px;
  font-weight: 650;
  display: flex;
}

.v-home-shift-section > button svg {
  width: 16px;
  height: 16px;
}

.v-shift-workspace {
  padding-bottom: 34px;
}

.v-shift-map-panel {
  margin-top: 16px;
}

.v-shift-map-panel .v-result-route-map {
  margin-top: 0;
}

.v-shift-workspace > .v-route-shift {
  width: 100%;
  margin: 18px 0 0;
  border: 1px solid var(--v-gold-line);
  border-radius: 25px;
  padding: 25px 18px 22px;
  overflow: hidden;
}

@media (width <= 390px) {
  .v-route-map-context {
    grid-template-columns: 1fr;
  }
  .v-route-map-context > article:last-child {
    grid-column: auto;
  }
  .v-result-route-track > article > div {
    grid-template-columns: 24px minmax(0, 1fr);
  }
  .v-result-route-track > article > div > em {
    grid-column: 2;
    grid-row: auto;
    justify-self: start;
  }
  .v-result-route-track > article > div > p {
    grid-column: 2;
  }
}

/* V68.2 — final neutral color correction */
.v-route-shift > header > small,
.v-route-page-heading > small {
  color: #747578 !important;
}
.v-admin-funnel-card {
  color: #ececed;
  background: linear-gradient(145deg, #171719, #09090a 72%);
  border: 1px solid #ffffff26;
  border-radius: 20px;
  grid-column: 1 / -1;
  padding: 18px;
  box-shadow: inset 0 1px #ffffff0b;
}
.v-admin-funnel-card > header {
  border-bottom: 1px solid #ffffff17;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 15px;
  display: flex;
}
.v-admin-funnel-card > header > div {
  flex-direction: column;
  gap: 6px;
  display: flex;
}
.v-admin-funnel-card > header span {
  color: #85858a;
  letter-spacing: 0.15em;
  font-size: 8px;
}
.v-admin-funnel-card > header strong {
  font-size: 17px;
  font-weight: 610;
}
.v-admin-funnel-card > header small {
  color: #77777c;
  font-size: 9px;
}
.v-admin-funnel-stages {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
  display: grid;
}
.v-admin-funnel-stages > article {
  background: #101012;
  border: 1px solid #ffffff19;
  border-radius: 13px;
  flex-direction: column;
  min-height: 92px;
  padding: 11px;
  display: flex;
}
.v-admin-funnel-stages i {
  color: #68686d;
  font-size: 8px;
  font-style: normal;
}
.v-admin-funnel-stages strong {
  margin-top: 9px;
  font-size: 24px;
  font-weight: 620;
}
.v-admin-funnel-stages span {
  color: #87878c;
  margin-top: auto;
  font-size: 9px;
  line-height: 1.25;
}
.v-admin-route-distribution {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 12px;
  display: grid;
}
.v-admin-route-distribution > article {
  background: #0e0e10;
  border: 1px solid #ffffff16;
  border-radius: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px 12px;
  display: grid;
}
.v-admin-route-distribution > article > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-admin-route-distribution strong {
  font-size: 11px;
  font-weight: 570;
}
.v-admin-route-distribution small {
  color: #76767b;
  overflow: hidden;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-admin-route-distribution b {
  color: #111;
  background: #efefed;
  border-radius: 50%;
  place-items: center;
  width: 28px;
  height: 28px;
  font-size: 10px;
  display: grid;
}
@media (width <= 720px) {
  .v-admin-funnel-card > header {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }
  .v-admin-funnel-stages,
  .v-admin-route-distribution {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 13.09 v70: centred loader, white actions and visible sequential access. */
:root,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-metal: #9b9b9f;
  --v-metal-bright: #f1f1ef;
  --v-metal-soft: #ffffff12;
  --v-metal-line: #ffffff42;
}

.v-city-loader {
  position: relative !important;
  width: 100% !important;
  min-height: 100dvh !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.v-city-loader > section {
  position: fixed !important;
  z-index: 20 !important;
  top: 50dvh !important;
  right: auto !important;
  bottom: auto !important;
  left: 50vw !important;
  width: 108px !important;
  min-width: 108px !important;
  height: 3px !important;
  min-height: 3px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translate(-50%, -50%) !important;
}
.v-city-loader > section > small,
.v-city-loader > section > div,
.v-city-loader > section > strong,
.v-city-loader > section > b {
  display: none !important;
}
.v-city-loader > section > i {
  position: static !important;
  display: block !important;
  width: 108px !important;
  height: 3px !important;
  margin: 0 !important;
  background: #ffffff1f !important;
  border: 0 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}
.v-city-loader > section > i span {
  height: 100% !important;
  background: #f1f1ef !important;
  border-radius: inherit !important;
  box-shadow: none !important;
}

.v-quiz-header > .v-quiz-header-spacer {
  width: 1px;
  height: 1px;
}
.v-quiz-welcome {
  justify-content: flex-end;
  text-align: left;
  align-items: stretch;
  min-height: calc(var(--tg-viewport-stable-height, 100svh) - 68px);
  padding: 34px 24px max(42px, env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 80% 23%, #ffffff0c, transparent 29%),
    linear-gradient(180deg, #050505 0%, #050505 44%, #000 100%);
}
.v-quiz-welcome .v-quiz-kicker {
  color: #89898e;
  justify-content: flex-start;
  margin-top: auto;
}
.v-quiz-welcome h1 {
  max-width: 9ch;
  margin: 17px 0 12px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(40px, 11cqw, 54px);
  font-weight: 650;
  letter-spacing: -0.055em;
  line-height: 0.94;
}
.v-quiz-welcome > p {
  color: #aaaab0;
  max-width: 31ch;
  margin: 0 0 21px;
  font-size: 14px;
  line-height: 1.45;
}
.v-quiz-benefits {
  flex-direction: column;
  gap: 7px;
  margin-bottom: 21px;
  display: flex;
}
.v-quiz-benefits > article {
  background: #0d0d0e;
  border: 1px solid #ffffff1e;
  border-radius: 13px;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  min-height: 48px;
  padding: 8px 12px;
  display: grid;
}
.v-quiz-benefits i {
  color: #9d9da1;
  background: #19191b;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  place-items: center;
  width: 32px;
  height: 32px;
  font-size: 8px;
  font-style: normal;
  letter-spacing: 0.08em;
  display: grid;
}
.v-quiz-benefits strong {
  color: #e9e9e9;
  font-size: 12px;
  font-weight: 520;
}
.v-quiz-welcome > small {
  color: #737378;
  text-align: center;
  margin-top: 12px;
}

.v-primary,
.v-quiz-cta,
.v-route-page-next,
.v-route-shift-cta,
.v-map-to-shift,
.v-route-hero.v-photo-hero .v-primary,
.v-environment-screen .v-opportunity-hero.v-photo-hero .v-primary,
.v-environment-lock-note .v-primary,
.v-trial-library-banner > button,
.v-next-route-card .v-primary,
.v-result-step-controls > .v-primary {
  color: #09090a !important;
  background: #f3f3f1 !important;
  border: 1px solid #fff !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  box-shadow: 0 12px 32px #0008 !important;
}
.v-primary:hover,
.v-quiz-cta:hover,
.v-route-page-next:hover,
.v-route-shift-cta:hover,
.v-map-to-shift:hover {
  color: #09090a !important;
  background: #fff !important;
}
.v-primary:disabled,
.v-quiz-cta:disabled,
.v-route-page-next:disabled,
.v-route-shift-cta:disabled {
  color: #78787c !important;
  background: #28282b !important;
  border-color: #ffffff1f !important;
  box-shadow: none !important;
}
.v-quiz-cta:focus-visible,
.v-quiz-options button:focus-visible,
.v-route-tabs-list > button:focus-visible,
.v-route-page-next:focus-visible,
.v-route-shift-cta:focus-visible {
  outline-color: #f3f3f1 !important;
}
.v-quiz-progress i.active,
.v-route-tab-progress > i,
.v-city-loader > section > i span {
  background: #f1f1ef !important;
  box-shadow: none !important;
}
.v-quiz-options button:hover,
.v-quiz-options button.selected {
  color: #f4f4f2;
  background: #171719;
  border-color: #ffffff70;
}
.v-route-tabs-list > button[data-state="active"],
.v-route-tabs-list > button[data-state="active"] > small,
.v-route-tabs-list > button.active,
.v-route-tabs-list > button.active > small,
.v-result-tabs > button.active,
.v-bottom-nav button.active {
  color: #f1f1ef !important;
}
.v-bottom-nav button.active i {
  background: #f1f1ef !important;
}
.v-result-tabs > button > small {
  display: none !important;
}
.v-result-tabs > button {
  min-height: 43px;
}

.v-quiz-processing-mark {
  background: #111 !important;
  border: 1px solid #ffffff42 !important;
  border-radius: 50% !important;
  overflow: hidden;
  box-shadow: 0 18px 50px #000b !important;
}
.v-quiz-processing-mark > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.v-quiz-processing > span,
.v-personal-route-result .v-route-result-kicker,
.v-current-configuration > header > small,
.v-route-shift > header > small,
.v-route-video-heading small,
.v-result-route-map > header > small,
.v-route-page-heading > small {
  color: #8e8e93 !important;
}
.v-quiz-processing-line > i {
  background: #f1f1ef !important;
  box-shadow: none !important;
}

.v-personal-route-result .v-access-preview-video {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.v-personal-route-result .v-access-preview-video video,
.v-personal-route-result .v-access-route-video {
  border: 1px solid #ffffff22 !important;
  border-radius: 4px !important;
}
.v-route-video-heading {
  background: transparent !important;
  border: 0 !important;
  padding: 15px 1px 3px !important;
}
.v-route-video-heading small {
  letter-spacing: 0.16em;
  font-size: 8px;
}
.v-route-video-heading strong {
  color: #f1f1f0;
  margin-top: 6px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-weight: 620;
  letter-spacing: -0.025em;
}

.v-starter-video-rail {
  flex-direction: column;
  gap: 10px;
  margin-top: 22px;
  display: flex;
}
.v-starter-video-rail > header {
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding: 0 2px 2px;
  display: flex;
}
.v-starter-video-rail > header strong {
  color: #ededed;
  font-size: 13px;
  font-weight: 590;
}
.v-starter-video-rail > header small {
  color: #77777c;
  white-space: nowrap;
  font-size: 8px;
}
.v-starter-video-rail > div {
  flex-direction: column;
  gap: 7px;
  display: flex;
}
.v-starter-video-rail > div > button,
.v-starter-video-rail > div > article {
  color: #ececed;
  text-align: left;
  background: #0d0d0e;
  border: 1px solid #ffffff20;
  border-radius: 14px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 68px;
  padding: 10px 12px;
  display: grid;
}
.v-starter-video-rail > div > .open {
  background: #171719;
  border-color: #ffffff56;
}
.v-starter-video-rail > div > .locked {
  opacity: 0.72;
}
.v-starter-video-rail > div > * > i {
  color: #efefef;
  background: #1b1b1d;
  border: 1px solid #ffffff27;
  border-radius: 50%;
  place-items: center;
  width: 36px;
  height: 36px;
  display: grid;
}
.v-starter-video-rail > div > * > i svg {
  width: 15px;
  height: 15px;
}
.v-starter-video-rail > div > * > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}
.v-starter-video-rail > div > * > span small {
  color: #77777c;
  letter-spacing: 0.12em;
  font-size: 7px;
}
.v-starter-video-rail > div > * > span strong {
  overflow: hidden;
  font-size: 12px;
  font-weight: 560;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-starter-video-rail > div > * > span em {
  color: #77777c;
  font-size: 8px;
  font-style: normal;
}
.v-starter-video-rail > div > * > b {
  color: #5f5f64;
  font-size: 9px;
  font-weight: 500;
}
.v-starter-video-rail > p {
  color: #d1d1d3;
  background: #151517;
  border-left: 2px solid #eee;
  border-radius: 0 9px 9px 0;
  margin: 0;
  padding: 10px 12px;
  font-size: 10px;
  line-height: 1.4;
}

.v-result-route-map {
  background: #070708 !important;
  border-color: #ffffff24 !important;
  padding: 19px 17px !important;
}
.v-result-route-map > header > strong {
  margin-top: 8px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 27px;
  font-weight: 640;
  letter-spacing: -0.04em;
  display: block;
}
.v-result-route-map > header > p {
  color: #85858a;
  margin: 8px 0 0;
  font-size: 10px;
  line-height: 1.45;
}
.v-result-route-track {
  margin-top: 17px;
}
.v-result-route-track > article {
  min-height: 70px;
}
.v-result-route-track > article.locked {
  opacity: 0.54;
}
.v-result-route-track > article > i {
  color: #f2f2f0 !important;
  background: #131315 !important;
  border-color: #ffffff3d !important;
}
.v-result-route-track > article > i svg {
  width: 13px;
  height: 13px;
}
.v-result-route-track > article.current > i {
  color: #09090a !important;
  background: #f1f1ef !important;
  border-color: #fff !important;
}
.v-result-route-track > article.current > i svg {
  fill: #09090a;
  stroke: #09090a;
}
.v-result-route-track > article:not(:last-child):after {
  background: repeating-linear-gradient(to bottom, #ffffff30 0 3px, transparent 3px 7px) !important;
}
.v-result-route-track > article > div > em {
  color: #09090a !important;
  background: #f1f1ef !important;
  border-color: #fff !important;
}
.v-result-route-map > footer {
  background: #111113;
  border: 1px solid #ffffff20;
  border-radius: 14px;
  flex-direction: column;
  gap: 7px;
  margin-top: 13px;
  padding: 14px;
  display: flex;
}
.v-result-route-map > footer small {
  color: #77777b;
  letter-spacing: 0.13em;
  font-size: 8px;
}
.v-result-route-map > footer strong {
  color: #d4d4d6;
  font-size: 11px;
  font-weight: 510;
  line-height: 1.45;
}

.v-route-shift-intro > small {
  color: #8c8c90;
}
.v-route-shift-proof {
  color: #88888d;
  flex-direction: column;
  gap: 8px;
  margin-top: 13px;
  font-size: 9px;
  letter-spacing: 0.1em;
  display: flex;
}
.v-route-shift-proof textarea {
  color: #f0f0ef;
  resize: vertical;
  background: #101011;
  border: 1px solid #ffffff2a;
  border-radius: 13px;
  min-height: 82px;
  padding: 12px 13px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.4;
}
.v-route-shift-proof textarea:focus {
  border-color: #ffffff75;
  outline: 0;
}
.v-route-shift-proof textarea:disabled {
  color: #b9b9bc;
  opacity: 0.72;
}

.v-environment-locked {
  gap: 13px;
  padding-bottom: 28px;
}
.v-environment-locked-hero {
  background:
    radial-gradient(circle at 84% 16%, #ffffff13, transparent 31%),
    linear-gradient(145deg, #171719, #070708 72%);
  border: 1px solid #ffffff24;
  border-radius: 23px;
  grid-template-columns: minmax(0, 1fr) 54px;
  align-items: end;
  gap: 15px;
  min-height: 224px;
  padding: 22px 18px;
  display: grid;
}
.v-environment-locked-hero small {
  color: #85858a;
  letter-spacing: 0.16em;
  font-size: 8px;
}
.v-environment-locked-hero h1 {
  color: #f0f0f1;
  max-width: 9ch;
  margin: 34px 0 10px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(30px, 8cqw, 40px);
  font-weight: 650;
  letter-spacing: -0.05em;
  line-height: 0.96;
}
.v-environment-locked-hero p {
  color: #8d8d92;
  max-width: 31ch;
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
}
.v-environment-locked-hero > i {
  color: #f0f0f0;
  background: #1d1d1f;
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  place-items: center;
  width: 54px;
  height: 54px;
  display: grid;
}
.v-environment-preview-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}
.v-environment-preview-grid > article {
  background: #0d0d0f;
  border: 1px solid #ffffff1d;
  border-radius: 15px;
  flex-direction: column;
  min-width: 0;
  min-height: 135px;
  padding: 12px;
  display: flex;
}
.v-environment-preview-grid span {
  color: #67676b;
  font-size: 8px;
}
.v-environment-preview-grid strong {
  color: #e4e4e5;
  margin-top: 14px;
  font-size: 11px;
  font-weight: 560;
}
.v-environment-preview-grid p {
  color: #747479;
  margin: 6px 0 12px;
  font-size: 8px;
  line-height: 1.35;
}
.v-environment-preview-grid svg {
  color: #eee;
  width: 14px;
  height: 14px;
  margin-top: auto;
}
.v-environment-lock-note {
  background: #111113;
  border: 1px solid #ffffff22;
  border-radius: 18px;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  padding: 15px;
  display: grid;
}
.v-environment-lock-note > svg {
  color: #ededed;
  background: #1c1c1e;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  padding: 9px;
}
.v-environment-lock-note > div strong {
  color: #efefef;
  font-size: 13px;
  font-weight: 580;
}
.v-environment-lock-note > div p {
  color: #838388;
  margin: 6px 0 0;
  font-size: 10px;
  line-height: 1.4;
}
.v-environment-lock-note > button {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 46px;
}

.v-locked-article-takeaways {
  flex-direction: column;
  gap: 7px;
  margin: 16px 0;
  display: flex;
}
.v-locked-article-takeaways > article {
  background: #151516;
  border: 1px solid #ffffff1e;
  border-radius: 12px;
  grid-template-columns: 29px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 8px 10px;
  display: grid;
}
.v-locked-article-takeaways i {
  color: #929296;
  background: #202022;
  border-radius: 50%;
  place-items: center;
  width: 29px;
  height: 29px;
  font-size: 7px;
  font-style: normal;
  display: grid;
}
.v-locked-article-takeaways strong {
  color: #dadadc;
  font-size: 10px;
  font-weight: 520;
  line-height: 1.35;
}
.v-locked-fragment-copy:after,
.v-material-copy-blur:after {
  display: none !important;
}
.v-material-copy-blur {
  color: #76767b !important;
  filter: none !important;
  opacity: 1 !important;
}

.v-free-access-status,
.v-active-access-notice {
  display: none !important;
}
.v-hero-card h2,
.v-home-grid h3,
.v-global-route-map h3,
.v-route-card h3,
.v-route-page-heading h1,
.v-section-heading h2 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-weight: 620 !important;
  letter-spacing: -0.035em !important;
}

@media (width <= 390px) {
  .v-quiz-welcome {
    padding-inline: 20px;
  }
  .v-quiz-welcome h1 {
    font-size: clamp(39px, 11.2cqw, 47px);
  }
  .v-environment-preview-grid {
    grid-template-columns: 1fr;
  }
  .v-environment-preview-grid > article {
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr) 18px;
    align-items: center;
    min-height: 72px;
  }
  .v-environment-preview-grid strong,
  .v-environment-preview-grid p,
  .v-environment-preview-grid svg {
    margin: 0;
  }
  .v-environment-preview-grid p {
    grid-column: 2;
  }
  .v-environment-preview-grid svg {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
}

.v-map-card .v-card-route-visual,
.v-shift-card .v-card-shift-visual {
  position: absolute;
  right: 13px;
  bottom: 13px;
  left: 13px;
  overflow: hidden;
}
.v-card-route-visual {
  background: linear-gradient(145deg, #171719, #09090a);
  border: 1px solid #ffffff24;
  border-radius: 13px;
  grid-template-columns: 14px minmax(0, 1fr) 14px;
  place-items: center;
  gap: 10px;
  height: 68px;
  padding: 0 15px;
  display: grid;
}
.v-card-route-visual:before,
.v-card-route-visual:after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  right: 22px;
  left: 22px;
  height: 1px;
  background: repeating-linear-gradient(90deg, #ffffff3d 0 4px, transparent 4px 8px);
}
.v-card-route-visual:after {
  right: auto;
  left: 23px;
  width: 36%;
  background: #e8e8e8;
}
.v-card-route-visual > i,
.v-card-route-visual > svg {
  position: relative;
  z-index: 1;
}
.v-card-route-visual > i {
  background: #111113;
  border: 1px solid #ffffff5c;
  border-radius: 50%;
  width: 11px;
  height: 11px;
  box-shadow: 0 0 0 4px #111113;
}
.v-card-route-visual > i:first-child {
  background: #eeeeec;
  border-color: #fff;
}
.v-card-route-visual > svg {
  color: #efefed;
  background: #1d1d1f;
  border: 1px solid #ffffff32;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  padding: 9px;
}
.v-card-shift-visual {
  background: linear-gradient(145deg, #171719, #09090a);
  border: 1px solid #ffffff24;
  border-radius: 13px;
  grid-template-columns: 31px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 68px;
  padding: 10px 11px;
  display: grid;
}
.v-card-shift-visual > span {
  color: #111;
  background: #efefed;
  border-radius: 50%;
  place-items: center;
  width: 31px;
  height: 31px;
  font-size: 8px;
  font-weight: 650;
  display: grid;
}
.v-card-shift-visual > strong {
  color: #d9d9db;
  overflow: hidden;
  font-size: 10px;
  font-weight: 530;
  line-height: 1.28;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.v-global-route-action ol {
  grid-template-columns: minmax(0, 1fr) !important;
}
.v-global-route-action li {
  min-height: 62px;
}
.v-dossier-diagnostic {
  background: #111113 !important;
  border-color: #ffffff24 !important;
}
.v-dossier-diagnostic > span {
  color: #a0a0a4 !important;
}

.v-route-video-heading {
  flex-direction: column !important;
  display: flex !important;
}
.v-result-route-map > header {
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
}
.v-module-map-visual > span,
.v-map-workspace-guide > span {
  color: #f0f0ee !important;
  background: #1a1a1c !important;
  border-color: #ffffff38 !important;
  box-shadow: none !important;
}
.v-module-map-visual > i:first-child {
  background: #eeeeec !important;
}
.v-module-shift-visual {
  background: linear-gradient(145deg, #171719, #09090a);
  border: 1px solid #ffffff24;
  border-radius: 13px;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center !important;
  gap: 10px !important;
  height: 64px !important;
  padding: 10px 11px;
  display: grid !important;
}
.v-module-shift-visual > i,
.v-module-shift-visual > i:nth-child(2),
.v-module-shift-visual > i:nth-child(3) {
  color: #111;
  background: #efefed !important;
  border: 1px solid #fff !important;
  border-radius: 50% !important;
  place-items: center;
  flex: none !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  display: grid !important;
}
.v-module-shift-visual > i b {
  color: #111 !important;
  font-size: 8px;
}
.v-module-shift-visual > strong {
  color: #dadadc;
  overflow: hidden;
  font-size: 10px;
  font-weight: 530;
  line-height: 1.28;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

/* v71: centered entry, route-first home and practical route tools */
.v-city-loader {
  min-height: 100svh !important;
  padding: 24px !important;
  place-items: center !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 1fr !important;
  background: #050506 !important;
}
.v-city-loader > header,
.v-city-loader > .v-city-stage {
  display: none !important;
}
.v-city-loader > section {
  position: static !important;
  transform: none !important;
  width: min(220px, 62vw) !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center !important;
}
.v-city-loader > section > small,
.v-city-loader > section > div,
.v-city-loader > section > strong,
.v-city-loader > section > b {
  display: none !important;
}
.v-city-loader > section > i {
  display: block !important;
  width: 100% !important;
  height: 2px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #262629 !important;
}
.v-city-loader > section > i span {
  height: 100% !important;
  border-radius: inherit !important;
  background: #f4f4f2 !important;
  box-shadow: none !important;
}

.v-quiz-welcome {
  box-sizing: border-box !important;
  min-height: calc(100svh - 58px) !important;
  justify-content: flex-start !important;
  align-items: center !important;
  padding: clamp(44px, 8svh, 78px) 24px 34px !important;
  text-align: center !important;
}
.v-quiz-welcome > * {
  margin-right: auto !important;
  margin-left: auto !important;
}
.v-quiz-welcome .v-quiz-kicker {
  justify-content: center !important;
  margin-top: 0 !important;
}
.v-quiz-welcome h1,
.v-quiz-welcome > p,
.v-quiz-welcome > small {
  max-width: 360px !important;
  text-align: center !important;
}
.v-quiz-benefits {
  width: min(360px, 100%) !important;
}
.v-quiz-benefits > article {
  grid-template-columns: 32px minmax(0, 1fr) !important;
  align-items: center !important;
  text-align: left !important;
}
.v-quiz-cta,
.v-route-page-next,
.v-route-shift-cta,
.v-primary,
.v-environment-lock-card > button {
  color: #080809 !important;
  background: #f4f4f2 !important;
  border-color: #fff !important;
  box-shadow: none !important;
}
.v-quiz-cta,
.v-route-page-next {
  display: flex !important;
  width: min(340px, 100%) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  justify-content: center !important;
}
.v-route-tabs-list {
  justify-content: center !important;
}

.v-current-configuration-v71 {
  gap: 10px !important;
}
.v-current-configuration-v71 > header {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.v-current-configuration-v71 > header > h2 {
  margin: 0 !important;
  font-size: clamp(19px, 5.5vw, 25px) !important;
  line-height: 1.08 !important;
}
.v-current-configuration-v71 .v-configuration-card {
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #ffffff20 !important;
  border-radius: 14px !important;
  background: #111113 !important;
}
.v-configuration-status-line,
.v-current-configuration-v71 .v-configuration-facts > div {
  display: grid !important;
  grid-template-columns: minmax(84px, 0.34fr) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 48px !important;
  padding: 10px 13px !important;
  border-bottom: 1px solid #ffffff15 !important;
}
.v-current-configuration-v71 .v-configuration-facts {
  display: block !important;
}
.v-current-configuration-v71 .v-configuration-facts > div:last-child {
  border-bottom: 0 !important;
}
.v-configuration-status-line small,
.v-current-configuration-v71 .v-configuration-facts small {
  color: #727277 !important;
  font-size: 8px !important;
  letter-spacing: 0.12em !important;
}
.v-configuration-status-line strong,
.v-current-configuration-v71 .v-configuration-facts strong {
  margin: 0 !important;
  color: #eeeeec !important;
  font-size: 12px !important;
  font-weight: 570 !important;
  line-height: 1.3 !important;
}

.v-home-screen {
  display: flex !important;
  flex-direction: column !important;
}
.v-home-screen > .v-hero-card {
  order: 0 !important;
}
.v-home-screen > .v-global-route-map {
  order: 1 !important;
}
.v-home-screen > .v-section-heading {
  order: 2 !important;
}
.v-home-screen > .v-home-grid {
  order: 3 !important;
}
.v-home-screen > .v-home-route-modules {
  order: 4 !important;
}
.v-home-screen > .v-continue-card {
  order: 5 !important;
}
.v-home-screen > .v-home-shift-section {
  display: none !important;
}
.v-home-screen > .v-global-route-map {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-home-screen > .v-global-route-map > header,
.v-home-screen > .v-global-route-map > .v-result-route-map {
  display: none !important;
}
.v-home-screen .v-global-route-directions-heading {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 10px !important;
  padding: 0 2px !important;
}
.v-home-screen .v-global-route-directions-heading > small {
  color: #f0f0ee !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: 0.04em !important;
}
.v-home-screen .v-global-route-directions-heading > strong {
  max-width: 190px !important;
  color: #737378 !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  text-align: right !important;
}
.v-home-screen .v-global-route-plan {
  gap: 7px !important;
}
.v-home-screen .v-global-route-connector {
  display: none !important;
}
.v-home-screen .v-global-route-plan > button {
  grid-template-columns: minmax(0, 1fr) 20px !important;
  min-height: 62px !important;
  padding: 12px 14px !important;
  border: 1px solid #ffffff1c !important;
  border-radius: 13px !important;
  color: #e9e9e7 !important;
  background: #111113 !important;
  box-shadow: none !important;
}
.v-home-screen .v-global-route-plan > button.active,
.v-home-screen .v-global-route-plan > button.completed {
  border-color: #ffffff52 !important;
  background: #18181a !important;
  box-shadow: none !important;
}
.v-home-screen .v-global-route-plan > button.locked {
  opacity: 0.66 !important;
}
.v-home-screen .v-global-route-plan > button > span {
  display: none !important;
}
.v-home-screen .v-global-route-plan > button > div {
  grid-column: 1 !important;
}
.v-home-screen .v-global-route-plan > button > svg {
  grid-column: 2 !important;
  color: #aaaab0 !important;
}

.v-video-route-map {
  padding: clamp(15px, 4vw, 21px) !important;
  border: 1px solid #ffffff20 !important;
  border-radius: 17px !important;
  color: #ededeb !important;
  background: #0d0d0f !important;
  box-shadow: none !important;
}
.v-video-route-map > header {
  display: block !important;
  margin-bottom: 14px !important;
  padding: 0 !important;
  border: 0 !important;
}
.v-video-route-map > header small {
  color: #79797e !important;
  font-size: 8px !important;
  letter-spacing: 0.12em !important;
}
.v-video-route-map > header strong {
  display: block !important;
  margin-top: 4px !important;
  font-size: clamp(22px, 6vw, 29px) !important;
  line-height: 1.05 !important;
}
.v-video-route-map > header p {
  max-width: 430px !important;
  margin: 7px 0 0 !important;
  color: #909095 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
.v-video-route-map .v-route-map-context {
  display: block !important;
  margin: 0 0 12px !important;
}
.v-video-route-map .v-route-map-context article {
  min-height: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #ffffff17 !important;
  border-radius: 11px !important;
  background: #151517 !important;
}
.v-video-route-map .v-route-map-context strong {
  font-size: 11px !important;
  line-height: 1.35 !important;
}
.v-video-route-days {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
}
.v-video-route-days > button {
  display: grid !important;
  grid-template-columns: 38px 32px minmax(0, 1fr) 17px !important;
  align-items: center !important;
  gap: 9px !important;
  width: 100% !important;
  min-height: 94px !important;
  padding: 10px !important;
  border: 1px solid #ffffff1c !important;
  border-radius: 13px !important;
  color: #e8e8e6 !important;
  background: #141416 !important;
  text-align: left !important;
}
.v-video-route-days > button.current,
.v-video-route-days > button.completed {
  border-color: #ffffff55 !important;
  background: #1a1a1c !important;
}
.v-video-route-days > button.locked {
  opacity: 0.64 !important;
}
.v-video-route-day {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  min-height: 48px !important;
  border-right: 1px solid #ffffff18 !important;
}
.v-video-route-day small {
  color: #6f6f74 !important;
  font-size: 6px !important;
  letter-spacing: 0.11em !important;
}
.v-video-route-day strong {
  margin-top: 2px !important;
  color: #f2f2ef !important;
  font-size: 17px !important;
}
.v-video-route-icon {
  display: grid !important;
  place-items: center !important;
  width: 32px !important;
  height: 32px !important;
  border: 1px solid #ffffff25 !important;
  border-radius: 9px !important;
  color: #d6d6d4 !important;
  background: #202022 !important;
}
.v-video-route-icon svg {
  width: 14px !important;
  height: 14px !important;
}
.v-video-route-days > button > div > small {
  color: #77777c !important;
  font-size: 7px !important;
  letter-spacing: 0.12em !important;
}
.v-video-route-days > button > div > strong {
  display: block !important;
  margin-top: 3px !important;
  color: #ededeb !important;
  font-size: 11px !important;
  font-weight: 590 !important;
  line-height: 1.25 !important;
}
.v-video-route-days > button > div > p {
  display: -webkit-box !important;
  overflow: hidden !important;
  margin: 3px 0 0 !important;
  color: #7d7d82 !important;
  font-size: 9px !important;
  line-height: 1.35 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}
.v-video-route-days > button > div > em {
  display: block !important;
  margin-top: 5px !important;
  color: #bcbcc0 !important;
  font-size: 8px !important;
  font-style: normal !important;
}
.v-video-route-days > button > svg {
  width: 15px !important;
  height: 15px !important;
  color: #aaaab0 !important;
}
.v-video-route-map > footer {
  margin-top: 12px !important;
  padding: 11px 0 0 !important;
  border-top: 1px solid #ffffff17 !important;
  background: transparent !important;
}
.v-video-route-map > footer strong {
  color: #77777c !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

.v-route-shift-v71 {
  border-color: #ffffff20 !important;
  color: #ededeb !important;
  background: #0d0d0f !important;
  box-shadow: none !important;
}
.v-route-shift-v71 > header > small,
.v-route-shift-v71 > header > span {
  color: #77777c !important;
}
.v-route-shift-v71 .v-route-shift-steps {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
}
.v-route-shift-v71 .v-route-shift-steps > button {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 11px !important;
  width: 100% !important;
  min-height: 92px !important;
  padding: 12px !important;
  border: 1px solid #ffffff1c !important;
  border-radius: 13px !important;
  color: #e8e8e6 !important;
  background: #141416 !important;
  text-align: left !important;
}
.v-route-shift-v71 .v-route-shift-steps > button.completed {
  border-color: #ffffff55 !important;
  background: #1b1b1d !important;
}
.v-route-shift-v71 .v-route-shift-steps > button.locked {
  opacity: 0.52 !important;
}
.v-route-shift-v71 .v-route-shift-steps > button > i {
  display: grid !important;
  place-items: center !important;
  width: 36px !important;
  height: 36px !important;
  border: 1px solid #ffffff2b !important;
  border-radius: 50% !important;
  color: #dadad8 !important;
  background: #202022 !important;
}
.v-route-shift-v71 .v-route-shift-steps > button > i svg {
  width: 15px !important;
  height: 15px !important;
}
.v-route-shift-v71 .v-route-shift-steps small {
  color: #77777c !important;
  font-size: 7px !important;
  letter-spacing: 0.12em !important;
}
.v-route-shift-v71 .v-route-shift-steps strong {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin-top: 4px !important;
  color: #eeeeec !important;
  font-size: 12px !important;
}
.v-route-shift-v71 .v-route-shift-steps strong em {
  flex: none !important;
  color: #85858a !important;
  font-size: 7px !important;
  font-style: normal !important;
}
.v-route-shift-v71 .v-route-shift-steps p {
  margin: 6px 0 0 !important;
  color: #8a8a8f !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
}
.v-route-shift-v71 .v-route-shift-proof textarea:disabled {
  color: #6d6d72 !important;
  background: #101012 !important;
  opacity: 1 !important;
}

.v-environment-preview {
  position: relative !important;
  min-height: 640px !important;
}
.v-environment-preview > .v-environment-screen {
  pointer-events: none !important;
  user-select: none !important;
  filter: grayscale(1) brightness(0.5) !important;
  opacity: 0.62 !important;
}
.v-environment-preview:after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 0, #06060733 35%, #060607 92%);
}
.v-environment-lock-card {
  position: absolute !important;
  z-index: 2 !important;
  top: clamp(150px, 27vh, 245px) !important;
  right: 18px !important;
  left: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 22px 20px !important;
  border: 1px solid #ffffff30 !important;
  border-radius: 17px !important;
  background: #101012f5 !important;
  box-shadow: 0 24px 70px #000b !important;
  text-align: center !important;
}
.v-environment-lock-card > i {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 12px !important;
  border: 1px solid #ffffff2c !important;
  border-radius: 50% !important;
  color: #ededeb !important;
  background: #202022 !important;
}
.v-environment-lock-card > i svg {
  width: 18px !important;
  height: 18px !important;
}
.v-environment-lock-card > small {
  color: #77777c !important;
  font-size: 8px !important;
  letter-spacing: 0.14em !important;
}
.v-environment-lock-card > strong {
  margin-top: 5px !important;
  color: #f0f0ee !important;
  font-size: 20px !important;
}
.v-environment-lock-card > p {
  max-width: 360px !important;
  margin: 8px 0 16px !important;
  color: #929297 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
.v-environment-lock-card > button {
  width: min(300px, 100%) !important;
  min-height: 45px !important;
  border: 1px solid #fff !important;
  border-radius: 12px !important;
  font-size: 11px !important;
  font-weight: 650 !important;
}

@media (width <= 390px) {
  .v-quiz-welcome {
    padding-top: 36px !important;
  }
  .v-video-route-days > button {
    grid-template-columns: 32px 28px minmax(0, 1fr) 15px !important;
    gap: 7px !important;
  }
  .v-video-route-day {
    width: 32px !important;
  }
  .v-video-route-icon {
    width: 28px !important;
    height: 28px !important;
  }
}

/* v83: original v74 layout; precise button typography and environment locks. */
/* v84: complete participant portrait and a compact route-map module only. */
.v-quiz-portrait-grid > label {
  display: flex !important;
}
.v-quiz-portrait .v-quiz-cta {
  width: 100% !important;
  align-self: stretch !important;
}
.v-home-route-modules .v-map-module-card {
  aspect-ratio: auto !important;
  align-self: start !important;
  height: auto !important;
  min-height: 140px !important;
  padding: 12px !important;
}
.v-map-module-card .v-module-map-visual {
  height: 44px;
  width: calc(100% - 24px);
  right: 12px;
  bottom: 9px;
  left: 12px;
}
.v-primary,
.v-quiz-cta,
.v-route-page-next,
.v-map-to-shift,
.v-purchase-offer > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-width: 0;
  height: auto !important;
  min-height: 48px;
  padding: 12px 16px !important;
  color: #101012 !important;
  background: #f5f5f3 !important;
  font-family: inherit !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: break-word;
}
.v-primary svg,
.v-quiz-cta svg,
.v-route-page-next svg,
.v-map-to-shift svg {
  flex: 0 0 auto !important;
}
.v-section-card,
.v-route-tabs-list > button,
.v-quiz-option {
  font-family: inherit !important;
  font-style: normal !important;
}
.v-section-card h4,
.v-section-card p,
.v-quiz-option > span {
  min-width: 0;
  white-space: normal !important;
  overflow-wrap: break-word;
}
.v-quiz-result-card > i {
  flex: 0 0 43px !important;
  width: 43px !important;
  height: 43px !important;
  aspect-ratio: 1 !important;
}
.v-quiz-result-card > i svg {
  flex: 0 0 auto !important;
}
.v-current-configuration-v71 {
  gap: 18px !important;
  margin-top: 12px !important;
}
.v-video-route-days {
  gap: 9px !important;
}
.v-video-route-days > button {
  min-height: 96px !important;
}
.v-route-page-subscribe {
  margin-top: 10px !important;
}
.v-environment-locked .v-env-card {
  aspect-ratio: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  min-width: 0;
  min-height: 230px;
  padding: 14px;
}
.v-environment-locked .v-env-card > span {
  position: relative;
  inset: auto;
  display: block;
  min-width: 0;
  padding-right: 20px;
  line-height: 1.2;
}
.v-environment-locked .v-env-lock-label {
  display: block !important;
  max-width: 26ch;
  margin-top: 6px;
  color: #b8b8bd !important;
  font-size: 0.8125rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.v-environment-locked .v-env-card > div {
  position: relative;
  inset: auto;
  width: 100%;
  height: 88px;
  margin-top: auto;
  flex: 0 0 auto;
}
.v-environment-locked .v-community-card > div,
.v-environment-locked .v-feed-card > div {
  margin-top: 18px;
}
.v-environment-locked .v-online-card > small {
  margin-top: 14px;
  font-size: 0.75rem;
  line-height: 1.4;
}
.v-environment-locked .v-online-card > div {
  height: auto;
  min-height: 48px;
  padding-top: 14px;
}
.v-environment-locked .v-env-locked-action {
  height: auto !important;
  min-height: 48px !important;
  padding: 12px 16px !important;
  gap: 8px !important;
  white-space: normal !important;
  font-size: 0.875rem !important;
  line-height: 1.4 !important;
  text-align: left !important;
}
.v-environment-locked .v-env-locked-action svg,
.v-environment-locked .v-primary.v-small svg {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}
.v-environment-locked .v-primary.v-small {
  gap: 5px;
}
.v-environment-locked .v-card-heading > span {
  min-width: 0;
}
.v-environment-locked .v-card-heading > svg {
  flex: 0 0 auto;
}
.v-environment-locked .v-people-empty {
  min-height: 80px;
}
.v-environment-locked .v-env-card:focus-visible,
.v-environment-locked .v-card-heading:focus-visible,
.v-environment-locked .v-people-empty:focus-visible {
  outline: 2px solid #f3f3f1;
  outline-offset: 3px;
}
.v-admin-tabs {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
.v-admin-tabs > button:nth-child(n + 5) {
  display: inline-flex !important;
}
.v-form-row.v-four {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.v-dossier-load-stats {
  display: grid !important;
}
.v-dossier-profile {
  display: flex !important;
}
.v-dossier-content {
  display: grid !important;
}
.v-dossier-ai-analytics,
.v-ai-usage-card,
.v-admin-dossier-policy label:has(input[name="dailyAiLimit"]),
.v-admin-dossier-policy label:has(input[name="aiEnabled"]) {
  display: none !important;
}
@media (width <= 760px) {
  .v-admin-tabs,
  .v-form-row.v-four {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .v-dossier-load-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v86: square route module aligned with the original two-column grid. */
.v-home-route-modules .v-route-progress-card {
  grid-column: auto;
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 0;
  aspect-ratio: 1 / 1 !important;
  width: 100%;
  align-self: start !important;
  min-width: 0;
  min-height: 0 !important;
  height: auto !important;
  padding: 14px !important;
  border: 1px solid #ffffff26 !important;
  border-radius: 17px !important;
  text-align: left;
}
.v-route-progress-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}
.v-route-progress-card .v-route-progress-heading h4 {
  margin: 0 !important;
  min-width: 0;
  color: #ededeb !important;
  font-family: inherit !important;
  font-size: clamp(17px, 4.25cqw, 20px) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.025em !important;
  overflow-wrap: break-word;
}
.v-route-progress-heading > svg {
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  margin-top: 3px;
}
.v-route-progress-meta {
  display: block;
  margin-top: 6px;
  color: #909095;
  font-size: 12px;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-route-progress-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 8px;
  min-width: 0;
}
.v-route-progress-value {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  min-width: 46px;
  min-height: 30px;
  padding: 6px 8px;
  border: 1px solid #ffffff30;
  border-radius: 999px;
  color: #ededeb;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
}
.v-route-progress-track {
  flex: 1;
  min-width: 0;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #28282a;
}
.v-route-progress-track > i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #d7d7d2;
  transition: width 0.2s ease;
}
.v-route-progress-card:focus-visible {
  outline: 2px solid #ededeb;
  outline-offset: 3px;
}
@media (max-width: 360px) {
  .v-home-route-modules .v-route-progress-card {
    padding: 12px !important;
  }
  .v-route-progress-heading {
    display: block;
    position: relative;
  }
  .v-route-progress-card .v-route-progress-heading h4 {
    font-size: 16px !important;
  }
  .v-route-progress-heading > svg {
    position: absolute;
    top: 0;
    right: 0;
  }
}

/* v100: presentation-ready funnel and functional route workspace. */
:root {
  --v100-bg: #0b0b0b;
  --v100-surface: #151515;
  --v100-surface-2: #1a1a1a;
  --v100-line: #353535;
  --v100-text: #fff;
  --v100-muted: #b8b3aa;
  --v100-accent: #b8a18b;
  --v100-accent-bright: #c3ae98;
  --v100-accent-soft: #b8a18b1f;
}

body,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen,
.v-paywall {
  background: var(--v100-bg) !important;
}

.v-screen {
  gap: 14px !important;
  padding-inline: 14px !important;
}

.v-screen :is(h1, h2, h3, h4, strong, p, small),
.v-start-screen :is(h1, h2, h3, strong, p, small),
.v-quiz-shell :is(h1, h2, h3, strong, p, small) {
  text-wrap: pretty;
}

.v-primary,
.v-quiz-cta,
.v-quiz-question-next,
.v-route-page-next,
.v-route-shift-cta,
.v-map-continue,
.v-purchase-cta,
.v-environment-banner-cta {
  min-height: 52px !important;
  padding: 14px 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  color: #0a0a0a !important;
  background: #f7f7f5 !important;
  border: 1px solid #fff !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

.v-primary:disabled,
.v-quiz-cta:disabled,
.v-quiz-question-next:disabled,
.v-route-shift-cta:disabled {
  color: #7d7d7d !important;
  background: #262626 !important;
  border-color: #333 !important;
  opacity: 1 !important;
}

.v-primary:focus-visible,
.v-quiz-cta:focus-visible,
.v-quiz-question-next:focus-visible,
.v-route-page-next:focus-visible,
.v-route-shift-cta:focus-visible,
button:focus-visible {
  outline: 2px solid var(--v100-accent-bright) !important;
  outline-offset: 2px !important;
}

.v-start-screen {
  width: min(100%, 480px) !important;
  min-height: 100dvh !important;
  margin-inline: auto !important;
  padding: max(22px, env(safe-area-inset-top)) 18px
    max(26px, env(safe-area-inset-bottom)) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 18px !important;
  text-align: center !important;
}

.v-start-brand {
  width: max-content !important;
  margin-inline: auto !important;
  grid-template-columns: 38px auto !important;
  align-items: center !important;
  text-align: left !important;
}

.v-start-brand > img {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1px solid #ffffff26 !important;
}

.v-start-brand > strong {
  font-size: 15px !important;
}

.v-start-brand > span {
  color: var(--v100-accent) !important;
  font-size: 9px !important;
  letter-spacing: 0.16em !important;
}

.v-start-intro {
  display: grid !important;
  justify-items: center !important;
  gap: 10px !important;
}

.v-start-intro > h1,
.v-quiz-welcome h1 {
  width: auto !important;
  max-width: 390px !important;
  margin-inline: auto !important;
  white-space: normal !important;
  font-size: clamp(30px, 8cqw, 40px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
}

.v-start-intro > p {
  max-width: 390px !important;
  color: var(--v100-muted) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

.v-start-outcome {
  width: 100% !important;
  max-width: 420px !important;
  padding: 13px 14px !important;
  border: 1px solid var(--v100-line) !important;
  border-radius: 12px !important;
  background: var(--v100-surface) !important;
  text-align: left !important;
}

.v-start-outcome:before {
  background: var(--v100-accent) !important;
  box-shadow: none !important;
}

.v-start-steps {
  width: 100% !important;
  max-width: 420px !important;
  margin-inline: auto !important;
  display: grid !important;
  gap: 7px !important;
  text-align: left !important;
}

.v-start-steps > li {
  min-height: 58px !important;
  padding: 10px 12px !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 10px !important;
  border: 1px solid #2b2b2b !important;
  border-radius: 12px !important;
  background: #111 !important;
}

.v-start-steps > li > span {
  width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  border: 1px solid #6d6155 !important;
  border-radius: 50% !important;
  background: var(--v100-accent-soft) !important;
  font-size: 0 !important;
}

.v-start-steps > li > span:after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  margin: 10px auto;
  border-radius: 50%;
  background: var(--v100-accent-bright);
}

.v-start-steps strong {
  color: #f6f6f4 !important;
  font-size: 13px !important;
}

.v-start-steps p {
  margin-top: 2px !important;
  color: #8f8b85 !important;
  font-size: 11px !important;
  line-height: 1.32 !important;
}

.v-start-actions {
  width: 100% !important;
  max-width: 420px !important;
  margin-inline: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 9px !important;
}

.v-start-actions > span {
  order: 2;
  color: #85817c !important;
  text-align: center !important;
}

.v-start-screen .v-start-cta {
  order: 1;
  width: 100% !important;
  min-height: 56px !important;
  border-radius: 14px !important;
  background: #f8f8f6 !important;
}

.v-start-screen .v-start-cta:before {
  display: none !important;
}

.v-start-screen .v-start-cta > svg {
  width: 18px !important;
  height: 18px !important;
  padding: 0 !important;
  color: #101010 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.v-quiz-shell {
  width: min(100%, 480px) !important;
  margin-inline: auto !important;
}

.v-quiz-header {
  min-height: 52px !important;
  padding-inline: 16px !important;
}

.v-quiz-header > span:last-child {
  color: var(--v100-muted) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
}

.v-quiz-welcome,
.v-quiz-question,
.v-quiz-portrait,
.v-quiz-result {
  width: 100% !important;
  max-width: 440px !important;
  margin-inline: auto !important;
  padding-inline: 16px !important;
}

.v-quiz-welcome {
  text-align: center !important;
}

.v-quiz-benefits {
  display: grid !important;
  gap: 7px !important;
  text-align: left !important;
}

.v-quiz-benefits article {
  min-height: 52px !important;
  padding: 10px 12px !important;
  border: 1px solid #2d2d2d !important;
  border-radius: 12px !important;
  background: #121212 !important;
}

.v-quiz-benefits article > i {
  width: 28px !important;
  height: 28px !important;
  border: 1px solid #695e53 !important;
  border-radius: 50% !important;
  background: var(--v100-accent-soft) !important;
}

.v-quiz-benefits article > i:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  margin: 10px auto;
  border-radius: 50%;
  background: var(--v100-accent-bright);
}

.v-quiz-question {
  min-height: calc(100dvh - 60px) !important;
  padding-top: 8px !important;
  padding-bottom: max(20px, env(safe-area-inset-bottom)) !important;
  display: flex !important;
  flex-direction: column !important;
}

.v-quiz-question > span {
  margin-top: 16px !important;
  color: var(--v100-accent) !important;
  font-size: 10px !important;
  letter-spacing: 0.13em !important;
}

.v-quiz-question h1 {
  max-width: 420px !important;
  margin-top: 9px !important;
  font-size: clamp(27px, 7.2cqw, 34px) !important;
  line-height: 1.03 !important;
  letter-spacing: -0.045em !important;
}

.v-quiz-question > p {
  margin-top: 8px !important;
  color: var(--v100-muted) !important;
  font-size: 14px !important;
}

.v-quiz-progress {
  gap: 4px !important;
}

.v-quiz-progress i {
  height: 2px !important;
  border-radius: 2px !important;
  background: #303030 !important;
}

.v-quiz-progress i.active,
.v-quiz-progress-complete i.active {
  background: var(--v100-accent-bright) !important;
  box-shadow: none !important;
}

.v-quiz-options {
  margin-top: 20px !important;
  display: grid !important;
  gap: 8px !important;
}

.v-quiz-options > button {
  min-height: 54px !important;
  padding: 12px 13px !important;
  border: 1px solid #303030 !important;
  border-radius: 12px !important;
  background: #121212 !important;
  color: #f1f1ef !important;
  text-align: left !important;
}

.v-quiz-options > button:hover,
.v-quiz-options > button.selected {
  border-color: var(--v100-accent) !important;
  background: var(--v100-accent-soft) !important;
}

.v-quiz-options > button > span {
  font-size: 14px !important;
  line-height: 1.3 !important;
}

.v-quiz-options > button > small {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  border: 1px solid #5a5a5a !important;
  border-radius: 50% !important;
  color: transparent !important;
  font-size: 0 !important;
}

.v-quiz-options > button.selected > small {
  border: 5px solid #f4f4f2 !important;
  background: var(--v100-accent) !important;
}

.v-quiz-question-next {
  width: 100% !important;
  margin-top: auto !important;
}

.v-quiz-processing-mark {
  width: 60px !important;
  height: 60px !important;
  padding: 3px !important;
  border: 1px solid #5f564d !important;
  border-radius: 50% !important;
  background: #111 !important;
  overflow: hidden !important;
}

.v-quiz-processing-mark img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.v-quiz-processing-line {
  width: min(180px, 52vw) !important;
  height: 2px !important;
  margin-inline: auto !important;
  border-radius: 2px !important;
  background: #252525 !important;
  overflow: hidden !important;
}

.v-quiz-processing-line > i {
  background: linear-gradient(90deg, transparent, var(--v100-accent-bright), transparent) !important;
}

.v-current-configuration-v71 {
  gap: 10px !important;
}

.v-current-configuration-v71 > header h2 {
  font-size: 19px !important;
}

.v-configuration-card {
  padding: 0 !important;
  border: 1px solid var(--v100-line) !important;
  border-radius: 14px !important;
  background: var(--v100-surface) !important;
  overflow: hidden !important;
}

.v-configuration-status-line,
.v-configuration-facts,
.v-configuration-signals,
.v-configuration-proof {
  padding: 13px 14px !important;
}

.v-configuration-status-line {
  display: grid !important;
  gap: 4px !important;
  border-bottom: 1px solid #2e2e2e !important;
}

.v-configuration-status-line > small,
.v-configuration-signals small {
  color: var(--v100-accent) !important;
}

.v-configuration-facts {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}

.v-configuration-facts > div,
.v-configuration-signals > div {
  padding: 10px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #292929 !important;
  background: transparent !important;
}

.v-configuration-facts > div:last-child,
.v-configuration-signals > div:last-child {
  border-bottom: 0 !important;
}

.v-configuration-signals {
  display: grid !important;
  gap: 0 !important;
  border-top: 1px solid #2e2e2e !important;
}

.v-configuration-signals strong {
  display: block !important;
  margin-top: 3px !important;
  color: #e8e6e2 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.v-configuration-proof {
  margin: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  color: var(--v100-muted) !important;
  border-top: 1px solid #2e2e2e !important;
  background: #101010 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.v-configuration-proof svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
  color: var(--v100-accent-bright) !important;
}

.v-home-grid,
.v-home-route-modules {
  gap: 9px !important;
}

.v-home-route-modules {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.v-home-route-modules .v-section-card {
  min-width: 0 !important;
  aspect-ratio: 1 / 1 !important;
  padding: 14px !important;
  border: 1px solid #343434 !important;
  border-radius: 14px !important;
  background: var(--v100-surface) !important;
  box-shadow: none !important;
}

.v-home-route-modules .v-section-card:hover {
  border-color: #62584f !important;
}

.v-shift-module-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
}

.v-shift-module-card > small {
  margin-top: auto !important;
  color: var(--v100-accent) !important;
  font-size: 8px !important;
  letter-spacing: 0.1em !important;
}

.v-shift-module-card > strong {
  margin-top: 5px !important;
  color: #f3f2ef !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
}

.v-shift-module-card > p {
  margin-top: 5px !important;
  color: #918d87 !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
}

.v-global-route-map {
  border: 1px solid #313131 !important;
  border-radius: 16px !important;
  background: #111 !important;
  box-shadow: none !important;
}

.v-global-route-map :is(small, span),
.v-result-route-map > header > small,
.v-video-route-day > small {
  color: var(--v100-accent) !important;
}

.v-result-route-map,
.v-map-workspace-canvas,
.v-route-shift,
.v-weekly-review,
.v-starter-pack {
  border: 1px solid var(--v100-line) !important;
  border-radius: 16px !important;
  background: var(--v100-surface) !important;
  box-shadow: none !important;
}

.v-result-route-track > button,
.v-video-route-days > button {
  min-height: 92px !important;
  border: 0 !important;
  border-bottom: 1px solid #2c2c2c !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.v-result-route-track > button:last-child,
.v-video-route-days > button:last-child {
  border-bottom: 0 !important;
}

.v-result-route-track > button.current,
.v-video-route-days > button.current {
  background: var(--v100-accent-soft) !important;
}

.v-result-route-track > button.locked,
.v-video-route-days > button.locked {
  opacity: 0.64 !important;
}

.v-result-route-track > button.locked svg,
.v-video-route-days > button.locked svg {
  color: #d7d5d1 !important;
}

.v-page-back {
  width: max-content !important;
  min-height: 40px !important;
  padding: 8px 11px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: #d2cfca !important;
  border: 1px solid #333 !important;
  border-radius: 11px !important;
  background: #121212 !important;
  font-size: 12px !important;
}

.v-page-back svg {
  width: 15px !important;
  height: 15px !important;
}

.v-route-shift {
  padding: 15px !important;
}

.v-route-shift > header small,
.v-route-shift-intro small,
.v-route-shift-steps small,
.v-route-shift-next {
  color: var(--v100-accent) !important;
}

.v-route-shift-steps {
  display: grid !important;
  gap: 8px !important;
}

.v-route-shift-steps > button {
  min-height: 94px !important;
  padding: 12px !important;
  border: 1px solid #303030 !important;
  border-radius: 12px !important;
  background: #111 !important;
  text-align: left !important;
}

.v-route-shift-steps > button.completed {
  border-color: #655b51 !important;
  background: var(--v100-accent-soft) !important;
}

.v-route-shift-proof textarea {
  min-height: 104px !important;
  padding: 13px !important;
  color: #f5f4f1 !important;
  border: 1px solid #343434 !important;
  border-radius: 12px !important;
  background: #0f0f0f !important;
  resize: vertical !important;
}

.v-route-shift-edit {
  width: 100% !important;
  min-height: 42px !important;
  color: var(--v100-muted) !important;
  border: 0 !important;
  background: transparent !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
}

.v-weekly-review {
  padding: 15px !important;
  display: grid !important;
  gap: 13px !important;
}

.v-weekly-review > header {
  display: grid !important;
  gap: 3px !important;
}

.v-weekly-review > header small,
.v-weekly-review-focus small {
  color: var(--v100-accent) !important;
  font-size: 9px !important;
  letter-spacing: 0.13em !important;
}

.v-weekly-review > header strong {
  font-size: 22px !important;
  letter-spacing: -0.035em !important;
}

.v-weekly-review-metrics {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 7px !important;
}

.v-weekly-review-metrics article {
  min-width: 0 !important;
  padding: 12px 8px !important;
  display: grid !important;
  gap: 3px !important;
  border: 1px solid #303030 !important;
  border-radius: 11px !important;
  background: #101010 !important;
  text-align: center !important;
}

.v-weekly-review-metrics strong {
  font-size: 21px !important;
}

.v-weekly-review-metrics small {
  color: #938f89 !important;
  font-size: 9px !important;
}

.v-weekly-review-focus {
  padding: 12px !important;
  border-left: 2px solid var(--v100-accent) !important;
  background: #101010 !important;
}

.v-weekly-review-focus p {
  margin-top: 4px !important;
  color: #e8e5e0 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.v-starter-pack {
  padding: 15px !important;
  display: grid !important;
  gap: 12px !important;
}

.v-starter-pack > header {
  display: grid !important;
  gap: 4px !important;
}

.v-starter-pack > header small {
  color: var(--v100-accent) !important;
  font-size: 9px !important;
  letter-spacing: 0.13em !important;
}

.v-starter-pack > header strong {
  font-size: 22px !important;
  letter-spacing: -0.035em !important;
}

.v-starter-pack > header p {
  color: var(--v100-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.v-starter-pack > div {
  display: grid !important;
  gap: 7px !important;
}

.v-starter-pack > div > button {
  min-height: 66px !important;
  padding: 10px 11px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  color: #f4f3f0 !important;
  border: 1px solid #303030 !important;
  border-radius: 12px !important;
  background: #101010 !important;
  text-align: left !important;
}

.v-starter-pack > div > button > i {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--v100-accent-bright) !important;
  border: 1px solid #5f554c !important;
  border-radius: 50% !important;
  background: var(--v100-accent-soft) !important;
}

.v-starter-pack > div > button > i svg {
  width: 16px !important;
  height: 16px !important;
}

.v-starter-pack > div > button > span {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

.v-starter-pack > div > button small {
  color: #918c85 !important;
  font-size: 8px !important;
  letter-spacing: 0.08em !important;
}

.v-starter-pack > div > button strong {
  font-size: 12px !important;
  line-height: 1.3 !important;
}

.v-starter-pack > div > button > em {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  color: var(--v100-accent-bright) !important;
  font-size: 9px !important;
  font-style: normal !important;
  white-space: nowrap !important;
}

.v-starter-pack > div > button > em svg {
  width: 12px !important;
  height: 12px !important;
}

.v-environment-locked .v-env-card,
.v-environment-locked .v-people-card {
  opacity: 0.78 !important;
}

.v-environment-locked .v-env-card:hover,
.v-environment-locked .v-people-card:hover {
  border-color: #5b524a !important;
}

.v-environment-locked button[aria-disabled="true"] {
  cursor: pointer !important;
}

.v-environment-locked button[aria-disabled="true"] svg {
  color: var(--v100-accent-bright) !important;
}

.v-bottom-nav button.active {
  color: #fff !important;
}

.v-bottom-nav button.active > i {
  background: var(--v100-accent) !important;
}

.v-route-page-tabs,
.v-personal-route-result {
  background: var(--v100-bg) !important;
}

.v-route-tabs-list {
  border: 1px solid #303030 !important;
  border-radius: 12px !important;
  background: #111 !important;
}

.v-route-tabs-list > button {
  min-height: 42px !important;
  border-radius: 10px !important;
}

.v-route-tabs-list > button.active {
  color: #0b0b0b !important;
  background: #f5f5f3 !important;
}

.v-route-tab-progress > i {
  background: var(--v100-accent-bright) !important;
}

.v-access-preview-video video,
.v-access-route-video,
.v-free-material-video video {
  border-radius: 12px !important;
  overflow: hidden !important;
}

.v-route-video-heading {
  margin-top: 12px !important;
  padding: 0 2px !important;
  border: 0 !important;
  background: transparent !important;
}

.v-route-video-heading small {
  color: var(--v100-accent) !important;
}

.v-purchase-page,
.v-application-page {
  color: var(--v100-text) !important;
}

.v-purchase-back {
  min-height: 40px !important;
  padding: 8px 11px !important;
  color: #d2cfca !important;
  border: 1px solid #333 !important;
  border-radius: 11px !important;
  background: #121212 !important;
}

.v-lifetime-tariff,
.v-purchase-benefits,
.v-locked-preview-card,
.v-purchase-application {
  border-color: var(--v100-line) !important;
  border-radius: 14px !important;
  background: var(--v100-surface) !important;
  box-shadow: none !important;
}

.v-purchase-application :is(input, textarea) {
  border: 1px solid #393939 !important;
  border-radius: 11px !important;
  background: #101010 !important;
}

@media (max-width: 360px) {
  .v-start-screen {
    padding-inline: 14px !important;
  }
  .v-start-intro > h1,
  .v-quiz-welcome h1 {
    font-size: 29px !important;
  }
  .v-home-route-modules .v-section-card {
    padding: 12px !important;
  }
  .v-shift-module-card > strong {
    font-size: 12px !important;
  }
  .v-starter-pack > div > button {
    grid-template-columns: 32px minmax(0, 1fr) !important;
  }
  .v-starter-pack > div > button > em {
    grid-column: 2 !important;
    justify-self: start !important;
  }
}

/* Admin statistics, one-time broadcast and six-section control navigation. */
.v-control-page .v-admin-tabs,
.v-admin-tabs {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
.v-control-page .v-admin-metrics-compact {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.v-admin-statistics,
.v-one-time-broadcast {
  display: grid;
  gap: 20px;
  padding: 22px;
  background: #0d0d0e;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
}
.v-admin-statistics > header,
.v-one-time-broadcast > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.v-admin-statistics > header > div:first-child,
.v-one-time-broadcast > header > div {
  display: flex;
  align-items: center;
  gap: 12px;
}
.v-admin-statistics > header strong,
.v-one-time-broadcast > header strong {
  display: block;
  color: #f1f1ef;
  font-size: 18px;
}
.v-admin-statistics > header small,
.v-one-time-broadcast > header small {
  display: block;
  margin-top: 3px;
  color: #85858b;
  font-size: 13px;
}
.v-one-time-broadcast > header svg {
  width: 22px;
  height: 22px;
  color: #d9d9d7;
}
.v-stat-period {
  display: flex;
  gap: 4px;
  padding: 4px;
  background: #151516;
  border: 1px solid #ffffff17;
  border-radius: 12px;
}
.v-stat-period button {
  min-height: 36px;
  padding: 8px 14px;
  color: #8e8e93;
  background: transparent;
  border: 0;
  border-radius: 9px;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}
.v-stat-period button.active {
  color: #0b0b0c;
  background: #eeeeec;
}
.v-stat-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.v-stat-summary article {
  min-height: 104px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #121213;
  border: 1px solid #ffffff17;
  border-radius: 14px;
}
.v-stat-summary span {
  color: #85858b;
  font-size: 12px;
}
.v-stat-summary strong {
  color: #f3f3f1;
  font-size: 30px;
  letter-spacing: -0.04em;
}
.v-stat-legend {
  display: flex;
  gap: 18px;
  color: #aaaab0;
  font-size: 12px;
}
.v-stat-legend span {
  display: flex;
  align-items: center;
  gap: 7px;
}
.v-stat-legend i {
  width: 9px;
  height: 9px;
  border-radius: 3px;
}
.v-stat-legend .visits,
.v-stat-chart i.visits {
  background: #f1f1ef;
}
.v-stat-legend .registered,
.v-stat-chart i.registered {
  background: #66666d;
}
.v-stat-chart {
  min-height: 250px;
  padding: 18px 12px 8px;
  display: grid;
  grid-template-columns: repeat(7, minmax(34px, 1fr));
  gap: 8px;
  overflow-x: auto;
  background: linear-gradient(to top, transparent 24%, #ffffff0b 25%, transparent 26%, transparent 49%, #ffffff0b 50%, transparent 51%, transparent 74%, #ffffff0b 75%, transparent 76%);
  border: 1px solid #ffffff14;
  border-radius: 16px;
}
.v-stat-chart[data-period="month"] {
  grid-template-columns: repeat(30, minmax(24px, 1fr));
}
.v-stat-chart article {
  min-height: 210px;
  display: grid;
  grid-template-rows: 1fr 20px;
  gap: 8px;
}
.v-stat-chart article > div {
  min-height: 178px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
}
.v-stat-chart article > div i {
  width: min(11px, 42%);
  min-height: 3px;
  border-radius: 5px 5px 2px 2px;
  transition: height 220ms ease;
}
.v-stat-chart small {
  color: #74747a;
  font-size: 10px;
  text-align: center;
  white-space: nowrap;
}
.v-one-time-broadcast {
  margin-top: 18px;
}
.v-one-time-broadcast .v-broadcast-layout {
  margin: 0;
}
@media (width <= 1000px) {
  .v-control-page .v-admin-metrics-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (width <= 760px) {
  .v-control-page .v-admin-tabs,
  .v-admin-tabs {
    display: flex !important;
  }
  .v-admin-statistics,
  .v-one-time-broadcast {
    padding: 16px;
  }
  .v-admin-statistics > header {
    align-items: flex-start;
    flex-direction: column;
  }
  .v-stat-summary {
    grid-template-columns: 1fr;
  }
}

/* v87: clean locks, separate application page and undistorted media. */
.v-environment-locked .v-env-card {
  aspect-ratio: 1 / 1;
  min-height: 0;
}
.v-environment-locked .v-env-card > span {
  max-width: calc(100% - 22px);
  padding-right: 0;
  font-size: clamp(14px, 3.9cqw, 18px);
  overflow-wrap: normal;
  word-break: normal;
}
.v-environment-locked .v-env-card > div {
  min-height: 0;
  height: 76px;
  margin-top: auto;
}
.v-environment-locked .v-env-card > small {
  position: static;
  margin-top: 8px;
  line-height: 1.3;
}
.v-environment-locked .v-online-card > div {
  height: 44px;
  padding-top: 0;
}
.v-environment-locked .v-feed-card > div {
  height: auto;
}
.v-locked-media-fragment {
  aspect-ratio: 1920 / 1089 !important;
  min-height: 0 !important;
  height: auto !important;
  box-sizing: border-box;
}
.v-locked-media-fragment > button {
  aspect-ratio: 1 / 1;
  width: clamp(44px, 12cqw, 64px);
  height: auto;
  min-height: 0;
  padding: 0;
}
.v-access-route-video,
.v-access-preview-video > video,
.v-free-material-video > video,
.v-reader-video-wide {
  width: 100% !important;
  aspect-ratio: 1920 / 1089 !important;
  height: auto !important;
  object-fit: contain;
}
.v-route-hero .v-primary,
.v-map-continue,
.v-route-page-next {
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
.v-route-hero .v-primary {
  width: max-content !important;
  max-width: calc(100cqw - 48px) !important;
  padding: 12px !important;
  gap: 6px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}
.v-purchase-intro > h1 {
  font-size: clamp(21px, 6cqw, 28px) !important;
  line-height: 1.2 !important;
  white-space: nowrap;
}
.v-application-page .v-purchase-application {
  margin-top: 8px;
  padding: 16px;
  border: 1px solid #ffffff26;
  border-radius: 17px;
  background: #0d0d0e;
}
.v-application-page .v-purchase-application label > span {
  font-size: 14px;
  line-height: 1.4;
}
.v-application-page input,
.v-application-page textarea {
  font-size: 16px;
}

/* v89: compact questions, aligned diagnosis and a separate map footer. */
.v-quiz-shell .v-quiz-header {
  min-height: 64px;
  padding: 12px 24px 8px;
}
.v-quiz-header > span:last-child {
  font-size: 12px;
}
.v-quiz-shell .v-quiz-question {
  min-height: 0;
  padding: 12px 24px max(24px, env(safe-area-inset-bottom));
}
.v-quiz-question .v-quiz-progress {
  margin-bottom: 18px;
}
.v-quiz-question > span {
  display: block;
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
.v-quiz-question h1 {
  max-width: none;
  margin: 12px 0 10px;
  font-size: clamp(28px, 7.8cqw, 36px);
  line-height: 1.12;
}
.v-quiz-question > p {
  margin-bottom: 16px;
  font-size: 16px;
}
.v-quiz-options button {
  min-height: 54px;
  padding: 12px 16px;
  gap: 12px;
}
.v-quiz-options small {
  flex: 0 0 auto;
  font-size: 12px;
}
.v-quiz-shell .v-quiz-portrait {
  min-height: 0;
  justify-content: flex-start;
  padding: 16px 24px max(24px, env(safe-area-inset-bottom));
}
.v-quiz-portrait > span {
  font-size: 12px;
}
.v-quiz-portrait > p {
  font-size: 16px;
}
.v-quiz-portrait-grid label > span {
  font-size: 14px;
  line-height: 1.4;
}
.v-quiz-portrait-grid input,
.v-quiz-portrait-grid textarea {
  font-family: inherit !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
}
.v-current-configuration-v71 {
  display: flex;
  flex-direction: column;
  gap: 16px !important;
  margin: 20px 0 0 !important;
}
.v-current-configuration-v71 > header > h2 {
  font-size: clamp(21px, 5.6cqw, 26px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.025em;
}
.v-current-configuration-v71 .v-configuration-status-line,
.v-current-configuration-v71 .v-configuration-facts > div {
  grid-template-columns: 104px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 16px !important;
  min-height: 0 !important;
}
.v-current-configuration-v71 .v-configuration-status-line small,
.v-current-configuration-v71 .v-configuration-facts small {
  padding-top: 3px;
  font-size: 12px !important;
  line-height: 1.5 !important;
  letter-spacing: 0.04em !important;
}
.v-current-configuration-v71 .v-configuration-status-line strong,
.v-current-configuration-v71 .v-configuration-facts strong {
  min-width: 0;
  text-align: left !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  overflow-wrap: break-word;
}
.v-video-route-map {
  display: flex;
  flex-direction: column;
  height: auto !important;
  overflow: visible;
}
.v-video-route-map > header,
.v-video-route-map > .v-route-map-context,
.v-video-route-map > .v-video-route-days,
.v-video-route-map > footer {
  flex: 0 0 auto;
}
.v-video-route-days > button {
  flex: 0 0 auto;
  height: auto !important;
  overflow: hidden;
}
.v-video-route-days > button > div {
  min-width: 0;
}
.v-video-route-map > footer {
  position: static !important;
  inset: auto !important;
  width: 100%;
  height: auto !important;
  min-height: 0 !important;
  margin: 20px 0 0 !important;
  padding: 16px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid #ffffff20 !important;
  border-radius: 0;
}
.v-video-route-map > footer strong {
  display: block;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
@media (max-width: 360px) {
  .v-current-configuration-v71 .v-configuration-status-line,
  .v-current-configuration-v71 .v-configuration-facts > div {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }
}

/* v90: short welcome and compact label-above-answer diagnosis. */
.v-current-configuration-v71 .v-configuration-status-line,
.v-current-configuration-v71 .v-configuration-facts > div {
  grid-template-columns: 1fr !important;
  grid-auto-rows: auto;
  gap: 5px !important;
  padding: 12px 14px !important;
  height: auto !important;
  min-height: 0 !important;
}
.v-current-configuration-v71 .v-configuration-status-line small,
.v-current-configuration-v71 .v-configuration-facts small {
  padding: 0;
  font-size: 12px !important;
  line-height: 1.4 !important;
}
.v-current-configuration-v71 .v-configuration-status-line strong,
.v-current-configuration-v71 .v-configuration-facts strong {
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  font-size: 16px !important;
  font-weight: 550 !important;
  line-height: 1.4 !important;
}
.v-start-screen {
  box-sizing: border-box;
  width: min(100%, 480px);
  min-height: var(--tg-viewport-stable-height, 100svh);
  margin: 0 auto;
  padding: 24px 24px max(24px, env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: 24px;
  color: #f5f5f3;
  background: radial-gradient(ellipse at 100% 0, #c0c0b60d, transparent 46%), #050505;
  font-family: inherit;
}
.v-start-brand {
  display: grid;
  grid-template-columns: 44px 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 12px;
  row-gap: 3px;
}
.v-start-brand > img {
  grid-row: 1 / 3;
  border-radius: 12px;
  object-fit: contain;
}
.v-start-brand > strong {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
}
.v-start-brand > span {
  color: #969693;
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: 0.06em;
}
.v-start-intro > h1 {
  max-width: 11ch;
  margin: 8px 0 16px;
  font-size: clamp(36px, 10cqw, 46px);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: -0.045em;
}
.v-start-intro > p {
  margin: 0;
  max-width: 32ch;
  color: #a6a6a2;
  font-size: 16px;
  line-height: 1.5;
}
.v-start-steps {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  margin: 0;
  list-style: none;
}
.v-start-steps > li {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  padding: 14px 0;
  border-top: 1px solid #ffffff18;
}
.v-start-steps > li > span {
  padding-top: 3px;
  color: #9f9f98;
  font-size: 12px;
  line-height: 1.4;
}
.v-start-steps strong {
  font-size: 16px;
  line-height: 1.4;
  font-weight: 550;
}
.v-start-steps p {
  margin: 4px 0 0;
  color: #969693;
  font-size: 14px;
  line-height: 1.45;
}
.v-start-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: auto;
}
.v-start-actions > span {
  color: #a6a6a2;
  font-size: 14px;
  line-height: 1.4;
}
.v-start-screen .v-start-cta {
  width: 100%;
  min-height: 54px;
  border-radius: 17px;
  font-size: 16px;
  white-space: normal !important;
}
.v-start-actions > p {
  margin: 0;
  color: #8f8f8b;
  font-size: 13px;
  line-height: 1.5;
}
@media (max-height: 720px) {
  .v-start-screen {
    gap: 18px;
    padding-top: 18px;
  }
  .v-start-intro > h1 {
    margin-top: 0;
    font-size: 36px;
  }
  .v-start-steps > li {
    padding-block: 11px;
  }
}

/* v92: a calm V-app launch, a clearer first decision and aligned portrait fields. */
.v-launch-screen {
  box-sizing: border-box;
  isolation: isolate;
  position: relative;
  width: min(100%, 480px);
  min-height: var(--tg-viewport-stable-height, 100svh);
  margin: 0 auto;
  padding: max(28px, env(safe-area-inset-top)) 28px
    max(26px, env(safe-area-inset-bottom));
  overflow: hidden;
  display: grid;
  grid-template-rows: 1fr auto 1fr;
  color: #f4f1ec;
  background:
    radial-gradient(circle at 50% 45%, #b8a18b1f 0, #b8a18b08 22%, transparent 46%),
    linear-gradient(180deg, #070605 0%, #010101 58%, #060504 100%);
  animation: v-launch-enter 0.52s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.v-launch-screen:before,
.v-launch-screen:after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}
.v-launch-screen:before {
  inset: 0;
  opacity: 0.22;
  background-image:
    linear-gradient(#ffffff0d 1px, transparent 1px),
    linear-gradient(90deg, #ffffff0d 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(circle at center, #000 0%, transparent 68%);
}
.v-launch-screen:after {
  width: 270px;
  height: 270px;
  top: 50%;
  left: 50%;
  border: 1px solid #b8a18b24;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.v-launch-screen.is-ready {
  animation: v-launch-exit 0.56s cubic-bezier(0.4, 0, 0.2, 1) both;
}
.v-launch-glow {
  position: absolute;
  z-index: -1;
  width: 180px;
  height: 180px;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  background: #b8a18b16;
  filter: blur(42px);
  transform: translate(-50%, -50%);
  animation: v-launch-glow 2.2s ease-in-out infinite;
}
.v-launch-brand {
  grid-row: 2;
  align-self: center;
  justify-items: center;
  text-align: center;
  display: grid;
}
.v-launch-mark {
  position: relative;
  place-items: center;
  width: 82px;
  height: 82px;
  margin-bottom: 24px;
  display: grid;
  color: #0a0908;
  background: linear-gradient(145deg, #d5c3b1, #9f8873);
  border: 1px solid #eadccd;
  border-radius: 24px;
  box-shadow:
    0 22px 52px #000c,
    0 0 42px #b8a18b24,
    inset 0 1px #fff7;
  animation: v-launch-mark-in 0.72s 0.08s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.v-launch-mark > span {
  font-size: 43px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: -0.08em;
  transform: translateX(-1px);
}
.v-launch-mark > i {
  position: absolute;
  inset: -8px;
  border: 1px solid #b8a18b52;
  border-radius: 30px;
  animation: v-launch-ring 1.8s ease-in-out infinite;
}
.v-launch-brand > span {
  color: #b8a18b;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.22em;
  animation: v-launch-copy-in 0.54s 0.22s ease-out both;
}
.v-launch-brand h1 {
  margin: 10px 0 5px;
  font-size: clamp(42px, 12cqw, 58px);
  font-weight: 570;
  line-height: 0.95;
  letter-spacing: -0.065em;
  animation: v-launch-copy-in 0.58s 0.28s ease-out both;
}
.v-launch-brand p {
  margin: 0;
  color: #8e8983;
  font-size: 14px;
  line-height: 1.5;
  animation: v-launch-copy-in 0.58s 0.34s ease-out both;
}
.v-launch-status {
  grid-row: 3;
  align-self: end;
  width: 100%;
  animation: v-launch-copy-in 0.5s 0.42s ease-out both;
}
.v-launch-status > span {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 11px;
  color: #938d86;
  font-size: 12px;
  line-height: 1.4;
}
.v-launch-status > span > i {
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #c3ae98;
  box-shadow: 0 0 12px #b8a18b8c;
  animation: v-launch-dot 1.25s ease-in-out infinite;
}
.v-launch-status > div {
  position: relative;
  width: 100%;
  height: 2px;
  overflow: hidden;
  background: #ffffff14;
}
.v-launch-status > div > i {
  position: absolute;
  inset: 0 auto 0 0;
  width: 38%;
  background: linear-gradient(90deg, transparent, #c3ae98, #efe2d5);
  box-shadow: 0 0 12px #b8a18b6b;
  animation: v-launch-progress 1.18s ease-in-out infinite;
}
.v-launch-screen.is-ready .v-launch-status > div > i {
  width: 100%;
  transform: none;
  animation: none;
  transition: width 0.22s ease-out;
}

.v-start-screen {
  position: relative;
  isolation: isolate;
  gap: clamp(15px, 2.7svh, 22px);
  padding: max(20px, env(safe-area-inset-top)) 22px
    max(22px, env(safe-area-inset-bottom));
  overflow: hidden;
  background:
    radial-gradient(circle at 92% 8%, #b8a18b1b, transparent 32%),
    linear-gradient(180deg, #070605 0%, #020202 48%, #050403 100%);
  animation: v-start-reveal 0.48s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.v-start-screen:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image: linear-gradient(90deg, transparent 0 21px, #ffffff0d 22px, transparent 23px);
  background-size: 56px 100%;
  mask-image: linear-gradient(#000, transparent 72%);
}
.v-start-brand {
  grid-template-columns: 42px 1fr;
  column-gap: 11px;
}
.v-start-brand > img {
  width: 42px;
  height: 42px;
  border: 1px solid #ffffff1f;
  border-radius: 13px;
  box-shadow: 0 10px 28px #0009;
}
.v-start-brand > strong {
  font-size: 19px;
}
.v-start-brand > span {
  color: #928b84;
  font-size: 10px;
  letter-spacing: 0.12em;
}
.v-start-intro > span {
  display: block;
  color: #b8a18b;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.17em;
}
.v-start-intro > h1 {
  max-width: none;
  margin: 10px 0 11px;
  white-space: nowrap;
  font-size: clamp(24px, 7.6cqw, 36px);
  font-weight: 570;
  line-height: 1.04;
  letter-spacing: -0.055em;
}
.v-start-intro > p {
  max-width: 39ch;
  color: #aaa49d;
  font-size: 16px;
  line-height: 1.48;
}
.v-start-outcome {
  position: relative;
  margin-top: 15px;
  padding: 12px 14px 12px 16px;
  display: grid;
  gap: 4px;
  border: 1px solid #b8a18b30;
  border-radius: 14px;
  background: linear-gradient(110deg, #b8a18b12, #ffffff05);
  box-shadow: inset 0 1px #ffffff08;
}
.v-start-outcome:before {
  content: "";
  position: absolute;
  width: 2px;
  top: 12px;
  bottom: 12px;
  left: -1px;
  border-radius: 999px;
  background: #c3ae98;
  box-shadow: 0 0 12px #b8a18b45;
}
.v-start-outcome > small {
  color: #8e857c;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.13em;
}
.v-start-outcome > strong {
  color: #e9e5df;
  font-size: 14px;
  font-weight: 530;
  line-height: 1.42;
}
.v-start-steps {
  gap: 8px;
}
.v-start-steps > li {
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 11px;
  padding: 11px 12px;
  border: 1px solid #ffffff14;
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff08, #ffffff02);
  box-shadow: inset 0 1px #ffffff05;
}
.v-start-steps > li > span {
  place-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  display: grid;
  color: #c3ae98;
  border: 1px solid #b8a18b35;
  border-radius: 10px;
  background: #b8a18b0d;
  font-size: 11px;
}
.v-start-steps strong {
  color: #eeece8;
  font-size: 15px;
  font-weight: 560;
  line-height: 1.35;
}
.v-start-steps p {
  margin-top: 2px;
  color: #89847e;
  font-size: 13px;
  line-height: 1.4;
}
.v-start-actions {
  gap: 9px;
}
.v-start-actions > span {
  color: #8e8881;
  text-align: center;
  font-size: 12px;
}
.v-start-screen .v-start-cta {
  min-height: 56px;
  color: #100f0e !important;
  background: linear-gradient(135deg, #d2beaa, #a58d77) !important;
  border: 1px solid #e1cfbd !important;
  border-radius: 17px;
  white-space: nowrap !important;
  font-size: 15px;
  font-weight: 650;
  box-shadow: 0 15px 34px #0009, 0 0 24px #b8a18b16 !important;
}
.v-start-screen .v-start-cta:active {
  transform: scale(0.985);
}
.v-quiz-welcome h1 {
  max-width: none;
  white-space: nowrap;
  font-size: clamp(24px, 7.6cqw, 36px);
}
.v-quiz-portrait-grid {
  grid-template-columns: minmax(0, 1fr) 142px;
  align-items: end;
  gap: 12px;
}
.v-quiz-portrait-grid > label:nth-child(2),
.v-quiz-portrait-grid > label:nth-child(3) {
  align-self: end;
}
.v-quiz-portrait-grid > label:nth-child(2) > span,
.v-quiz-portrait-grid > label:nth-child(3) > span {
  white-space: nowrap;
}

@keyframes v-launch-enter {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes v-launch-exit {
  from { opacity: 1; transform: scale(1); }
  to { opacity: 0; transform: scale(1.015); }
}
@keyframes v-launch-mark-in {
  from { opacity: 0; transform: translateY(14px) scale(0.88); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes v-launch-copy-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes v-launch-ring {
  0%, 100% { opacity: 0.35; transform: scale(0.96); }
  50% { opacity: 0.8; transform: scale(1.035); }
}
@keyframes v-launch-glow {
  0%, 100% { opacity: 0.55; transform: translate(-50%, -50%) scale(0.88); }
  50% { opacity: 1; transform: translate(-50%, -50%) scale(1.08); }
}
@keyframes v-launch-dot {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 1; }
}
@keyframes v-launch-progress {
  from { transform: translateX(-110%); }
  to { transform: translateX(365%); }
}
@keyframes v-start-reveal {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 360px) {
  .v-start-screen {
    padding-inline: 18px;
  }
  .v-start-intro > h1,
  .v-quiz-welcome h1 {
    font-size: 23px;
  }
  .v-start-steps > li {
    padding-inline: 10px;
  }
  .v-quiz-portrait-grid {
    grid-template-columns: minmax(0, 1fr) 132px;
    gap: 10px;
  }
}
@media (max-height: 720px) {
  .v-start-screen {
    gap: 12px;
    padding-top: max(14px, env(safe-area-inset-top));
  }
  .v-start-intro > h1 {
    margin-block: 7px 8px;
    font-size: clamp(24px, 7.2cqw, 32px);
  }
  .v-start-intro > p {
    font-size: 14px;
    line-height: 1.4;
  }
  .v-start-outcome {
    margin-top: 10px;
    padding-block: 9px;
  }
  .v-start-steps {
    gap: 6px;
  }
  .v-start-steps > li {
    padding-block: 8px;
  }
  .v-start-steps p {
    display: none;
  }
  .v-start-screen .v-start-cta {
    min-height: 52px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-launch-screen,
  .v-launch-mark,
  .v-launch-mark > i,
  .v-launch-glow,
  .v-launch-brand > span,
  .v-launch-brand h1,
  .v-launch-brand p,
  .v-launch-status,
  .v-launch-status > span > i,
  .v-launch-status > div > i,
  .v-start-screen {
    animation: none !important;
  }
  .v-launch-screen.is-ready {
    opacity: 0;
  }
}

/* v93: framed launch artwork, neutral onboarding and compact route results. */
.v-launch-screen {
  color: #f4f4f2;
  background:
    radial-gradient(circle at 50% 45%, #ffffff0d 0, #ffffff05 24%, transparent 48%),
    linear-gradient(180deg, #080808 0%, #010101 58%, #050505 100%);
}
.v-launch-screen:after {
  border-color: #ffffff1f;
}
.v-launch-glow {
  background: #ffffff12;
}
.v-launch-mark {
  width: min(56vw, 220px);
  height: auto;
  aspect-ratio: 1;
  margin-bottom: 24px;
  padding: 8px;
  overflow: visible;
  color: #f2f2f0;
  background: linear-gradient(145deg, #28282a, #09090a);
  border: 1px solid #ffffff3d;
  border-radius: 28px;
  box-shadow:
    0 24px 60px #000d,
    0 0 36px #ffffff10,
    inset 0 1px #ffffff1f;
}
.v-launch-mark > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 20px;
}
.v-launch-mark > i {
  inset: -8px;
  border-color: #ffffff2b;
  border-radius: 35px;
}
.v-launch-brand > span {
  color: #aaa9a7;
}
.v-launch-brand p,
.v-launch-status > span {
  color: #8f8f8c;
}
.v-launch-status > span > i {
  background: #d7d7d4;
  box-shadow: 0 0 12px #ffffff52;
}
.v-launch-status > div > i {
  background: linear-gradient(90deg, transparent, #8d8e92, #f1f1ef);
  box-shadow: 0 0 12px #ffffff35;
}

.v-start-screen {
  background:
    radial-gradient(circle at 92% 8%, #ffffff0d, transparent 32%),
    linear-gradient(180deg, #080808 0%, #020202 48%, #050505 100%);
}
.v-start-brand > span,
.v-start-intro > span,
.v-start-actions > span {
  color: #929296;
}
.v-start-intro > h1,
.v-quiz-welcome h1 {
  max-width: none !important;
  white-space: nowrap !important;
  font-size: clamp(24px, 7cqw, 32px) !important;
  letter-spacing: -0.05em !important;
}
.v-start-intro > p {
  color: #aaaab0;
}
.v-start-outcome {
  border-color: #ffffff24;
  background: linear-gradient(110deg, #ffffff0b, #ffffff03);
}
.v-start-outcome:before {
  background: #c9c9c7;
  box-shadow: 0 0 12px #ffffff2e;
}
.v-start-outcome > small {
  color: #85858a;
}
.v-start-steps > li {
  border-color: #ffffff18;
  background: linear-gradient(135deg, #ffffff09, #ffffff02);
}
.v-start-steps > li > span {
  color: #d2d2cf;
  border-color: #ffffff2d;
  background: #ffffff0a;
}
.v-start-steps p {
  color: #89898e;
}
.v-start-screen .v-start-cta {
  color: #09090a !important;
  background: linear-gradient(135deg, #f4f4f2, #c7c8ca) !important;
  border-color: #fff !important;
  box-shadow: 0 15px 34px #0009, 0 0 20px #ffffff0f !important;
}

.v-quiz-progress i.active,
.v-quiz-progress-complete i.active {
  background: linear-gradient(90deg, #77787d 0%, #bfc0c2 50%, #f1f1ef 100%) !important;
  box-shadow: 0 0 10px #ffffff21 !important;
}

.v-manual-payment-note {
  display: none !important;
}

.v-personal-route-result {
  padding-top: max(6px, env(safe-area-inset-top)) !important;
}
.v-personal-route-result > header {
  display: none !important;
}
.v-personal-route-result .v-route-tabs-shell {
  top: 0 !important;
}
.v-personal-route-result .v-route-page-tabs,
.v-personal-route-result .v-result-tabs {
  margin-top: 0 !important;
}
.v-personal-route-result > section,
.v-personal-route-result > .v-result-stage {
  padding-top: 18px !important;
}

@media (max-height: 720px) {
  .v-launch-mark {
    width: min(40svh, 180px);
    margin-bottom: 18px;
  }
}

/* v94: one-time welcome polish, compact marks and form completion guard. */
.v-start-brand {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  column-gap: 10px !important;
}
.v-start-brand > img {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
}
.v-start-intro > span {
  display: none !important;
}
.v-start-intro > h1,
.v-quiz-welcome h1 {
  width: max-content;
  max-width: 100% !important;
  white-space: nowrap !important;
  font-size: clamp(23px, 6.8cqw, 31px) !important;
}
.v-start-screen .v-start-cta {
  position: relative;
  min-height: 60px;
  overflow: hidden;
  color: #070708 !important;
  background: linear-gradient(135deg, #ffffff 0%, #e8e8e6 46%, #bfc0c3 100%) !important;
  border: 1px solid #ffffff !important;
  border-radius: 19px !important;
  box-shadow:
    0 16px 38px #000b,
    0 1px 0 #ffffff inset,
    0 -1px 0 #00000024 inset !important;
}
.v-start-screen .v-start-cta:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(105deg, transparent 20%, #ffffff80 48%, transparent 72%);
  opacity: 0.34;
  transform: translateX(-58%);
}
.v-start-screen .v-start-cta > svg {
  width: 26px;
  height: 26px;
  padding: 6px;
  color: #f6f6f4;
  background: #111214;
  border-radius: 999px;
  box-shadow: 0 4px 12px #0005;
}
.v-quiz-processing-mark {
  width: 54px !important;
  height: 54px !important;
  margin-bottom: 20px !important;
}
.v-quiz-processing h1 {
  width: max-content;
  max-width: calc(100vw - 36px) !important;
  margin-inline: auto !important;
  white-space: nowrap !important;
  font-size: clamp(22px, 6.3cqw, 28px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.045em !important;
}
.v-opportunity-hero .v-static-cta:disabled {
  opacity: 1 !important;
  cursor: default !important;
  filter: none !important;
}
.v-questionnaire :is(input, textarea):required:invalid:not(:placeholder-shown) {
  border-color: #ffffff38 !important;
}

@media (max-width: 360px) {
  .v-start-intro > h1,
  .v-quiz-welcome h1 {
    font-size: 22px !important;
  }
  .v-quiz-processing h1 {
    font-size: 21px !important;
  }
}

/* v95: clean opportunity counter. */
.v-opportunity-meta > small {
  color: #a8a8a8 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
}

/* v96: smaller launch tile, restored analysis mark and banner action. */
.v-launch-mark {
  width: min(38vw, 140px) !important;
  padding: 6px !important;
  border-radius: 22px !important;
}
.v-launch-mark > img {
  border-radius: 16px !important;
}
.v-launch-mark > i {
  inset: -6px !important;
  border-radius: 28px !important;
}
.v-quiz-processing-mark {
  width: 54px !important;
  height: 54px !important;
  margin-bottom: 20px !important;
}
.v-environment-screen .v-opportunity-hero .v-environment-banner-cta {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  margin-top: auto !important;
  padding: 12px 16px !important;
  flex: none;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 8px;
  color: #09090a !important;
  background: linear-gradient(135deg, #fff 0%, #e8e8e6 55%, #d4d5d6 100%) !important;
  border: 1px solid #fff !important;
  border-radius: 14px !important;
  white-space: nowrap !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  box-shadow:
    0 10px 24px #0008,
    0 1px 0 #fff inset !important;
}
.v-environment-screen .v-opportunity-hero .v-environment-banner-cta > svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}
.v-locked-media-fragment {
  position: relative;
}
.v-locked-media-fragment > button {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  place-self: auto;
  transform: translate(-50%, -50%);
}
.v-locked-media-fragment > button svg {
  transform: translateX(1px);
}
@media (max-height: 720px) {
  .v-launch-mark {
    width: min(26svh, 128px) !important;
    margin-bottom: 16px !important;
  }
}

/* v99: sequenced launch motion and a self-contained opportunity action. */
.v-launch-screen {
  place-items: center !important;
  grid-template: 1fr / 1fr !important;
  padding: max(24px, env(safe-area-inset-top)) 24px
    max(24px, env(safe-area-inset-bottom)) !important;
  background:
    radial-gradient(ellipse at center, #111112 0%, #050505 34%, #010101 72%)
    !important;
}
.v-launch-screen:before,
.v-launch-screen:after {
  display: none !important;
}
.v-launch-brand {
  position: relative;
  grid-row: 1 !important;
  place-self: center !important;
  isolation: isolate;
}
.v-launch-brand:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 190px;
  height: 54px;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  background: #ffffff12;
  filter: blur(24px);
  transform: translate(-50%, -50%) scale(0.72);
  animation: v-launch-wordmark-glow 1.2s 0.2s ease-out both;
}
.v-launch-brand h1 {
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.08em;
  color: #f5f5f3;
  font-size: clamp(40px, 11cqw, 52px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  perspective: 320px;
  text-shadow: none;
}
.v-launch-brand h1 > span {
  display: block;
  opacity: 0;
  color: transparent;
  background: linear-gradient(108deg, #8a8a8d 5%, #f8f8f6 45%, #fff 55%, #9a9a9d 95%);
  background-size: 240% 100%;
  background-position: 100% 50%;
  background-clip: text;
  -webkit-background-clip: text;
  filter: blur(8px);
  transform: translateY(14px) rotateX(-18deg) scale(0.94);
  transform-origin: 50% 70%;
  will-change: opacity, filter, transform, background-position;
  animation: v-launch-letter-in 0.62s cubic-bezier(0.16, 1, 0.3, 1) both;
}
.v-launch-brand h1 > span:nth-child(1) {
  animation-delay: 0.04s;
}
.v-launch-brand h1 > span:nth-child(2) {
  margin-left: 0.3em;
  animation-delay: 0.11s;
}
.v-launch-brand h1 > span:nth-child(3) {
  animation-delay: 0.18s;
}
.v-launch-brand h1 > span:nth-child(4) {
  animation-delay: 0.25s;
}
.v-launch-screen.is-ready .v-launch-brand {
  animation: v-launch-wordmark-out 0.56s cubic-bezier(0.4, 0, 0.2, 1) both;
}
@keyframes v-launch-letter-in {
  from {
    opacity: 0;
    background-position: 100% 50%;
    filter: blur(8px);
    transform: translateY(14px) rotateX(-18deg) scale(0.94);
  }
  to {
    opacity: 1;
    background-position: 18% 50%;
    filter: blur(0);
    transform: translateY(0) rotateX(0) scale(1);
  }
}
@keyframes v-launch-wordmark-glow {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.72);
  }
  60% {
    opacity: 0.72;
  }
  to {
    opacity: 0.38;
    transform: translate(-50%, -50%) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-launch-brand h1 > span {
    color: #d8c9ae !important;
    background: none !important;
    filter: none !important;
  }
}


@keyframes v-launch-wordmark-out {
  from {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
  to {
    opacity: 0;
    filter: blur(5px);
    transform: scale(1.035);
  }
}

@media (prefers-reduced-motion: reduce) {
  .v-launch-brand:after,
  .v-launch-brand h1 > span,
  .v-launch-screen.is-ready .v-launch-brand {
    animation: none !important;
  }
  .v-launch-brand h1 > span {
    opacity: 1;
    color: #f5f5f3;
    background: none;
    filter: none;
    transform: none;
  }
}

.v-environment-screen .v-opportunity-hero.v-photo-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}
.v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
  position: relative;
  z-index: 2;
  grid-column: 1 !important;
  width: min(62%, 250px) !important;
  max-width: min(62%, 250px) !important;
  min-width: 0 !important;
}
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  .v-environment-banner-cta {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  margin-top: auto !important;
  padding: 12px 16px !important;
  overflow: hidden !important;
  display: flex !important;
  flex: 0 0 auto !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  border-radius: 14px !important;
  white-space: nowrap !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  .v-environment-banner-cta
  > svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

@media (max-width: 360px) {
  .v-environment-screen .v-opportunity-hero.v-photo-hero > div:first-of-type {
    width: min(64%, 220px) !important;
    max-width: min(64%, 220px) !important;
  }
  .v-environment-screen
    .v-opportunity-hero.v-photo-hero
    .v-environment-banner-cta {
    padding-inline: 14px !important;
    font-size: 12.5px !important;
  }
}

/* v101: keep the final reference treatment above legacy cache layers. */
.v-start-intro > h1,
.v-quiz-welcome h1 {
  width: auto !important;
  max-width: 390px !important;
  margin-inline: auto !important;
  white-space: normal !important;
  font-size: clamp(30px, 8cqw, 40px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
}

.v-start-screen .v-start-cta {
  width: 100% !important;
  min-height: 56px !important;
  color: #090909 !important;
  background: #f8f8f6 !important;
  border: 1px solid #fff !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

.v-start-screen .v-start-cta:before {
  display: none !important;
}

.v-start-screen .v-start-cta > svg {
  width: 18px !important;
  height: 18px !important;
  padding: 0 !important;
  color: #101010 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.v-quiz-processing-mark {
  width: 60px !important;
  height: 60px !important;
  padding: 3px !important;
  border: 1px solid #5f564d !important;
  border-radius: 50% !important;
  background: #111 !important;
  overflow: hidden !important;
}

.v-quiz-processing-mark img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.v-environment-screen .v-opportunity-hero .v-environment-banner-cta,
.v-environment-screen
  .v-opportunity-hero.v-photo-hero
  .v-environment-banner-cta {
  min-height: 52px !important;
  padding: 14px 16px !important;
  color: #090909 !important;
  background: #f7f7f5 !important;
  border: 1px solid #fff !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

@media (max-width: 360px) {
  .v-start-intro > h1,
  .v-quiz-welcome h1 {
    font-size: 29px !important;
  }
}

.v-dossier-shift-note {
  padding: 14px !important;
  display: grid !important;
  gap: 8px !important;
  border: 1px solid #5b5047 !important;
  border-radius: 14px !important;
  background: #b8a18b12 !important;
}

.v-dossier-shift-note > div {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.v-dossier-shift-note span {
  color: #c3ae98 !important;
  font-size: 10px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.v-dossier-shift-note small,
.v-dossier-shift-note p {
  color: #aaa49c !important;
}

.v-dossier-shift-note strong {
  color: #f3f1ed !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
}

/* v102 — экранная система по финальным макетам продукта. */
:root {
  --v102-bg: #050505;
  --v102-panel: #0d0e0e;
  --v102-panel-2: #121313;
  --v102-line: #2a2b2b;
  --v102-line-warm: #5b4a3b;
  --v102-text: #f5f4f1;
  --v102-muted: #96938e;
  --v102-accent: #d6b28e;
  --v102-button: #f7f7f5;
}

.v-app,
.v-start-screen,
.v-trial-preview-screen,
.v-quiz-shell {
  color: var(--v102-text) !important;
  background: var(--v102-bg) !important;
}

.v-app button,
.v-start-screen button,
.v-trial-preview-screen button,
.v-quiz-shell button {
  font-family: inherit;
}

/* Вход и возврат с сохранённого места */
.v-start-screen.v-concept-start {
  position: relative !important;
  width: min(100%, 480px) !important;
  min-height: 100dvh !important;
  margin: 0 auto !important;
  padding: 0 18px calc(28px + env(safe-area-inset-bottom)) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  isolation: isolate;
}

.v-concept-start:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  background:
    radial-gradient(circle at 72% 20%, rgba(202, 160, 116, 0.13), transparent 30%),
    linear-gradient(180deg, #060606, #030303 72%);
}

.v-start-hero-art {
  position: absolute !important;
  inset: 0 0 auto !important;
  z-index: -2 !important;
  width: 100% !important;
  height: 48dvh !important;
  min-height: 330px !important;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.02) 28%, rgba(5, 5, 5, 0.45) 70%, #050505 100%),
    url('/media/v-launch-frame.jpg') center 42% / cover no-repeat !important;
  filter: contrast(1.08) brightness(0.82);
}

.v-concept-start.is-returning .v-start-hero-art {
  height: 38dvh !important;
  min-height: 280px !important;
  opacity: 0.62;
  transform: scale(1.08);
}

.v-start-back-mark {
  position: absolute;
  top: calc(24px + env(safe-area-inset-top));
  left: 20px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(214, 178, 142, 0.65);
  border-radius: 50%;
  color: #fff;
  font-size: 27px;
  line-height: 1;
}

.v-start-returning-brand {
  padding-top: calc(30px + env(safe-area-inset-top));
  display: grid !important;
  justify-items: center !important;
  gap: 6px !important;
}

.v-start-returning-brand span {
  color: var(--v102-accent);
  font-family: Georgia, serif;
  font-size: 46px;
  line-height: 0.9;
}

.v-start-returning-brand small {
  color: #beb8b0;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.v-concept-start .v-start-intro {
  width: 100% !important;
  margin: auto 0 0 !important;
  padding: 0 8px !important;
  text-align: left !important;
}

.v-concept-start:not(.is-returning) .v-start-intro {
  padding-top: min(48dvh, 430px) !important;
}

.v-concept-start.is-returning .v-start-intro {
  margin-top: 25dvh !important;
}

.v-concept-start .v-start-intro > small {
  display: block;
  margin-bottom: 8px;
  color: #bba58f;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.v-concept-start .v-start-intro > h1 {
  max-width: 410px !important;
  margin: 0 !important;
  color: var(--v102-text) !important;
  font-size: clamp(34px, 10vw, 46px) !important;
  font-weight: 700 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.055em !important;
  text-align: left !important;
}

.v-concept-start .v-start-intro > p {
  max-width: 390px !important;
  margin: 12px 0 0 !important;
  color: #aaa6a0 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
  text-align: left !important;
}

.v-concept-start .v-start-steps {
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 6px !important;
  list-style: none !important;
}

.v-concept-start .v-start-steps > li {
  min-height: 58px !important;
  padding: 9px 12px !important;
  display: grid !important;
  grid-template-columns: 34px 1fr !important;
  align-items: center !important;
  gap: 10px !important;
  border: 1px solid #34302c !important;
  border-radius: 10px !important;
  background: linear-gradient(100deg, rgba(255,255,255,.035), rgba(255,255,255,.01)) !important;
}

.v-concept-start .v-start-steps > li > span {
  width: 32px !important;
  height: 32px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--v102-accent) !important;
  border: 1px solid var(--v102-line-warm) !important;
  border-radius: 50% !important;
  font-size: 16px !important;
}

.v-concept-start .v-start-steps strong,
.v-concept-start .v-start-steps p {
  margin: 0 !important;
  text-align: left !important;
}

.v-concept-start .v-start-steps strong {
  color: #eceae6 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

.v-concept-start .v-start-steps p {
  margin-top: 2px !important;
  color: #88837d !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}

.v-concept-start .v-start-actions {
  width: 100% !important;
  margin: 14px 0 0 !important;
  display: grid !important;
  gap: 10px !important;
}

.v-concept-start .v-start-cta,
.v-quiz-shell .v-quiz-cta,
.v-quiz-shell .v-quiz-question-next {
  width: 100% !important;
  min-height: 54px !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  color: #0b0b0b !important;
  background: var(--v102-button) !important;
  border: 1px solid #fff !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 750 !important;
}

.v-start-example {
  min-height: 26px;
  color: #928a82;
  background: transparent;
  border: 0;
  font-size: 12px;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.v-start-resume-card {
  margin: 18px 8px 0;
  padding: 12px;
  display: grid;
  gap: 10px;
  border: 1px solid var(--v102-line-warm);
  border-radius: 12px;
  background: rgba(13,14,14,.94);
}

.v-start-resume-done,
.v-start-resume-next {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
}

.v-start-resume-done {
  padding-bottom: 10px;
  border-bottom: 1px solid #272727;
}

.v-start-resume-done > i {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  color: #151515;
  background: #dcc3a8;
  border-radius: 50%;
}

.v-start-resume-done span,
.v-start-resume-next {
  min-width: 0;
}

.v-start-resume-card strong,
.v-start-resume-card small,
.v-start-resume-card p {
  display: block;
  margin: 0;
}

.v-start-resume-card strong { font-size: 15px; }
.v-start-resume-card small { color: #9c958d; font-size: 11px; }
.v-start-resume-next { grid-template-columns: 1fr; }
.v-start-resume-next > small { color: var(--v102-accent); letter-spacing: .09em; }
.v-start-resume-next > strong { font-size: 20px; line-height: 1.05; }
.v-start-resume-next > p { color: #9d9891; font-size: 13px; line-height: 1.35; }

/* Диагностика: центрированная загрузка и прямые белые CTA */
.v-quiz-shell .v-quiz-processing {
  min-height: calc(100dvh - 90px) !important;
  display: grid !important;
  place-content: center !important;
  justify-items: center !important;
  text-align: center !important;
}

.v-quiz-processing-mark {
  margin-inline: auto !important;
}

.v-quiz-shell .v-quiz-question-next[disabled] {
  opacity: .35 !important;
}

/* Результат диагностики и бесплатный старт */
.v-trial-preview-screen.v-personal-route-result {
  width: min(100%, 480px) !important;
  min-height: 100dvh !important;
  margin: 0 auto !important;
  padding: calc(18px + env(safe-area-inset-top)) 16px 28px !important;
}

.v-trial-preview-screen > header {
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
}

.v-trial-preview-screen > header span {
  color: #f1efeb !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.v-route-tabs-shell,
.v-route-tabs-list {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.v-route-tabs-list {
  gap: 0 !important;
}

.v-route-tabs-list button {
  color: #73716d !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 12px !important;
}

.v-route-tabs-list button.active {
  color: #f3f1ed !important;
}

.v-route-tab-progress {
  height: 1px !important;
  background: #2b2b2b !important;
}

.v-route-tab-progress > i {
  background: var(--v102-accent) !important;
}

.v-route-page-inner {
  padding: 22px 0 0 !important;
}

.v-route-result-kicker,
.v-route-page-heading small {
  color: #bfa58e !important;
  letter-spacing: .1em !important;
}

.v-route-page-inner > h1,
.v-route-page-heading h1 {
  color: #f5f4f1 !important;
  font-size: clamp(32px, 9vw, 44px) !important;
  line-height: .98 !important;
  letter-spacing: -.05em !important;
}

.v-route-result-summary,
.v-route-page-heading p {
  color: #9a9690 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.v-current-configuration,
.v-current-configuration .v-configuration-card {
  background: var(--v102-panel) !important;
  border: 1px solid #34302c !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

.v-current-configuration > header h2 {
  font-size: 16px !important;
}

.v-configuration-card strong {
  line-height: 1.25 !important;
}

.v-route-page-next {
  min-height: 52px !important;
  color: #0a0a0a !important;
  background: var(--v102-button) !important;
  border: 0 !important;
  border-radius: 12px !important;
  font-size: 13px !important;
  font-weight: 750 !important;
}

/* V-канал */
.v-channel-home-hero {
  position: relative;
  min-height: 230px;
  padding: 26px 18px;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(110px, .9fr);
  align-items: end;
  gap: 8px;
  overflow: hidden;
  border: 1px solid #3b342e;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(7,7,7,.98) 10%, rgba(7,7,7,.72) 58%, rgba(7,7,7,.12)),
    url('/media/v-route-mindset-v117.webp') 70% center / cover no-repeat;
}

.v-channel-home-hero > div:first-child {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.v-channel-home-hero small,
.v-channel-home-hero span {
  display: block;
  color: #a39d96;
  font-size: 11px;
}

.v-channel-home-hero small {
  margin-bottom: 10px;
  color: var(--v102-accent);
  font-weight: 700;
  letter-spacing: .09em;
}

.v-channel-home-hero h2 {
  margin: 0 0 8px;
  color: #f4f2ee;
  font-size: clamp(29px, 8vw, 38px);
  line-height: .98;
  letter-spacing: -.045em;
}

.v-channel-home-hero button {
  min-height: 38px;
  margin-top: 16px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #f2efe9;
  background: rgba(16,16,16,.86);
  border: 1px solid #8a6d53;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 700;
}

.v-channel-filter-tabs {
  margin: 12px 0 22px;
  padding: 4px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4px;
  border: 1px solid #282828;
  border-radius: 12px;
  background: #0b0b0b;
}

.v-channel-filter-tabs button {
  min-height: 38px;
  color: #8b8883;
  background: transparent;
  border: 0;
  border-radius: 9px;
  font-size: 11px;
}

.v-channel-filter-tabs button.active {
  color: #f1eee9;
  background: #171511;
  box-shadow: inset 0 0 0 1px #5a493a;
}

.v-starter-pack {
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #2e2e2e !important;
  border-radius: 14px !important;
  background: #0a0b0b !important;
}

.v-starter-pack > header {
  min-height: 175px;
  padding: 24px 18px !important;
  align-content: end;
  background:
    linear-gradient(90deg, rgba(4,4,4,.97), rgba(4,4,4,.62) 64%, rgba(4,4,4,.18)),
    url('/media/vay-personal-brand.jpg') 72% center / cover no-repeat !important;
}

.v-starter-pack > header small {
  color: var(--v102-accent) !important;
  letter-spacing: .09em !important;
}

.v-starter-pack > header strong {
  color: #f3f2ef !important;
  font-size: 30px !important;
  line-height: 1 !important;
  letter-spacing: -.04em !important;
}

.v-starter-pack > header p {
  max-width: 260px;
  color: #a6a29b !important;
  font-size: 12px !important;
}

.v-starter-pack > div {
  padding: 10px !important;
  gap: 0 !important;
}

.v-starter-pack > div > button {
  min-height: 74px !important;
  padding: 10px 4px !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  gap: 10px !important;
  border-width: 0 0 1px !important;
  border-radius: 0 !important;
  border-color: #252525 !important;
  background: transparent !important;
}

.v-starter-pack > div > button:last-child { border-bottom: 0 !important; }
.v-starter-pack > div > button > i { border-color: #57493d !important; background: #171513 !important; }
.v-starter-pack > div > button strong { color: #eceae6 !important; font-size: 13px !important; }
.v-starter-pack > div > button small { color: #88847f !important; font-size: 10px !important; }
.v-starter-pack > div > button > em { color: #d8c2ab !important; font-size: 10px !important; }

.v-starter-video-rail > header strong { color: #f2f0ed !important; }
.v-starter-video-rail > div > :is(button, article) { border-radius: 10px !important; }

/* Материал, видеофрагмент и статья */
.v-reader-page .v-full-page-intro,
.v-purchase-page .v-purchase-intro {
  padding: 22px 2px 12px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.v-reader-page .v-full-page-intro h2,
.v-purchase-page .v-purchase-intro h1 {
  color: #f5f3f0 !important;
  font-size: clamp(30px, 8.4vw, 42px) !important;
  line-height: .98 !important;
  letter-spacing: -.05em !important;
}

.v-reader-page-content {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.v-reader-video,
.v-reader-video-wide,
.v-access-preview-video video,
.v-access-route-video {
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid #3c342e !important;
  border-radius: 10px !important;
  background: #080808 !important;
}

.v-reader-lead {
  margin: 14px 2px !important;
  color: #9c9892 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.v-reader-seen {
  margin: 12px 0 !important;
  padding: 14px !important;
  display: grid !important;
  grid-template-columns: 34px 1fr !important;
  gap: 10px !important;
  border: 1px solid #514338 !important;
  border-radius: 10px !important;
  background: #15120f !important;
}

.v-reader-seen > svg { color: var(--v102-accent); }
.v-reader-seen strong,
.v-reader-seen small { display: block; }
.v-reader-seen strong { color: #e8dfd6; font-size: 14px; }
.v-reader-seen small { margin-top: 3px; color: #9b9288; font-size: 11px; }

.v-reader-lock {
  padding: 16px !important;
  border: 1px solid #3d3d3d !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #111212, #0b0b0b) !important;
}

.v-reader-lock .v-primary,
.v-purchase-page .v-purchase-cta,
.v-map-workspace .v-map-continue {
  width: 100% !important;
  min-height: 52px !important;
  color: #111 !important;
  background: linear-gradient(90deg, #d6b996, #ead2b8) !important;
  border: 0 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-weight: 750 !important;
}

.v-locked-preview-card {
  overflow: hidden !important;
  border: 1px solid #3b342e !important;
  border-radius: 12px !important;
  background: #0b0b0b !important;
}

.v-locked-preview-card > header {
  border-bottom: 1px solid #2b2b2b !important;
}

.v-locked-article-hero {
  min-height: 210px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.05), #0b0b0b 100%),
    url('/media/vay-personal-brand.jpg') center / cover no-repeat;
}

.v-locked-fragment-copy {
  padding: 18px !important;
}

.v-locked-fragment-copy > span {
  color: var(--v102-accent) !important;
  font-size: 10px !important;
  letter-spacing: .09em !important;
}

.v-locked-fragment-copy h2 {
  color: #f4f2ee !important;
  font-size: 28px !important;
  line-height: 1 !important;
  letter-spacing: -.04em !important;
}

.v-locked-fragment-copy > p { color: #9d9993 !important; }
.v-locked-article-takeaways article { border-radius: 9px !important; }
.v-locked-article-takeaways article > i { color: var(--v102-accent) !important; }
.v-locked-article-takeaways article > i svg { width: 17px; height: 17px; }

/* Карта первых семи дней */
.v-map-workspace {
  padding-bottom: 24px !important;
}

.v-map-cover {
  position: relative;
  min-height: 250px;
  padding: 22px 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  border: 1px solid #3d332b;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(3,3,3,.98), rgba(3,3,3,.62) 62%, rgba(3,3,3,.16)),
    url('/media/vay-mindset-confidence.jpg') 64% center / cover no-repeat;
}

.v-map-cover > span,
.v-map-cover > small {
  width: max-content;
  color: #b9a28b;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
}

.v-map-cover > small {
  margin-top: 6px;
  padding: 5px 9px;
  border: 1px solid #6a5542;
  border-radius: 999px;
}

.v-map-cover h1 {
  max-width: 280px;
  margin: 14px 0 8px;
  color: #f5f3ef;
  font-size: 38px;
  line-height: .92;
  letter-spacing: -.055em;
}

.v-map-cover p {
  max-width: 260px;
  margin: 0;
  color: #aaa59f;
  font-size: 12px;
  line-height: 1.35;
}

.v-map-workspace-canvas {
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
}

.v-result-route-map.v-video-route-map {
  margin-top: 14px !important;
  padding: 18px 14px !important;
  border: 1px solid #2b2c2c !important;
  border-radius: 14px !important;
  background: #090a0a !important;
  box-shadow: none !important;
}

.v-result-route-map > header {
  padding: 0 0 14px !important;
  border-bottom: 1px solid #262626 !important;
}

.v-result-route-map > header > small {
  color: var(--v102-accent) !important;
  font-size: 10px !important;
  letter-spacing: .09em !important;
}

.v-result-route-map > header > strong {
  color: #f4f2ef !important;
  font-size: 27px !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

.v-result-route-map > header > p {
  color: #8f8b85 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.v-route-map-context {
  padding: 12px 0 4px !important;
}

.v-route-map-context article {
  padding: 10px 12px !important;
  border: 1px solid #302c29 !important;
  border-radius: 9px !important;
  background: #11100f !important;
}

.v-result-route-track.v-video-route-days {
  position: relative;
  padding: 4px 0 !important;
  display: grid !important;
  gap: 0 !important;
}

.v-result-route-track.v-video-route-days:before {
  content: "";
  position: absolute;
  top: 32px;
  bottom: 32px;
  left: 21px;
  width: 1px;
  background: #453b33;
}

.v-video-route-days > button {
  position: relative;
  z-index: 1;
  min-height: 74px !important;
  padding: 10px 0 !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) 24px !important;
  gap: 10px !important;
  text-align: left !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #202121 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.v-video-route-days > button:last-child { border-bottom: 0 !important; }
.v-video-route-days .v-video-route-day {
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-content: center !important;
  gap: 0 !important;
  color: #d8c0a8 !important;
  background: #0b0b0b !important;
  border: 1px solid #67513f !important;
  border-radius: 50% !important;
}

.v-video-route-days .v-video-route-day small { font-size: 7px !important; }
.v-video-route-days .v-video-route-day strong { font-size: 13px !important; }
.v-video-route-days .v-video-route-icon { display: none !important; }
.v-video-route-days button > div { min-width: 0 !important; }
.v-video-route-days button > div > small { color: #77736e !important; font-size: 9px !important; }
.v-video-route-days button > div > strong { color: #eceae6 !important; font-size: 14px !important; line-height: 1.2 !important; }
.v-video-route-days button > div > p { margin: 3px 0 !important; color: #817d78 !important; font-size: 10px !important; line-height: 1.3 !important; }
.v-video-route-days button > div > em { color: #bda48c !important; font-size: 9px !important; font-style: normal !important; }
.v-video-route-days button.locked { opacity: .74 !important; }
.v-video-route-days button.current > .v-video-route-day { color: #151515 !important; background: #dcc2a6 !important; }
.v-video-route-days button.completed > .v-video-route-day { color: #151515 !important; background: #f0eee9 !important; }

.v-route-map-result {
  margin-top: 14px;
  padding: 14px;
  display: grid;
  grid-template-columns: 38px 1fr;
  align-items: center;
  gap: 11px;
  border: 1px solid #6c5542;
  border-radius: 10px;
  background: linear-gradient(110deg, #17130f, #0d0d0d);
}

.v-route-map-result > svg { color: var(--v102-accent); }
.v-route-map-result small,
.v-route-map-result strong { display: block; }
.v-route-map-result small { color: #8c8177; font-size: 9px; letter-spacing: .08em; }
.v-route-map-result strong { margin-top: 3px; color: #f0ece7; font-size: 14px; line-height: 1.25; }

.v-result-route-map > footer {
  padding: 12px 0 0 !important;
  border-top: 0 !important;
}

.v-result-route-map > footer strong { color: #817c76 !important; font-size: 10px !important; font-weight: 500 !important; }

.v-map-workspace-guide {
  margin-top: 12px !important;
  padding: 14px !important;
  border: 1px solid #353535 !important;
  border-radius: 10px !important;
  background: #0e0f0f !important;
}

.v-map-workspace-guide > span { color: var(--v102-accent) !important; background: #17130f !important; }
.v-map-workspace-guide strong { color: #f0efeb !important; }
.v-map-workspace-guide p { color: #8c8984 !important; }

/* Итоги недели */
.v-weekly-review {
  margin-top: 14px !important;
  padding: 20px 14px !important;
  border: 1px solid #34302c !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at 82% 15%, rgba(198,154,110,.14), transparent 32%),
    #090a0a !important;
}

.v-weekly-review > header small { color: #b79d84 !important; letter-spacing: .09em !important; }
.v-weekly-review > header strong { margin-top: 8px !important; color: #f5f3ef !important; font-size: 29px !important; line-height: .98 !important; letter-spacing: -.045em !important; }
.v-weekly-review-metrics { margin-top: 18px !important; border-block: 1px solid #2d2d2d !important; }
.v-weekly-review-metrics article { padding: 14px 6px !important; background: transparent !important; border: 0 !important; border-right: 1px solid #2d2d2d !important; border-radius: 0 !important; }
.v-weekly-review-metrics article:last-child { border-right: 0 !important; }
.v-weekly-review-metrics strong { color: #f2e8dd !important; font-size: 26px !important; }
.v-weekly-review-metrics small { color: #817e79 !important; font-size: 9px !important; }

.v-weekly-review-insights {
  display: grid;
  gap: 0;
}

.v-weekly-review-insights article {
  padding: 14px 0;
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 10px;
  border-bottom: 1px solid #292929;
}

.v-weekly-review-insights article:last-child { border-bottom: 0; }
.v-weekly-review-insights article > i { width: 32px; height: 32px; display: grid; place-items: center; color: var(--v102-accent); border: 1px solid #574737; border-radius: 50%; font-style: normal; }
.v-weekly-review-insights small,
.v-weekly-review-insights strong { display: block; }
.v-weekly-review-insights small { color: #988a7d; font-size: 9px; letter-spacing: .08em; }
.v-weekly-review-insights strong { margin-top: 4px; color: #eae7e2; font-size: 13px; line-height: 1.35; }

/* Экран подписки */
.v-purchase-page.v-concept-purchase {
  position: relative;
  padding-top: 225px !important;
  overflow: hidden;
}

.v-purchase-page.v-concept-purchase:before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 275px;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), #050505 96%),
    url('/media/vay-personal-brand.jpg') center 36% / cover no-repeat;
  filter: brightness(.66) contrast(1.1);
}

.v-concept-purchase > * { position: relative; z-index: 1; }
.v-concept-purchase .v-purchase-intro { margin-top: -42px !important; }
.v-concept-purchase .v-purchase-intro > div { display: flex !important; align-items: center !important; gap: 8px !important; }
.v-concept-purchase .v-purchase-intro > div > span:last-child { color: #d4b99d !important; font-size: 10px !important; letter-spacing: .09em !important; }
.v-concept-purchase .v-purchase-intro p { color: #aaa69f !important; }
.v-purchase-overview { padding: 0 !important; background: transparent !important; border: 0 !important; }
.v-purchase-overview .v-access-preview-video { display: none !important; }
.v-access-feature-rail { border-color: #34302c !important; background: #0c0d0d !important; }
.v-purchase-offer { padding: 14px !important; border: 1px solid #5a4737 !important; border-radius: 12px !important; background: linear-gradient(180deg, #10100f, #090909) !important; }
.v-lifetime-tariff { border-bottom: 1px solid #302c29 !important; }
.v-lifetime-tariff strong { color: #f3f1ed !important; }
.v-lifetime-tariff > span > strong { font-size: 30px !important; }
.v-purchase-benefits p { border-bottom: 1px solid #282828 !important; }
.v-purchase-benefits p:last-child { border-bottom: 0 !important; }
.v-purchase-benefits p > svg { color: var(--v102-accent) !important; }
.v-manual-payment-note { background: #0b0c0c !important; border-color: #303030 !important; border-radius: 10px !important; }

/* Среда V */
.v-environment-concept {
  display: grid !important;
  gap: 14px !important;
}

.v-environment-concept-hero {
  position: relative;
  min-height: 265px;
  padding: 22px 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  border: 1px solid #3a322c;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(4,4,4,.96), rgba(4,4,4,.48) 68%, rgba(4,4,4,.12)),
    url('/media/vay-personal-brand.jpg') 70% center / cover no-repeat;
}

.v-environment-concept-hero > div { max-width: 270px; }
.v-environment-concept-hero small { color: var(--v102-accent); font-size: 10px; font-weight: 700; letter-spacing: .09em; }
.v-environment-concept-hero h2 { margin: 14px 0 8px; color: #f5f3ef; font-size: 31px; line-height: .98; letter-spacing: -.045em; }
.v-environment-concept-hero p { margin: 0; color: #a7a29c; font-size: 12px; line-height: 1.38; }
.v-environment-status { width: max-content; padding: 6px 9px; display: inline-flex; align-items: center; gap: 6px; color: #d8c0a7; border: 1px solid #6a5542; border-radius: 999px; background: rgba(7,7,7,.78); font-size: 10px; }
.v-environment-status svg { width: 12px; height: 12px; }

.v-environment-today {
  padding: 14px;
  border: 1px solid #2d2d2d;
  border-radius: 12px;
  background: #0b0c0c;
}

.v-environment-today header { margin-bottom: 8px; }
.v-environment-today header small { color: #a98f78; font-size: 9px; letter-spacing: .09em; }
.v-environment-today header h3 { margin: 4px 0 0; color: #eceae6; font-size: 18px; }
.v-environment-today > button {
  width: 100%;
  min-height: 68px;
  padding: 10px 0;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 22px;
  align-items: center;
  gap: 10px;
  text-align: left;
  color: inherit;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #282828;
}
.v-environment-today > button:last-child { border-bottom: 0; }
.v-environment-today > button > i { width: 42px; height: 42px; display: grid; place-items: center; color: #d6b799; border: 1px solid #4d4035; border-radius: 8px; background: #161412 center / cover no-repeat; }
.v-environment-today > button > i.has-photo { color: transparent; }
.v-environment-today > button strong,
.v-environment-today > button small { display: block; }
.v-environment-today > button strong { color: #eceae6; font-size: 13px; line-height: 1.25; }
.v-environment-today > button small { margin-top: 3px; color: #89857f; font-size: 10px; }
.v-environment-today > button > svg { color: #af9a85; }

.v-environment-question {
  min-height: 185px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  border: 1px solid #3f352d;
  border-radius: 12px;
  background:
    radial-gradient(circle at 85% 20%, rgba(190,145,103,.16), transparent 34%),
    linear-gradient(135deg, #15110e, #080909 70%);
}
.v-environment-question small { color: #a98e75; font-size: 9px; letter-spacing: .09em; }
.v-environment-question strong { max-width: 310px; margin-top: 8px; color: #f0ede8; font-size: 22px; line-height: 1.05; }
.v-environment-question p { margin: 7px 0 14px; color: #8f8982; font-size: 11px; line-height: 1.35; }
.v-environment-question button { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 10px; color: #111; background: linear-gradient(90deg,#d5b593,#ead1b5); border: 0; border-radius: 9px; font-size: 12px; font-weight: 750; }
.v-environment-how { min-height: 34px; display: flex; align-items: center; justify-content: center; gap: 8px; color: #948a80; background: transparent; border: 0; font-size: 11px; }
.v-environment-locked .v-environment-concept-hero,
.v-environment-locked .v-environment-today,
.v-environment-locked .v-environment-question { filter: saturate(.72); }

/* Единая нижняя навигация */
.v-bottom-nav {
  border-top: 1px solid #242424 !important;
  background: rgba(4,4,4,.96) !important;
  backdrop-filter: blur(18px) !important;
}

.v-bottom-nav button {
  color: #74716d !important;
}

.v-bottom-nav button.active {
  color: #eee8e1 !important;
}

.v-bottom-nav button.active > i {
  background: var(--v102-accent) !important;
}

@media (max-width: 380px) {
  .v-concept-start .v-start-intro > h1 { font-size: 32px !important; }
  .v-concept-start .v-start-steps > li { min-height: 54px !important; }
  .v-map-cover { min-height: 225px; }
  .v-map-cover h1 { font-size: 34px; }
  .v-channel-home-hero { min-height: 210px; }
  .v-environment-concept-hero { min-height: 235px; }
}

/* V103 — бесплатная подборка и редакционное превью по финальным макетам */
.v-app:has(.v-library-page.is-starter-mode) .v-header,
.v-app:has(.v-library-page.is-starter-mode) .v-bottom-nav,
.v-app:has(.v-concept-purchase.has-article-preview) .v-header,
.v-app:has(.v-concept-purchase.has-article-preview) .v-bottom-nav {
  display: none !important;
}

.v-app:has(.v-library-page.is-starter-mode) .v-main,
.v-app:has(.v-concept-purchase.has-article-preview) .v-main {
  padding: 0 !important;
}

.v-library-page.is-starter-mode {
  min-height: 100svh;
  gap: 0 !important;
  background: #030303;
}

.v-library-page.is-starter-mode > :not(.v-starter-pack) {
  display: none !important;
}

.v-library-page.is-starter-mode .v-starter-pack {
  position: relative;
  min-height: 100svh;
  padding: 0 0 max(22px, env(safe-area-inset-bottom)) !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #030303 !important;
}

.v-starter-pack .v-starter-topbar {
  position: absolute;
  inset: max(12px, env(safe-area-inset-top)) 12px auto;
  z-index: 4;
  min-height: 54px;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 42px;
  align-items: center;
  gap: 8px !important;
}

.v-starter-topbar > button,
.v-article-preview-topbar > button {
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  color: #f1efeb;
  background: rgba(7, 7, 7, .68);
  border: 1px solid rgba(221, 193, 162, .48);
  border-radius: 50%;
}

.v-starter-topbar > button:last-child { justify-self: end; }
.v-starter-topbar > button svg,
.v-article-preview-topbar > button svg { width: 18px; height: 18px; }

.v-starter-topbar > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
}

.v-starter-topbar > div strong {
  color: #f5f3ef;
  font-size: 16px;
  line-height: 1.1;
}

.v-starter-topbar > div small {
  max-width: 190px;
  padding: 4px 10px;
  overflow: hidden;
  color: #d5b99d;
  background: rgba(8, 8, 8, .74);
  border: 1px solid #755d47;
  border-radius: 999px;
  font-size: 9px;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.v-library-page.is-starter-mode .v-starter-pack > header {
  min-height: 340px;
  padding: 164px 20px 34px !important;
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.16) 45%, #030303 100%),
    linear-gradient(90deg, rgba(2,2,2,.96) 0%, rgba(2,2,2,.66) 49%, rgba(2,2,2,.12) 100%),
    url('/media/vay-personal-brand.jpg') 70% 34% / cover no-repeat !important;
}

.v-library-page.is-starter-mode .v-starter-pack > header > span {
  margin-bottom: 10px;
  color: #bda48c;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .22em;
}

.v-library-page.is-starter-mode .v-starter-pack > header > strong {
  display: block;
  color: #f7f5f1 !important;
  font-size: clamp(33px, 10vw, 46px) !important;
  font-weight: 760;
  line-height: .91 !important;
  letter-spacing: -.055em !important;
}

.v-library-page.is-starter-mode .v-starter-pack > header > p {
  max-width: 250px;
  margin: 14px 0 0 !important;
  color: #aaa59e !important;
  font-size: 12px !important;
  line-height: 1.35;
}

.v-starter-pack > .v-starter-materials {
  margin: -12px 12px 0;
  padding: 6px 10px !important;
  display: grid;
  gap: 0 !important;
  border: 1px solid #34302d;
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(17,18,18,.98), rgba(9,10,10,.98));
  box-shadow: 0 18px 38px rgba(0,0,0,.36);
}

.v-starter-pack > .v-starter-materials > button {
  min-height: 70px !important;
  padding: 9px 0 !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) auto !important;
  align-items: center;
  gap: 11px !important;
  color: inherit;
  text-align: left;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #272727 !important;
  border-radius: 0 !important;
}

.v-starter-pack > .v-starter-materials > button:last-child { border-bottom: 0 !important; }
.v-starter-pack > .v-starter-materials > button > i {
  width: 52px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #e0c2a3;
  background: radial-gradient(circle at 55% 30%, #2b231d, #111211 70%);
  border: 1px solid #4f4135 !important;
  border-radius: 8px !important;
}
.v-starter-pack > .v-starter-materials > button > i svg { width: 21px; height: 21px; }
.v-starter-pack > .v-starter-materials > button > span { min-width: 0; }
.v-starter-pack > .v-starter-materials > button small,
.v-starter-pack > .v-starter-materials > button strong { display: block; }
.v-starter-pack > .v-starter-materials > button small {
  margin-bottom: 4px;
  color: #87837e !important;
  font-size: 9px !important;
  line-height: 1.1;
}
.v-starter-pack > .v-starter-materials > button strong {
  color: #f1efeb !important;
  font-size: 13px !important;
  line-height: 1.18;
}
.v-starter-pack > .v-starter-materials > button > em {
  min-height: 25px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: #202020 !important;
  background: #e1c8ae;
  border-radius: 999px;
  font-size: 8px !important;
  font-style: normal;
  font-weight: 700;
  white-space: nowrap;
}
.v-starter-pack > .v-starter-materials > button.is-locked > em {
  color: #c8c2bb !important;
  background: #141414;
  border: 1px solid #45403c;
}
.v-starter-pack > .v-starter-materials > button > em svg { width: 10px; height: 10px; }

.v-starter-primary {
  width: calc(100% - 24px);
  min-height: 52px;
  margin: 12px 12px 0;
  padding: 0 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #111;
  background: #f3f2ef;
  border: 0;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 780;
}
.v-starter-primary svg { width: 17px; height: 17px; }

.v-starter-flow {
  position: relative;
  margin: 16px 24px 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.v-starter-flow:before {
  content: "";
  position: absolute;
  top: 17px;
  right: 16.66%;
  left: 16.66%;
  height: 1px;
  background: #50483f;
}
.v-starter-flow button {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: #77736e;
  background: transparent;
  border: 0;
  font-size: 9px;
}
.v-starter-flow button > i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #9c8a78;
  background: #090909;
  border: 1px solid #50473e;
  border-radius: 50%;
}
.v-starter-flow button.active { color: #e9e3dc; }
.v-starter-flow button.active > i { color: #17120e; background: #d9bea2; border-color: #d9bea2; }
.v-starter-flow svg { width: 15px; height: 15px; }

/* Полноэкранное превью статьи */
.v-purchase-page.v-concept-purchase.has-article-preview {
  min-height: 100svh;
  padding: 0 0 max(22px, env(safe-area-inset-bottom)) !important;
  gap: 0 !important;
  overflow: hidden;
  background: #030303;
}
.v-purchase-page.v-concept-purchase.has-article-preview:before { display: none !important; }
.v-concept-purchase.has-article-preview .v-article-preview {
  width: 100%;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #030303 !important;
}
.v-article-preview .v-locked-article-hero {
  position: relative;
  min-height: 315px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.06) 55%, #030303 100%),
    url('/media/vay-personal-brand.jpg') center 26% / cover no-repeat;
}
.v-article-preview-topbar {
  position: absolute;
  inset: max(13px, env(safe-area-inset-top)) 12px auto;
  display: grid;
  grid-template-columns: 40px 1fr 40px;
  align-items: center;
}
.v-article-preview-topbar strong {
  justify-self: center;
  color: #f3f1ed;
  font-size: 17px;
}
.v-article-preview .v-locked-fragment-copy {
  position: relative;
  z-index: 2;
  margin-top: -18px;
  padding: 0 12px 18px !important;
}
.v-article-free-pill {
  width: max-content;
  min-height: 25px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #d7c0a8 !important;
  background: #11100f;
  border: 1px solid #5e4c3e;
  border-radius: 999px;
  font-size: 8px !important;
  letter-spacing: 0 !important;
  text-transform: none;
}
.v-article-free-pill svg { width: 12px; height: 12px; }
.v-article-preview .v-locked-fragment-copy h2 {
  max-width: 360px;
  margin: 13px 0 5px;
  color: #f7f5f1 !important;
  font-size: clamp(31px, 8.5vw, 41px) !important;
  line-height: .94 !important;
  letter-spacing: -.052em !important;
}
.v-article-route-label {
  display: block;
  color: #c2a486;
  font-size: 10px;
  font-weight: 700;
}
.v-article-preview .v-locked-fragment-copy > p {
  max-width: 350px;
  margin: 9px 0 14px;
  color: #a6a19b !important;
  font-size: 12px;
  line-height: 1.38;
}
.v-article-insight {
  min-height: 48px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 9px;
  border: 1px solid #4a3e34;
  border-radius: 9px;
  background: linear-gradient(90deg, #17130f, #101010);
}
.v-article-insight > i {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  color: #d5b797;
  border-right: 1px solid #594a3c;
}
.v-article-insight svg { width: 15px; height: 15px; }
.v-article-insight strong { color: #e7dfd6; font-size: 12px; }

.v-article-locked-body {
  margin-top: 12px;
  padding: 13px;
  border: 1px solid #353535;
  border-radius: 11px;
  background: linear-gradient(180deg, #111212, #090a0a);
}
.v-article-locked-body > header {
  padding-bottom: 9px;
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 9px;
  border-bottom: 1px solid #292929;
}
.v-article-locked-body > header > svg { color: #d5b796; }
.v-article-locked-body > header strong,
.v-article-locked-body > header small { display: block; }
.v-article-locked-body > header strong { color: #efede9; font-size: 14px; }
.v-article-locked-body > header small { margin-top: 2px; color: #85817c; font-size: 9px; }
.v-article-preview .v-locked-article-takeaways { display: grid; gap: 0; }
.v-article-preview .v-locked-article-takeaways article {
  min-height: 57px;
  padding: 9px 0;
  display: grid;
  grid-template-columns: 36px 1fr;
  align-items: center;
  gap: 9px;
  border: 0 !important;
  border-bottom: 1px solid #272727 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.v-article-preview .v-locked-article-takeaways article:last-child { border-bottom: 0 !important; }
.v-article-preview .v-locked-article-takeaways article > i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #caae91 !important;
  background: #181512;
  border: 1px solid #453a31;
  border-radius: 8px;
}
.v-article-preview .v-locked-article-takeaways article strong,
.v-article-preview .v-locked-article-takeaways article small { display: block; }
.v-article-preview .v-locked-article-takeaways article strong { color: #e7e4df; font-size: 11px; }
.v-article-preview .v-locked-article-takeaways article small { margin-top: 3px; color: #77736e; font-size: 8px; line-height: 1.25; }
.v-article-unlock {
  min-height: 48px !important;
  margin-top: 10px;
  color: #18120d !important;
  background: linear-gradient(90deg, #d3b18f, #e6c8a8) !important;
  border: 0 !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  font-weight: 780 !important;
}
.v-article-save {
  min-height: 35px;
  margin: 4px auto 0;
  display: block;
  color: #9c8e80;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #4f453c;
  font-size: 9px;
}

@media (max-width: 380px) {
  .v-library-page.is-starter-mode .v-starter-pack > header { min-height: 315px; }
  .v-starter-pack > .v-starter-materials > button { grid-template-columns: 46px minmax(0, 1fr) auto !important; gap: 8px !important; }
  .v-starter-pack > .v-starter-materials > button > i { width: 46px; height: 44px; }
  .v-starter-pack > .v-starter-materials > button > em { padding: 0 6px; font-size: 7px !important; }
  .v-article-preview .v-locked-article-hero { min-height: 285px; }
}

/* V104 — ровная сетка управления и корректные кликабельные элементы */
.v-starter-pack > .v-starter-topbar > button {
  box-sizing: border-box !important;
  width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  min-width: 38px !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  place-items: center !important;
  gap: 0 !important;
  color: #f1efeb !important;
  background: rgba(7, 7, 7, .68) !important;
  border: 1px solid rgba(221, 193, 162, .48) !important;
  border-radius: 50% !important;
  text-align: center !important;
}

.v-starter-pack > .v-starter-topbar > button:last-child { justify-self: end !important; }
.v-starter-pack > .v-starter-topbar > button > svg { width: 18px !important; height: 18px !important; }
.v-starter-pack > .v-starter-topbar > div { min-width: 0 !important; }

.v-starter-pack > .v-starter-materials > button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.v-starter-pack > .v-starter-materials > button > i {
  flex: 0 0 auto !important;
  width: 52px !important;
  height: 48px !important;
  border-radius: 8px !important;
}
.v-starter-pack > .v-starter-materials > button > span {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}
.v-starter-pack > .v-starter-materials > button > em {
  flex: 0 0 auto !important;
  align-self: center !important;
  color: #202020 !important;
}

.v-starter-pack > .v-starter-materials > button.is-locked > em { color: #c8c2bb !important; }
.v-starter-pack > .v-starter-primary {
  box-sizing: border-box !important;
  width: calc(100% - 24px) !important;
  min-height: 52px !important;
  padding: 0 18px !important;
  justify-content: center !important;
  color: #111 !important;
  background: #f3f2ef !important;
  border: 0 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  text-align: center !important;
}

.v-starter-saved {
  min-height: 34px;
  margin: 6px auto 0;
  padding: 4px 10px;
  display: block;
  color: #bba48e;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #5a4c3e;
  font-size: 10px;
}

.v-starter-flow > :is(button, span) {
  position: relative;
  z-index: 1;
  min-width: 0;
  min-height: 54px;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: #77736e;
  background: transparent;
  border: 0;
  font-size: 9px;
  text-align: center;
}
.v-starter-flow > :is(button, span) > i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #9c8a78;
  background: #090909;
  border: 1px solid #50473e;
  border-radius: 50%;
}
.v-starter-flow > .active { color: #e9e3dc; }
.v-starter-flow > .active > i { color: #17120e; background: #d9bea2; border-color: #d9bea2; }

.v-telegram-photo.v-brand-avatar,
.v-profile-avatar .v-brand-avatar {
  width: 100%;
  height: 100%;
  display: block;
  background: #141414 url('/media/v-channel-logo-v117.webp') center / cover no-repeat;
  border-radius: 50%;
}
.v-profile-trigger { border-radius: 50% !important; overflow: hidden !important; }
.v-profile-avatar { border-radius: 50% !important; overflow: hidden !important; }

.v-result-route-track.v-video-route-days { box-sizing: border-box !important; width: 100% !important; min-width: 0 !important; }
.v-video-route-days > button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: 44px minmax(0, 1fr) 18px !important;
  align-items: center !important;
  column-gap: 10px !important;
  overflow: hidden !important;
}
.v-video-route-days > button > div { min-width: 0 !important; max-width: 100% !important; overflow-wrap: anywhere !important; }
.v-video-route-days > button > div > :is(strong, p, em) { max-width: 100% !important; overflow-wrap: anywhere !important; }
.v-video-route-days > button > svg { justify-self: end; width: 16px !important; height: 16px !important; }
.v-video-route-days .v-video-route-day { flex: 0 0 44px !important; }

.v-saved-fragments {
  padding: 14px;
  border: 1px solid #35302b;
  border-radius: 12px;
  background: #0e0e0e;
}
.v-saved-fragments h3 { margin: 0 0 10px; color: #f0ede9; font-size: 18px; }
.v-saved-fragments > button {
  box-sizing: border-box;
  width: 100%;
  min-height: 58px;
  padding: 8px 0;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 10px;
  color: #e7e3de;
  text-align: left;
  background: transparent;
  border: 0;
  border-top: 1px solid #292929;
}
.v-saved-fragments > button > svg:first-child { color: #cdb297; }
.v-saved-fragments > button > span { min-width: 0; }
.v-saved-fragments > button :is(strong, small) { display: block; }
.v-saved-fragments > button strong { font-size: 12px; line-height: 1.25; }
.v-saved-fragments > button small { margin-top: 3px; color: #89827a; font-size: 10px; }

.v-locked-media-fragment {
  min-height: 125px !important;
  display: flex !important;
  flex-direction: column;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  text-align: center;
}
.v-locked-media-fragment > i {
  width: 43px;
  height: 43px;
  display: grid;
  place-items: center;
  color: #d5b99c;
  border: 1px solid #725b45;
  border-radius: 50%;
  background: rgba(18, 15, 13, .8);
}
.v-locked-media-fragment > i svg { width: 19px; height: 19px; }
.v-locked-media-fragment > small { color: #a39b92 !important; font-size: 11px !important; }

@media (max-width: 380px) {
  .v-starter-pack > .v-starter-materials > button > i { width: 46px !important; height: 44px !important; }
  .v-video-route-days > button { grid-template-columns: 40px minmax(0, 1fr) 16px !important; gap: 8px !important; }
  .v-video-route-days .v-video-route-day { width: 40px !important; height: 40px !important; }
  .v-result-route-track.v-video-route-days:before { left: 19px !important; }
}

/* V105 — первый экран: основное действие видно без лишнего пустого пространства */
.v-concept-start:not(.is-returning) .v-start-hero-art {
  height: clamp(238px, 34dvh, 320px) !important;
  min-height: 0 !important;
}
.v-concept-start:not(.is-returning) .v-start-intro {
  padding-top: clamp(238px, 34dvh, 320px) !important;
}

/* V106 — editorial home, gold route and separate weekly review */
.v-app { --v102-accent: #d7b878; --v102-line-warm: #725d35; }
.v-home-editorial { gap: 0 !important; padding-bottom: 24px; }
.v-home-editorial button { cursor: pointer; }
.v-home-feature {
  min-height: 193px; padding: 22px 20px; position: relative; overflow: hidden;
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end;
  border: 1px solid #504029; border-radius: 15px;
  background: linear-gradient(90deg,rgba(9,9,9,.97) 3%,rgba(10,10,10,.82) 49%,rgba(10,10,10,.12) 100%),url('/media/v-route-mindset-v117.webp') 70% 34% / cover no-repeat,#0a0a0a;
}
.v-home-feature small { color: #d9bc86; font-size: 9px; letter-spacing: .12em; font-weight: 700; }
.v-home-feature h2 { max-width: 72%; margin: 8px 0 2px; color: #f6f3ee; font-size: clamp(25px,7.4vw,33px); line-height: 1.02; letter-spacing: -.045em; }
.v-home-feature p { margin: 0; color: #afa69a; font-size: 11px; }
.v-home-feature button { height: 37px; margin-top: 13px; padding: 0 14px; display: flex; align-items: center; justify-content: center; gap: 7px; color: #f3e7d4; border: 1px solid #8f754c; border-radius: 19px; background: #15120eec; font-size: 11px; font-weight: 650; white-space: nowrap; }
.v-home-feature button svg { width: 14px; height: 14px; }
.v-home-pills { display: flex; gap: 6px; margin: 12px 0 18px; overflow-x: auto; scrollbar-width: none; }
.v-home-pills button { min-height: 34px; flex: 0 0 auto; padding: 0 9px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; color: #e9e0d2; background: #141311; border: 1px solid #39332a; border-radius: 18px; white-space: nowrap; font-size: 10px; }
.v-home-pills button:first-child { border-color: #766044; background: linear-gradient(135deg,#282219,#141311); }
.v-home-pills svg { width: 13px; height: 13px; color: #d9bc86; }
.v-home-editorial > section:not(.v-home-feature) { margin: 0 0 18px; }
.v-home-continue header,.v-home-collections header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.v-home-continue h3,.v-home-collections h3 { margin: 0; color: #f4f1ed; font-size: 19px; font-weight: 720; }
.v-home-continue header button,.v-home-collections header button { display: inline-flex; align-items: center; gap: 3px; padding: 3px 0; color: #bfb4a5; background: transparent; border: 0; white-space: nowrap; font-size: 10px; }
.v-home-continue header svg,.v-home-collections header svg { width: 13px; height: 13px; }
.v-home-next-card { width: 100%; min-height: 85px; padding: 8px; display: grid; grid-template-columns: 84px minmax(0,1fr) 18px; align-items: center; gap: 11px; text-align: left; background: #141514; border: 1px solid #32332f; border-radius: 12px; }
.v-home-next-card img { width: 84px; height: 66px; object-fit: cover; border-radius: 6px; }
.v-home-next-card span { min-width: 0; }
.v-home-next-card small,.v-home-next-card strong,.v-home-next-card i { display: block; }
.v-home-next-card small { color: #ae9a7d; font-size: 9px; letter-spacing: .04em; }
.v-home-next-card strong { margin: 4px 0; color: #f1eee9; font-size: 13px; line-height: 1.18; }
.v-home-next-card i { color: #9b9690; font-size: 10px; font-style: normal; }
.v-home-next-card > svg { width: 16px; color: #d2b480; }
.v-home-topic,.v-home-actions > button { box-sizing: border-box; width: 100%; min-height: 57px; padding: 8px; display: grid; grid-template-columns: 36px minmax(0,1fr) 16px; align-items: center; gap: 9px; text-align: left; color: #ece9e4; background: #121313; border: 1px solid #30312d; border-radius: 11px; margin: 5px 0; }
.v-home-topic.active { border-color: #806c4b; background: linear-gradient(100deg,#221e18,#111313); }
.v-home-topic > i,.v-home-actions > button > svg:first-child { width: 35px; height: 35px; display: grid; place-items: center; color: #d6b77c; border: 1px solid #574a36; border-radius: 7px; background: #24211b; }
.v-home-topic > i svg { width: 18px; height: 18px; }
.v-home-topic span,.v-home-actions > button span { min-width: 0; }
.v-home-topic strong,.v-home-actions strong,.v-home-topic small,.v-home-actions small { display: block; }
.v-home-topic strong,.v-home-actions strong { color: #efede8; font-size: 12px; line-height: 1.2; }
.v-home-topic small,.v-home-actions small { margin-top: 3px; color: #928e87; font-size: 10px; line-height: 1.2; }
.v-home-topic > svg:last-child,.v-home-actions > button > svg:last-child { width: 15px; color: #a99676; }
.v-home-topic[aria-disabled="true"] { opacity: .66; }
.v-home-actions { border-top: 1px solid #2b2b29; padding-top: 13px; }
.v-home-actions > button > svg:first-child { padding: 8px; }
.v-home-rebuild { width: 100%; padding: 4px 0 14px; color: #9f957f; background: none; border: 0; font-size: 11px; text-decoration: underline; }
.v-map-workspace > .v-weekly-review { display: none; }
.v-result-route-track.v-video-route-days:before { background: #6b5738 !important; }
.v-video-route-days > button { min-height: 67px !important; grid-template-columns: 42px minmax(0,1fr) 16px !important; gap: 10px !important; padding: 9px 0 !important; border-bottom-color: #24231f !important; }
.v-video-route-days .v-video-route-day { width: 42px !important; height: 42px !important; border-color: #706044 !important; color: #d7b878 !important; background: #11110f !important; }
.v-video-route-days .v-video-route-day svg { width: 14px; height: 14px; }
.v-video-route-days button.current > .v-video-route-day,.v-video-route-days button.completed > .v-video-route-day { color: #16120b !important; background: #dfc39a !important; border-color: #dfc39a !important; }
.v-video-route-days button > div > small { color: #a29075 !important; font-size: 9px !important; }
.v-video-route-days button > div > strong { font-size: 13px !important; }
.v-video-route-days button > div > p { font-size: 10px !important; }
.v-video-route-days button.current > div > em { display: inline-block; width: fit-content; padding: 3px 6px; color: #251d12 !important; background: #dec199; border-radius: 10px; font-weight: 700; }
.v-video-route-days button.locked > div > em { display: none; }
.v-video-route-days > button > svg { width: 15px !important; height: 15px !important; color: #dfc39a; }
.v-map-cover { background: linear-gradient(90deg,#090909 8%,#090909cd 56%,#09090918 100%),url('/media/v-route-mindset-v117.webp') 72% 33% / cover no-repeat,#0a0a0a !important; border-color: #54432b !important; }
.v-weekly-workspace { padding-bottom: 20px; }
.v-weekly-workspace .v-weekly-review { margin: 0 !important; min-height: 390px; padding: 24px 16px !important; background: radial-gradient(circle at 84% 10%,#8a6d3433,transparent 40%),#090a09 !important; border-color: #56452d !important; }
.v-weekly-workspace .v-weekly-review > header strong { max-width: 265px; display: block; font-size: 30px !important; }
.v-weekly-workspace .v-weekly-review-metrics strong { color: #e6cda5 !important; }
.v-weekly-progress { margin: 16px 0 12px; padding: 0 4px; }
.v-weekly-progress > span { display: flex; justify-content: space-between; gap: 10px; color: #ab9980; font-size: 10px; letter-spacing: .04em; }
.v-weekly-progress b { color: #ded0b8; font-weight: 500; }
.v-weekly-progress > div { display: flex; gap: 5px; margin-top: 10px; }
.v-weekly-progress i { height: 4px; flex: 1; border-radius: 2px; background: #302e29; }
.v-weekly-progress i.current { background: #a4895c; }
.v-weekly-progress i.completed { background: #e1c495; }
.v-weekly-continue { width: 100%; min-height: 46px; display: flex; justify-content: center; align-items: center; gap: 8px; background: linear-gradient(100deg,#e5cfb1,#d4b384) !important; color: #17120b !important; border-radius: 9px !important; font-weight: 700; }
.v-weekly-continue svg { width: 17px; height: 17px; }
.v-reader-navigation { display: flex; flex-direction: column; gap: 3px; margin-bottom: 11px; padding-left: 10px; border-left: 2px solid #d5b679; }
.v-reader-navigation small { color: #cbb283; font-size: 9px; letter-spacing: .1em; }
.v-reader-navigation strong { color: #ebe6dc; font-size: 13px; line-height: 1.3; }
@media(max-width:360px) { .v-home-pills button { padding-inline: 7px; font-size: 9px; } .v-home-feature h2 { max-width: 78%; } .v-video-route-days > button { grid-template-columns: 40px minmax(0,1fr) 15px !important; } }

/* V106 legibility and single route heading */
.v-map-workspace .v-result-route-map > header { display: none !important; }
.v-map-workspace .v-result-route-map { margin-top: 12px !important; }
.v-home-feature small,.v-home-next-card small,.v-video-route-days button > div > small { font-size: 11px !important; }
.v-home-feature p,.v-home-pills button,.v-home-continue header button,.v-home-collections header button,.v-home-topic small,.v-home-actions small { font-size: 12px !important; }
.v-home-next-card strong,.v-home-topic strong,.v-home-actions strong { font-size: 14px !important; }
.v-video-route-days button > div > strong { font-size: 15px !important; }
.v-video-route-days button > div > p { font-size: 12px !important; line-height: 1.32 !important; }
.v-video-route-days > button { min-height: 78px !important; }
.v-home-next-card i { font-size: 11px; }
.v-bottom-nav { grid-template-columns: repeat(5,minmax(0,1fr)) !important; }
.v-bottom-nav button { min-width: 0; }
.v-bottom-nav button > span:not(.v-ai-nav-mark) { white-space: nowrap; font-size: 10px; }
.v-bottom-nav svg { width: 21px !important; height: 21px !important; }
.v-bottom-nav button.active i { width: 26px !important; }

/* V88 — restored catalogue; continuous hero imagery and clear result tabs */
.v-concept-start:not(.is-returning) .v-start-hero-art {
  height: min(64dvh, 560px) !important;
  min-height: 440px !important;
  background:
    linear-gradient(180deg, rgba(2,2,2,.02) 15%, rgba(2,2,2,.06) 39%, rgba(3,3,3,.35) 67%, #030303 100%),
    url('/media/v-launch-frame.jpg') center 36% / cover no-repeat !important;
  filter: contrast(1.05) brightness(.9);
}
.v-concept-start:not(.is-returning) .v-start-intro { position: relative; z-index: 1; }

.v-trial-preview-screen.v-personal-route-result {
  box-sizing: border-box !important;
  padding-inline: 18px !important;
  overflow-x: hidden !important;
}
.v-personal-route-result .v-route-page-tabs,
.v-personal-route-result .v-route-page,
.v-personal-route-result .v-route-page-inner { box-sizing: border-box !important; min-width: 0 !important; max-width: 100% !important; }
.v-personal-route-result .v-route-tabs-shell {
  box-sizing: border-box !important;
  position: relative !important;
  top: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.v-personal-route-result .v-route-tabs-list {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 48px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  overflow: hidden !important;
  background: #0e0e0e !important;
  border: 1px solid #292724 !important;
  border-radius: 10px !important;
}
.v-personal-route-result .v-route-tabs-list > button,
.v-personal-route-result .v-route-tabs-list > button.active {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 3px !important;
  display: grid !important;
  place-items: center !important;
  color: #9e9992 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 550 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}
.v-personal-route-result .v-route-tabs-list > button.active {
  color: #ead3a9 !important;
  background: #201b15 !important;
  box-shadow: inset 0 -2px #d8b574 !important;
}
.v-personal-route-result .v-route-tab-progress {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 2px !important;
  margin: 0 !important;
  background: #2c2924 !important;
}
.v-personal-route-result .v-route-page-inner { padding-inline: 0 !important; }
.v-personal-route-result .v-route-page-inner > h1,
.v-personal-route-result .v-route-page-heading h1 {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
  font-size: clamp(30px, 8vw, 40px) !important;
  line-height: 1.02 !important;
}
.v-personal-route-result .v-route-result-summary { max-width: 100% !important; }

.v-library-page.is-starter-mode .v-starter-pack > header {
  min-height: 366px !important;
  padding-top: 175px !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.20) 0%, rgba(0,0,0,.12) 36%, rgba(0,0,0,.70) 70%, #030303 100%),
    linear-gradient(90deg, rgba(3,3,3,.74) 0%, rgba(3,3,3,.26) 53%, transparent 100%),
    url('/media/v-starter-portrait-v88.png') 74% 19% / cover no-repeat !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > span,
.v-library-page.is-starter-mode .v-starter-pack > header > strong,
.v-library-page.is-starter-mode .v-starter-pack > header > p { position: relative; z-index: 1; }
.v-environment-concept-hero {
  background:
    linear-gradient(90deg, rgba(4,4,4,.95), rgba(4,4,4,.53) 69%, rgba(4,4,4,.08)),
    url('/media/v-starter-portrait-v88.png') 73% 23% / cover no-repeat !important;
}
.v-environment-locked .v-environment-concept-hero,
.v-environment-locked .v-environment-today,
.v-environment-locked .v-environment-question { filter: none !important; }
.v-environment-locked .v-environment-status,
.v-environment-locked .v-environment-status svg,
.v-environment-locked .v-environment-today > button > svg {
  color: #dfbd80 !important;
  stroke: #dfbd80 !important;
}
.v-environment-locked .v-environment-today > button > svg { width: 18px !important; height: 18px !important; }
.v-bottom-nav { grid-template-columns: repeat(6,minmax(0,1fr)) !important; }
.v-bottom-nav button > span:not(.v-ai-nav-mark) { font-size: 9px !important; }
@media(max-width: 370px) {
  .v-personal-route-result .v-route-tabs-list > button { font-size: 11px !important; }
  .v-library-page.is-starter-mode .v-starter-pack > header { min-height: 345px !important; }
  .v-bottom-nav svg { width: 19px !important; height: 19px !important; }
}

/* V89 — compact route, four destinations, separate subscription page */
.v-app { --v102-accent: #b8a895; --v102-line-warm: #60554b; }
.v-bottom-nav { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.v-bottom-nav button > span:not(.v-ai-nav-mark) { font-size: 11px !important; }
.v-home-route-modules .v-shift-module-card {
  grid-column: 1 / -1;
  aspect-ratio: auto !important;
  min-height: 112px !important;
  padding: 15px 16px !important;
}
.v-home-route-modules .v-shift-module-card > small { margin-top: 12px !important; }
.v-weekly-module-card .v-route-progress-meta { white-space: normal; }
.v-weekly-card-stats { margin-top: auto; display: flex; align-items: baseline; gap: 7px; color: #a8a19a; }
.v-weekly-card-stats strong { color: #e4dfd8; font-size: 30px; font-weight: 550; line-height: 1; }
.v-weekly-card-stats span { font-size: 11px; line-height: 1.2; }

.v-result-route-track.v-video-route-days:before {
  left: 17px !important;
  top: 26px !important;
  bottom: 26px !important;
  background: #49433d !important;
}
.v-video-route-days > button {
  min-height: 62px !important;
  grid-template-columns: 35px minmax(0, 1fr) 16px !important;
  gap: 10px !important;
  padding: 7px 0 !important;
}
.v-video-route-days .v-video-route-day {
  width: 35px !important;
  height: 35px !important;
  color: #aca49a !important;
  border-color: #56504a !important;
  background: #121211 !important;
}
.v-video-route-days button.current > .v-video-route-day,
.v-video-route-days button.completed > .v-video-route-day {
  color: #161514 !important;
  border-color: #c9baaa !important;
  background: #c9baaa !important;
}
.v-video-route-days button.current > div > em { color: #25201b !important; background: #c9baaa !important; }
.v-video-route-days button > div > small { color: #99918a !important; }
.v-video-route-days > button > svg { color: #a99d91 !important; }
.v-video-route-days button.locked { opacity: .83 !important; }
@media(max-width:380px) {
  .v-result-route-track.v-video-route-days:before { left: 17px !important; }
  .v-video-route-days > button { grid-template-columns: 35px minmax(0,1fr) 16px !important; }
}

.v-purchase-page.v-concept-purchase:before {
  height: 312px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.17) 47%, #050505 100%),
    url('/media/v-subscription-portrait-v89.png') 68% 28% / cover no-repeat;
  filter: none;
}
.v-concept-purchase .v-purchase-intro > div > span:last-child { color: #c2b2a1 !important; }
.v-article-preview .v-locked-article-hero {
  background:
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.12) 53%, #030303 100%),
    url('/media/v-subscription-portrait-v89.png') 67% 30% / cover no-repeat;
}
.v-concept-purchase.has-preview:not(.has-article-preview) .v-locked-preview-card {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.v-concept-purchase.has-preview .v-locked-preview-card > header { padding-inline: 0 !important; }
.v-concept-purchase.has-preview:not(.has-article-preview) .v-locked-fragment-copy { padding: 18px 0 4px !important; }
.v-concept-purchase.has-preview .v-locked-media-fragment { border: 0 !important; background-color: #121212 !important; }
.v-concept-purchase.has-preview .v-fragment-lock {
  margin-top: 12px !important;
  border: 0 !important;
  box-shadow: none !important;
  background: #191919 !important;
}
.v-concept-purchase.has-preview .v-fragment-subscribe {
  margin-top: 18px !important;
  min-height: 48px !important;
  color: #171513 !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: #d6cabe !important;
}
.v-concept-purchase:not(.has-preview) .v-purchase-offer { border-color: #49413a !important; }

/* V90 — one graphite design system across the app */
:root,
.v-app {
  --v100-bg: #090a0b;
  --v100-surface: #151719;
  --v100-surface-2: #1b1e20;
  --v100-line: #33383b;
  --v100-muted: #a5aaad;
  --v100-accent: #c5c9cc;
  --v100-accent-bright: #e1e3e5;
  --v100-accent-soft: #ffffff0d;
  --v102-bg: #090a0b;
  --v102-panel: #151719;
  --v102-panel-2: #1b1e20;
  --v102-line: #33383b;
  --v102-line-warm: #44494c;
  --v102-accent: #c5c9cc;
  --v102-muted: #a5aaad;
  --v102-button: #e9ebec;
}
.v-app, .v-shell, .v-screen, .v-trial-preview-screen { background-color: #090a0b !important; }
.v-screen { gap: 12px !important; padding-inline: 16px !important; }
.v-screen :is(p, small) { color: #a5aaad; }

/* Primary actions and navigation share the same neutral finish. */
.v-app :is(.v-primary, .v-route-page-next, .v-route-shift-cta, .v-map-continue, .v-weekly-continue, .v-purchase-cta, .v-environment-banner-cta, .v-fragment-subscribe),
.v-quiz-shell :is(.v-quiz-cta, .v-quiz-question-next) {
  color: #121416 !important;
  background: #e9ebec !important;
  border: 1px solid #e9ebec !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}
.v-app :is(.v-primary, .v-map-continue, .v-weekly-continue, .v-purchase-cta) { min-height: 46px !important; }
.v-bottom-nav { background: #0c0d0ef7 !important; border-color: #2b2f31 !important; }
.v-bottom-nav button { color: #9a9fa2 !important; }
.v-bottom-nav button.active { color: #f1f2f3 !important; }
.v-bottom-nav button.active > i { background: #e1e3e5 !important; }
.v-bottom-nav button > span:not(.v-ai-nav-mark) { font-size: 11px !important; }

/* The catalogue is the first useful view; route details remain expandable. */
.v-home-screen > .v-hero-card { order: 0 !important; }
.v-home-screen > .v-section-heading { order: 1 !important; }
.v-home-screen > .v-home-grid:not(.v-home-route-modules) { order: 2 !important; }
.v-home-screen > .v-home-route-modules { order: 3 !important; }
.v-home-screen > .v-continue-card { order: 4 !important; }
.v-home-screen > .v-global-route-map { order: 5 !important; }
.v-home-screen > .v-hero-card {
  min-height: 210px !important;
  border-color: #33383b !important;
  border-radius: 13px !important;
}
.v-route-hero.v-photo-hero > .v-hero-photo { filter: grayscale(.72) brightness(.78) contrast(1.08) !important; }
.v-route-hero.v-photo-hero .v-hero-copy { width: min(67%, 270px) !important; }
.v-route-hero .v-hero-copy > span { color: #d3d6d8 !important; }
.v-route-hero .v-primary { min-height: 42px !important; }
.v-section-heading h3 { font-size: 22px !important; font-family: inherit !important; letter-spacing: -.03em !important; }
.v-section-heading button { color: #b7bcbe !important; font-size: 12px !important; }
.v-home-grid, .v-home-route-modules { gap: 9px !important; }
.v-home-screen .v-home-grid .v-section-card {
  min-width: 0 !important;
  min-height: 164px !important;
  height: auto !important;
  padding: 15px !important;
  border: 1px solid #303539 !important;
  border-radius: 12px !important;
  background: #151719 !important;
  background-image: none !important;
  box-shadow: none !important;
}
.v-home-screen .v-home-route-modules .v-section-card { aspect-ratio: auto !important; }
.v-home-screen .v-home-route-modules .v-shift-module-card {
  min-height: 105px !important;
  grid-column: 1 / -1;
}
.v-home-screen .v-home-grid .v-section-card h4 { color: #f2f3f4 !important; font-family: inherit !important; font-size: 18px !important; line-height: 1.15 !important; }
.v-home-screen .v-home-grid .v-section-card > p,
.v-home-screen .v-home-grid .v-section-card > small { color: #aeb3b6 !important; font-size: 12px !important; }
.v-home-screen .v-home-grid .v-section-card :is(svg, .v-route-progress-value) { color: #d0d4d6 !important; }
.v-home-screen .v-home-grid .v-section-card .v-route-progress-track > i { background: #c8ccce !important; }
.v-home-screen .v-continue-card { border-color: #303539 !important; background: #151719 !important; border-radius: 12px !important; }
.v-home-screen .v-continue-card h4 { font-size: 16px !important; }
.v-weekly-card-stats strong { color: #edf0f1 !important; }
.v-home-screen > .v-global-route-map { padding: 0 !important; }
.v-home-route-disclosure {
  min-height: 64px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  cursor: pointer;
  color: #f0f1f2;
  background: #151719;
  border: 1px solid #303539;
  border-radius: 12px;
}
.v-home-route-disclosure::-webkit-details-marker { display: none; }
.v-home-route-disclosure :is(strong, small) { display: block; }
.v-home-route-disclosure strong { font-size: 14px; font-weight: 650; }
.v-home-route-disclosure small { margin-top: 3px; font-size: 12px; color: #a5aaad; }
.v-home-route-disclosure svg { width: 18px; height: 18px; flex: none; transition: transform .2s ease; }
.v-global-route-map[open] .v-home-route-disclosure svg { transform: rotate(90deg); }
.v-home-screen .v-global-route-map:not([open]) > :not(summary) { display: none !important; }
.v-home-screen .v-global-route-map[open] > .v-global-route-directions-heading { margin-top: 18px !important; }
.v-home-screen .v-global-route-plan > button { border-color: #303539 !important; background: #151719 !important; }
.v-home-screen .v-global-route-plan > button.active { border-color: #60666a !important; background: #1e2224 !important; }

/* Route, weekly summary, and the result tabs use graphite rather than gold. */
.v-map-cover, .v-channel-home-hero, .v-environment-concept-hero { border-color: #363b3e !important; border-radius: 13px !important; }
.v-map-cover, .v-channel-home-hero, .v-environment-concept-hero {
  background-color: #151719 !important;
  background-blend-mode: normal, luminosity !important;
}
.v-map-cover { min-height: 205px !important; }
.v-map-cover :is(span, small), .v-result-route-map > header > small { color: #c9cdd0 !important; }
.v-map-cover > small { border-color: #51575a !important; }
.v-map-cover h1 { font-size: clamp(30px, 8vw, 36px) !important; }
.v-map-workspace .v-result-route-map, .v-weekly-workspace .v-weekly-review {
  border-color: #33383b !important;
  background: #151719 !important;
  box-shadow: none !important;
}
.v-map-workspace .v-result-route-map { padding: 15px 12px !important; }
.v-result-route-track.v-video-route-days:before { background: #4b5256 !important; }
.v-video-route-days .v-video-route-day { border-color: #60676b !important; color: #c6cbce !important; background: #121416 !important; }
.v-video-route-days button.current > .v-video-route-day,
.v-video-route-days button.completed > .v-video-route-day { color: #17191a !important; border-color: #d7dbdd !important; background: #d7dbdd !important; }
.v-video-route-days button.current > div > em { color: #17191a !important; background: #d7dbdd !important; }
.v-video-route-days > button > svg { color: #c1c6c8 !important; }
.v-weekly-workspace .v-weekly-review { min-height: 0 !important; padding: 18px 16px !important; }
.v-weekly-workspace .v-weekly-review-metrics strong { color: #e4e7e8 !important; }
.v-weekly-progress i.current, .v-weekly-progress i.completed { background: #b8bec1 !important; }
.v-personal-route-result .v-route-tabs-list { border-color: #343a3d !important; background: #151719 !important; }
.v-personal-route-result .v-route-tabs-list > button.active { color: #f2f3f4 !important; background: #262b2e !important; box-shadow: inset 0 -2px #d5d9db !important; }
.v-personal-route-result .v-route-tab-progress > i { background: #cfd4d6 !important; }

/* Content, subscription, and environment share the same panel treatment. */
.v-channel-home-hero button { color: #e8ebed !important; border-color: #596064 !important; background: #1c2022 !important; }
.v-channel-home-hero small, .v-channel-catalog > header > div > span { color: #c8cdd0 !important; }
.v-curated-channel .v-library-list > button,
.v-channel-material-list > button,
.v-environment-today,
.v-environment-question,
.v-profile-hero,
.v-subscription-card,
.v-purchase-offer {
  border-color: #33383b !important;
  background-color: #151719 !important;
  box-shadow: none !important;
}
.v-environment-question { background-image: none !important; min-height: 165px !important; }
.v-environment-question button { color: #151719 !important; background: #e9ebec !important; }
.v-environment-concept-hero :is(small, .v-environment-status),
.v-environment-today header small,
.v-environment-question small,
.v-environment-locked .v-environment-status,
.v-environment-locked .v-environment-status svg,
.v-environment-locked .v-environment-today > button > svg { color: #cbd0d2 !important; stroke: #cbd0d2 !important; }
.v-environment-status { border-color: #596064 !important; background: #151719d9 !important; }
.v-environment-today > button > i { color: #d5d9db !important; border-color: #40474b !important; background-color: #1d2224 !important; }
.v-concept-purchase:before { filter: grayscale(.78) brightness(.78) !important; }
.v-concept-purchase .v-purchase-intro > div > span:last-child { color: #d0d4d6 !important; }
.v-concept-purchase .v-purchase-intro h1 { font-size: clamp(34px, 8.4vw, 43px) !important; line-height: 1.03 !important; }
.v-purchase-offer { background-image: none !important; padding: 18px !important; border-radius: 12px !important; }
.v-concept-purchase.has-preview .v-fragment-lock { background: #1b1e20 !important; }
.v-concept-purchase.has-preview .v-fragment-subscribe { background: #e9ebec !important; border-color: #e9ebec !important; }

/* Free start and paid previews use the same quiet palette. */
.v-library-page.is-starter-mode .v-starter-pack,
.v-library-page.is-starter-mode .v-starter-materials,
.v-locked-preview-card.is-article { border-color: #33383b !important; background-color: #151719 !important; }
.v-library-page.is-starter-mode .v-starter-pack > header {
  background-color: #151719 !important;
  background-blend-mode: normal, normal, luminosity !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > span,
.v-starter-pack > header small,
.v-starter-pack > .v-starter-materials > button > em,
.v-starter-flow > .active,
.v-starter-flow button.active { color: #c6cbce !important; }
.v-starter-flow > .active > i,
.v-starter-flow button.active > i { color: #161819 !important; background: #d7dbdd !important; border-color: #d7dbdd !important; }
.v-starter-pack > .v-starter-materials > button.is-locked > em { color: #b5b9bc !important; }
.v-starter-pack > .v-starter-materials > button > i { color: #c9cdd0 !important; border-color: #41474b !important; background: #1e2224 !important; }
.v-article-preview .v-locked-article-hero { filter: grayscale(.65) !important; }
.v-article-insight,
.v-article-locked-body { border-color: #33383b !important; background: #151719 !important; }
.v-article-preview .v-article-insight :is(svg, strong),
.v-article-locked-body > header > svg,
.v-article-preview .v-locked-article-takeaways article > i { color: #d6dbdd !important; }
.v-article-preview .v-article-unlock { background: #e9ebec !important; border-color: #e9ebec !important; }
.v-reader-navigation { border-left-color: #81898d !important; }
.v-reader-navigation small,
.v-weekly-progress b,
.v-weekly-progress > span { color: #c2c7c9 !important; }
.v-route-map-context article,
.v-map-workspace-guide { border-color: #33383b !important; background: #151719 !important; }
.v-route-map-context :is(small, span),
.v-map-workspace-guide > span { color: #cbd0d2 !important; }
.v-bottom-nav button.active svg {
  color: #f1f2f3 !important;
  filter: none !important;
}
.v-bottom-nav button.active > i { box-shadow: none !important; }

/* Home: one featured route and a compact, readable catalogue. */
.v-app:has(.v-home-screen) .v-header {
  min-height: 74px;
  padding-top: max(10px, env(safe-area-inset-top));
  padding-bottom: 8px;
}
.v-app:has(.v-home-screen) .v-header-center h1 {
  font-size: 22px;
  font-weight: 620;
  letter-spacing: -.035em;
}
.v-app:has(.v-home-screen) .v-header-badge { display: none; }
.v-app:has(.v-home-screen) .v-header :is(.v-menu, .v-profile-trigger) {
  width: 44px;
  height: 44px;
}
.v-home-screen {
  gap: 0 !important;
  padding-bottom: 20px;
}
.v-home-screen > .v-home-featured-route {
  order: 0 !important;
  box-sizing: border-box;
  display: block;
  height: 204px;
  min-height: 204px !important;
  padding: 20px 21px !important;
  border: 1px solid #343638 !important;
  border-radius: 16px !important;
  background-color: #141516 !important;
  box-shadow: inset 0 1px #ffffff0d;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #101112 1%, #101112ed 35%, #10111279 61%, #10111205 100%);
}
.v-home-featured-route.v-photo-hero > .v-hero-photo {
  object-position: 63% center !important;
  filter: grayscale(.55) brightness(.85) contrast(1.05) !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy {
  box-sizing: border-box;
  width: min(68%, 255px) !important;
  height: 100%;
  min-height: 0 !important;
  align-self: auto;
  justify-content: flex-start !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy > span {
  color: #c3c6c8 !important;
  font-size: 11px !important;
  font-weight: 600;
  letter-spacing: .1em;
}
.v-home-screen .v-home-featured-route .v-hero-copy h2 {
  max-width: 12ch !important;
  margin: auto 0 15px !important;
  color: #f3f4f4;
  font-family: inherit;
  font-size: clamp(26px, 7cqw, 31px) !important;
  font-weight: 670;
  line-height: 1.03 !important;
  letter-spacing: -.045em;
  text-transform: none;
}
.v-home-screen .v-home-featured-route .v-home-resume {
  box-sizing: border-box;
  display: inline-flex;
  width: auto !important;
  max-width: 100%;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 13px !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 10px !important;
  color: #17191a !important;
  background: #eceeee !important;
  border-color: #eceeee !important;
  font-size: 13px;
  font-weight: 680;
  white-space: nowrap;
}
.v-home-featured-route .v-home-resume svg { width: 15px; height: 15px; }
.v-home-screen > .v-home-heading {
  order: 1 !important;
  margin: 27px 1px 12px;
  align-items: baseline;
  gap: 10px;
}
.v-home-screen .v-home-heading h3 {
  margin: 0;
  font-family: inherit !important;
  font-size: 21px !important;
  font-weight: 670;
  line-height: 1.1;
  letter-spacing: -.03em !important;
  text-transform: none;
}
.v-home-screen .v-home-heading button {
  padding: 3px 0 3px 6px;
  color: #aeb4b8 !important;
  font-size: 12px !important;
  white-space: nowrap;
}
.v-home-screen > .v-home-sections {
  order: 2 !important;
  overflow: hidden;
  border: 1px solid #303538;
  border-radius: 15px;
  background: #16191a;
}
.v-home-section-row {
  position: relative;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) 20px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 71px;
  padding: 12px 15px;
  color: #f0f2f2;
  background: transparent;
  border: 0;
  text-align: left;
  cursor: pointer;
  transition: background-color .15s ease;
}
.v-home-section-row + .v-home-section-row { border-top: 1px solid #2c3032; }
.v-home-section-row:hover, .v-home-section-row:active { background: #202425; }
.v-home-section-row:focus-visible,
.v-home-screen .v-home-heading button:focus-visible,
.v-home-screen .v-home-resume:focus-visible { outline: 2px solid #eef0ef; outline-offset: -3px; }
.v-home-row-icon {
  box-sizing: border-box;
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border: 1px solid #3b4144;
  border-radius: 11px;
  background: #202426;
  color: #ccd0d1;
  font-style: normal;
}
.v-home-row-icon svg { width: 18px; height: 18px; stroke-width: 1.65; }
.v-home-row-copy { min-width: 0; display: block; }
.v-home-row-copy strong {
  display: block;
  overflow: hidden;
  color: #f1f2f2;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-home-row-copy small {
  display: block;
  overflow: hidden;
  margin-top: 4px;
  color: #aeb4b8 !important;
  font-size: 12px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-home-row-arrow { width: 17px; height: 17px; color: #adb4b7; stroke-width: 1.5; }
.v-home-row-progress {
  position: absolute;
  right: 49px;
  bottom: 7px;
  left: 67px;
  height: 2px;
  overflow: hidden;
  border-radius: 2px;
  background: #343a3d;
}
.v-home-row-progress > i { display: block; height: 100%; border-radius: inherit; background: #d2d7d8; }
.v-home-screen > .v-global-route-map {
  order: 3 !important;
  margin-top: 11px;
}
.v-home-screen .v-home-route-disclosure {
  min-height: 55px;
  padding: 12px 16px;
  border-color: #303538;
  border-radius: 13px;
  background: #121516;
}
.v-home-screen .v-home-route-disclosure strong { font-size: 13px; }
.v-home-screen .v-home-route-disclosure small { font-size: 12px; }
@media (max-width: 360px) {
  .v-home-screen > .v-home-featured-route { height: 195px; min-height: 195px !important; padding: 18px !important; }
  .v-home-screen .v-home-featured-route .v-hero-copy { width: 75% !important; }
  .v-home-screen .v-home-featured-route .v-hero-copy h2 { font-size: 25px !important; }
  .v-home-section-row { padding-inline: 12px; gap: 10px; }
  .v-home-row-progress { left: 61px; right: 43px; }
}

/* V92 — restrained black and gold catalogue. */
:root,
.v-app {
  --v92-bg: #060706;
  --v92-panel: #121310;
  --v92-panel-raised: #181914;
  --v92-line: #3f3729;
  --v92-line-strong: #6b5734;
  --v92-gold: #c5a362;
  --v92-gold-bright: #e2c88f;
  --v92-ivory: #f2eee6;
  --v92-muted: #aaa59b;
  --v100-bg: #060706;
  --v100-surface: #121310;
  --v100-surface-2: #181914;
  --v100-line: #3f3729;
  --v100-muted: #aaa59b;
  --v100-accent: #c5a362;
  --v100-accent-bright: #e2c88f;
  --v102-bg: #060706;
  --v102-panel: #121310;
  --v102-panel-2: #181914;
  --v102-line: #3f3729;
  --v102-line-warm: #6b5734;
  --v102-accent: #c5a362;
  --v102-muted: #aaa59b;
  --v102-button: #dfc58e;
}
.v-app,
.v-shell,
.v-main,
.v-screen,
.v-trial-preview-screen { background-color: var(--v92-bg) !important; }
.v-header { background: #050605 !important; }
.v-header-center h1 { color: var(--v92-ivory) !important; }
.v-menu { color: var(--v92-ivory) !important; border-color: #766442 !important; }
.v-header-badge { color: #cfc4b0 !important; border-color: #4b402f !important; background: #11120f !important; }
.v-screen :is(p, small) { color: var(--v92-muted); }
.v-texture { border-color: var(--v92-line) !important; background-color: var(--v92-panel) !important; }

.v-app :is(.v-primary, .v-route-page-next, .v-route-shift-cta, .v-map-continue, .v-weekly-continue, .v-purchase-cta, .v-environment-banner-cta, .v-fragment-subscribe),
.v-quiz-shell :is(.v-quiz-cta, .v-quiz-question-next) {
  color: #17130c !important;
  border-color: #d9bf86 !important;
  background: linear-gradient(135deg, #ead8ad 0%, #c6a260 100%) !important;
  box-shadow: inset 0 1px #fff4d6a8 !important;
}
.v-bottom-nav { background: #080907f7 !important; border-color: #332d22 !important; }
.v-bottom-nav button { color: #8e8a82 !important; }
.v-bottom-nav button.active,
.v-bottom-nav button.active > span,
.v-bottom-nav button.active svg { color: var(--v92-gold-bright) !important; }
.v-bottom-nav button.active svg { filter: drop-shadow(0 0 6px #c5a3623d) !important; }
.v-bottom-nav button.active > i { background: var(--v92-gold) !important; box-shadow: none !important; }

/* Key product surfaces share one quiet gold hierarchy. */
.v-map-cover,
.v-channel-home-hero,
.v-environment-concept-hero,
.v-environment-today,
.v-environment-question,
.v-profile-hero,
.v-subscription-card,
.v-purchase-offer,
.v-curated-channel .v-library-list > button,
.v-channel-material-list > button,
.v-route-map-context article,
.v-map-workspace-guide {
  border-color: var(--v92-line) !important;
  background-color: var(--v92-panel) !important;
}
.v-map-cover :is(span, small),
.v-channel-home-hero small,
.v-channel-catalog > header > div > span,
.v-environment-concept-hero :is(small, .v-environment-status),
.v-environment-today header small,
.v-environment-question small,
.v-route-map-context :is(small, span),
.v-map-workspace-guide > span {
  color: var(--v92-gold-bright) !important;
}
.v-environment-status,
.v-channel-home-hero button {
  color: #dfc992 !important;
  border-color: #6a5837 !important;
  background: #17150fdd !important;
}
.v-environment-today > button > i,
.v-starter-pack > .v-starter-materials > button > i {
  color: #d8bd82 !important;
  border-color: #51452f !important;
  background: #1b1913 !important;
}
.v-environment-locked .v-environment-status,
.v-environment-locked .v-environment-status svg,
.v-environment-locked .v-environment-today > button > svg,
.v-app :is(.v-reader-navigation small, .v-weekly-progress b, .v-weekly-progress > span) {
  color: #ceb67f !important;
  stroke: #ceb67f !important;
}
.v-result-route-track.v-video-route-days:before { background: #51452f !important; }
.v-video-route-days .v-video-route-day { color: #c7b78f !important; border-color: #665537 !important; background: #14140f !important; }
.v-video-route-days button.current > .v-video-route-day,
.v-video-route-days button.completed > .v-video-route-day,
.v-starter-flow > .active > i,
.v-starter-flow button.active > i {
  color: #17130c !important;
  border-color: #d8bd82 !important;
  background: #d8bd82 !important;
}
.v-video-route-days button.current > div > em { color: #17130c !important; background: #d8bd82 !important; }
.v-personal-route-result .v-route-tabs-list > button.active {
  color: #f4eee2 !important;
  background: #211d15 !important;
  box-shadow: inset 0 -2px var(--v92-gold) !important;
}

/* Home hero. */
.v-home-screen > .v-home-featured-route {
  height: 198px;
  min-height: 198px !important;
  border-color: #655337 !important;
  background-color: #11120f !important;
  box-shadow: inset 0 1px #f2d69a17, 0 14px 34px #0005;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #0b0c0a 0%, #0b0c0aeb 37%, #0b0c0a70 64%, #0b0c0a08 100%);
}
.v-home-featured-route.v-photo-hero > .v-hero-photo {
  filter: grayscale(.62) sepia(.12) brightness(.8) contrast(1.1) !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy > span { color: var(--v92-gold-bright) !important; }
.v-home-screen .v-home-featured-route .v-hero-copy h2 { color: var(--v92-ivory) !important; }
.v-home-screen .v-home-featured-route .v-home-resume {
  color: #17130c !important;
  border-color: #d9bf86 !important;
  background: linear-gradient(135deg, #ead8ad 0%, #c6a260 100%) !important;
  box-shadow: inset 0 1px #fff4d6a8 !important;
}
.v-home-screen > .v-home-heading { margin-top: 24px; }
.v-home-screen .v-home-heading h3 { color: var(--v92-ivory) !important; }
.v-home-screen .v-home-heading button { color: #c7ad76 !important; }

/* Restored catalogue: four equal modules plus one compact practice row. */
.v-home-screen > .v-home-catalog {
  order: 2 !important;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  overflow: visible;
  border: 0;
  background: transparent;
}
.v-catalog-card {
  position: relative;
  box-sizing: border-box;
  display: flex;
  min-width: 0;
  height: 132px;
  padding: 14px;
  flex-direction: column;
  align-items: flex-start;
  color: var(--v92-ivory);
  text-align: left;
  cursor: pointer;
  border: 1px solid var(--v92-line);
  border-radius: 14px;
  background: linear-gradient(145deg, #191a16 0%, #11120f 100%);
  box-shadow: inset 0 1px #fff1ce0a;
  transition: border-color .15s ease, background-color .15s ease, transform .15s ease;
}
.v-catalog-card:hover,
.v-catalog-card:active { border-color: #75613e; background: #1b1a14; }
.v-catalog-card:active { transform: scale(.985); }
.v-catalog-card:focus-visible,
.v-home-screen .v-home-heading button:focus-visible,
.v-home-screen .v-home-resume:focus-visible { outline: 2px solid var(--v92-gold-bright); outline-offset: 2px; }
.v-catalog-icon {
  box-sizing: border-box;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  color: var(--v92-gold-bright);
  font-style: normal;
  border: 1px solid #675537;
  border-radius: 10px;
  background: #201c14;
}
.v-catalog-icon svg { width: 17px; height: 17px; stroke-width: 1.6; }
.v-catalog-arrow {
  position: absolute;
  top: 16px;
  right: 14px;
  width: 17px;
  height: 17px;
  color: #c8b586;
  stroke-width: 1.5;
}
.v-catalog-copy {
  display: block;
  min-width: 0;
  width: 100%;
  margin-top: auto;
}
.v-catalog-copy strong {
  display: block;
  color: var(--v92-ivory);
  font-size: 15px;
  font-weight: 660;
  line-height: 1.12;
  letter-spacing: -.02em;
}
.v-catalog-copy small {
  display: -webkit-box;
  margin-top: 5px;
  overflow: hidden;
  color: var(--v92-muted) !important;
  font-size: 12px;
  line-height: 1.25;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.v-catalog-card-map { padding-bottom: 23px; }
.v-catalog-progress {
  position: absolute;
  right: 14px;
  bottom: 11px;
  left: 14px;
  height: 3px;
  overflow: hidden;
  border-radius: 3px;
  background: #332e24;
}
.v-catalog-progress > i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #a78348, #e0c486);
}
.v-catalog-card-shift {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 12px;
  height: 72px;
  padding: 11px 14px;
}
.v-catalog-card-shift .v-catalog-copy { margin: 0; }
.v-catalog-card-shift .v-catalog-arrow {
  position: static;
  justify-self: end;
}
.v-home-screen > .v-global-route-map { margin-top: 11px; }
.v-home-screen .v-home-route-disclosure {
  border-color: var(--v92-line) !important;
  background: #10110e !important;
}
.v-home-screen .v-home-route-disclosure svg { color: #c8b586; }
.v-home-screen .v-global-route-plan > button { border-color: var(--v92-line) !important; background: var(--v92-panel) !important; }
.v-home-screen .v-global-route-plan > button.active { border-color: var(--v92-line-strong) !important; background: #1e1b14 !important; }

@media (max-width: 360px) {
  .v-home-screen > .v-home-featured-route { height: 190px; min-height: 190px !important; }
  .v-home-screen > .v-home-catalog { gap: 8px; }
  .v-catalog-card { height: 126px; padding: 12px; }
  .v-catalog-arrow { top: 14px; right: 12px; }
  .v-catalog-copy strong { font-size: 14px; }
  .v-catalog-copy small { font-size: 11px; }
  .v-catalog-card-map { padding-bottom: 21px; }
  .v-catalog-progress { right: 12px; bottom: 10px; left: 12px; }
  .v-catalog-card-shift { height: 68px; padding: 10px 12px; }
}

/* V110 — единая чёрно-золотая редакционная система по утверждённым макетам. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-ref-bg: #050604;
  --v-ref-panel: #0e0f0c;
  --v-ref-panel-2: #15150f;
  --v-ref-line: #373126;
  --v-ref-line-strong: #68583a;
  --v-ref-gold: #b99a61;
  --v-ref-gold-light: #d7c08c;
  --v-ref-ivory: #f1ede5;
  --v-ref-muted: #9d9990;
  --v-ref-cta: #e8dece;
  color: var(--v-ref-ivory);
  background: var(--v-ref-bg) !important;
}

.v-app .v-header {
  box-sizing: border-box;
  min-height: 72px;
  padding: max(10px, env(safe-area-inset-top)) 14px 9px;
  border-bottom: 1px solid #1b1a16;
  background: #050604f5 !important;
}
.v-app .v-header-center { gap: 4px; }
.v-app .v-header-center h1 {
  color: var(--v-ref-ivory) !important;
  font-size: 22px;
  font-weight: 650;
  letter-spacing: -.035em;
}
.v-app .v-header-badge {
  min-height: 20px;
  padding: 3px 9px;
  color: #baa985 !important;
  border: 1px solid #403728 !important;
  background: #0e0f0c !important;
  font-size: 9px;
}
.v-app .v-menu,
.v-app .v-profile-trigger {
  width: 42px;
  height: 42px;
  color: var(--v-ref-ivory) !important;
  border-color: #685a40 !important;
  background: #0a0b09 !important;
}
.v-app .v-main { background: var(--v-ref-bg) !important; }
.v-app .v-screen { color: var(--v-ref-ivory); }
.v-app .v-screen :is(p, small) { color: var(--v-ref-muted); }
.v-app :is(button, a):focus-visible,
.v-start-screen button:focus-visible,
.v-quiz-shell button:focus-visible {
  outline: 2px solid var(--v-ref-gold-light) !important;
  outline-offset: 2px;
}

/* Основные действия — светлая шампань вместо ярко-жёлтого. */
.v-app :is(.v-primary, .v-route-page-next, .v-route-shift-cta, .v-map-continue, .v-weekly-continue, .v-purchase-cta, .v-environment-banner-cta, .v-fragment-subscribe),
.v-start-screen .v-start-cta,
.v-quiz-shell :is(.v-quiz-cta, .v-quiz-question-next) {
  color: #17130d !important;
  border: 1px solid #d2bd94 !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, #eee6d9 0%, #c9ad78 100%) !important;
  box-shadow: inset 0 1px #fffaf0a8 !important;
}

/* Главная: маршрут, быстрые разделы, продолжение и каталог строками. */
.v-home-screen {
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  padding-bottom: 20px;
}
.v-home-screen > .v-home-featured-route {
  order: 0 !important;
  box-sizing: border-box;
  height: 190px;
  min-height: 190px !important;
  padding: 18px 19px !important;
  overflow: hidden;
  border: 1px solid #5c4c33 !important;
  border-radius: 14px !important;
  background: #0d0e0c !important;
  box-shadow: inset 0 1px #f7ddb718, 0 14px 34px #0005;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #080907 0%, #080907eb 38%, #08090772 63%, #08090708 100%) !important;
}
.v-home-featured-route.v-photo-hero > .v-hero-photo {
  object-position: 65% center !important;
  filter: grayscale(.55) sepia(.1) brightness(.8) contrast(1.08) !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy {
  width: min(66%, 245px) !important;
  height: 100%;
  justify-content: flex-start !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy > span {
  color: var(--v-ref-gold-light) !important;
  font-size: 9px !important;
  font-weight: 700;
  letter-spacing: .11em;
}
.v-home-screen .v-home-featured-route .v-hero-copy h2 {
  max-width: 11ch !important;
  margin: auto 0 13px !important;
  color: var(--v-ref-ivory) !important;
  font-size: clamp(27px, 7.2vw, 33px) !important;
  font-weight: 690;
  line-height: .98 !important;
  letter-spacing: -.05em;
}
.v-home-screen .v-home-featured-route .v-home-resume {
  width: max-content !important;
  min-height: 39px !important;
  margin: 0 !important;
  padding: 0 13px !important;
  color: #16130e !important;
  border-color: #d3be96 !important;
  border-radius: 9px !important;
  background: linear-gradient(135deg, #eee6da, #c8ac77) !important;
  font-size: 12px;
  font-weight: 740;
}

.v-home-quick-nav {
  order: 1;
  margin: 10px 0 22px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}
.v-home-quick-nav > button {
  box-sizing: border-box;
  min-width: 0;
  min-height: 34px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #b9ae96;
  border: 1px solid #363127;
  border-radius: 999px;
  background: #0d0e0c;
  font-size: 10px;
  white-space: nowrap;
}
.v-home-quick-nav > button:first-child {
  color: var(--v-ref-gold-light);
  border-color: #655437;
  background: #18150f;
}
.v-home-quick-nav svg { width: 14px; height: 14px; stroke-width: 1.65; }

.v-home-continue-section { order: 2; margin-bottom: 22px; }
.v-home-continue-section > header,
.v-home-menu > header {
  margin: 0 2px 10px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.v-home-continue-section > header h3,
.v-home-menu > header h3 {
  margin: 0;
  color: var(--v-ref-ivory);
  font-size: 19px;
  font-weight: 680;
  line-height: 1.1;
  letter-spacing: -.035em;
}
.v-home-continue-section > header button,
.v-home-menu > header button {
  padding: 4px 0 4px 8px;
  color: #bca776;
  border: 0;
  background: transparent;
  font-size: 10px;
}
.v-home-continue-item {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 72px;
  padding: 9px 13px 13px 9px;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 11px;
  color: var(--v-ref-ivory);
  text-align: left;
  border: 1px solid var(--v-ref-line);
  border-radius: 12px;
  background: linear-gradient(135deg, #141510, #0d0e0c);
}
.v-home-continue-icon {
  width: 54px;
  height: 50px;
  display: grid;
  place-items: center;
  color: var(--v-ref-gold-light);
  border: 1px solid #4a402f;
  border-radius: 9px;
  background: radial-gradient(circle at 50% 30%, #282217, #10110e 72%);
  font-style: normal;
}
.v-home-continue-icon svg { width: 21px; height: 21px; }
.v-home-continue-copy { min-width: 0; }
.v-home-continue-copy strong,
.v-home-continue-copy small { display: block; }
.v-home-continue-copy strong {
  overflow: hidden;
  color: var(--v-ref-ivory);
  font-size: 13px;
  line-height: 1.18;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-home-continue-copy small { margin-top: 5px; color: #8f8b82 !important; font-size: 9px; }
.v-home-continue-item > svg { width: 16px; height: 16px; color: #b6a47b; }
.v-home-continue-progress {
  position: absolute;
  right: 42px;
  bottom: 8px;
  left: 77px;
  height: 2px;
  overflow: hidden;
  border-radius: 2px;
  background: #302c23;
}
.v-home-continue-progress > i,
.v-home-menu-progress > i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #977743, #d6bd86); }

.v-home-menu { order: 3; }
.v-home-menu-list {
  overflow: hidden;
  border: 1px solid var(--v-ref-line);
  border-radius: 14px;
  background: #0d0f0d;
}
.v-home-menu-item.v-catalog-card {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 64px;
  padding: 10px 13px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 11px;
  color: var(--v-ref-ivory);
  text-align: left;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.v-home-menu-item.v-catalog-card + .v-home-menu-item.v-catalog-card { border-top: 1px solid #292821; }
.v-home-menu-item.v-catalog-card:hover,
.v-home-menu-item.v-catalog-card:active { border-color: transparent; background: #171711; transform: none; }
.v-home-menu-item > i {
  box-sizing: border-box;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: var(--v-ref-gold-light);
  border: 1px solid #4b412f;
  border-radius: 9px;
  background: #181711;
  font-style: normal;
}
.v-home-menu-item > i svg { width: 17px; height: 17px; stroke-width: 1.6; }
.v-home-menu-item > span { min-width: 0; }
.v-home-menu-item > span > strong,
.v-home-menu-item > span > small { display: block; }
.v-home-menu-item > span > strong {
  overflow: hidden;
  color: var(--v-ref-ivory);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-home-menu-item > span > small {
  overflow: hidden;
  margin-top: 4px;
  color: #8f8b83 !important;
  font-size: 9px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-home-menu-item > svg { width: 16px; height: 16px; color: #a99b7b; }
.v-home-menu-map { padding-bottom: 15px !important; }
.v-home-menu-progress.v-catalog-progress {
  position: absolute;
  right: 43px;
  bottom: 7px;
  left: 62px;
  height: 2px;
  overflow: hidden;
  border-radius: 2px;
  background: #302c23;
}
.v-home-screen > .v-global-route-map { order: 4 !important; margin-top: 11px; }
.v-home-screen .v-home-route-disclosure {
  min-height: 54px;
  padding: 11px 14px;
  border-color: var(--v-ref-line) !important;
  border-radius: 12px;
  background: #0c0d0b !important;
}

/* V-канал: короткий hero, три фильтра и редакционные списки. */
.v-channel-home-hero {
  min-height: 190px !important;
  padding: 19px !important;
  grid-template-columns: minmax(0, 1fr) 44% !important;
  border-color: #5c4c33 !important;
  border-radius: 14px !important;
  background:
    linear-gradient(90deg, #080907 0%, #080907ed 41%, #08090762 70%, #08090705 100%),
    url('/media/v-route-mindset-v117.webp') 68% center / cover no-repeat !important;
  box-shadow: inset 0 1px #f7ddb714, 0 14px 34px #0004;
}
.v-channel-home-hero small { margin-bottom: 7px !important; color: var(--v-ref-gold-light) !important; font-size: 9px !important; }
.v-channel-home-hero h2 { margin: 0 0 6px !important; color: var(--v-ref-ivory) !important; font-size: clamp(26px, 7vw, 32px) !important; }
.v-channel-home-hero span { color: #969187 !important; font-size: 9px !important; }
.v-channel-home-hero button {
  min-height: 36px !important;
  margin-top: 14px !important;
  padding: 0 13px !important;
  color: #eadfc9 !important;
  border-color: #705b38 !important;
  border-radius: 9px !important;
  background: #11110ddd !important;
  font-size: 11px !important;
}
.v-channel-home-art { opacity: 0; }
.v-channel-shortcuts {
  margin: 10px 0 20px;
  display: grid;
  grid-template-columns: 1.08fr .76fr 1fr;
  gap: 7px;
}
.v-channel-shortcuts > button {
  min-width: 0;
  min-height: 34px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  overflow: hidden;
  color: #a9a297;
  border: 1px solid #343027;
  border-radius: 999px;
  background: #0e0f0c;
  font-size: 9px;
  white-space: nowrap;
}
.v-channel-shortcuts > button.active { color: var(--v-ref-gold-light); border-color: #665537; background: #18150f; }
.v-channel-shortcuts > button:disabled { opacity: .48; }
.v-channel-shortcuts svg { width: 13px; height: 13px; }
.v-channel-catalog,
.v-saved-fragments,
.v-library-group { border-color: var(--v-ref-line) !important; background: #0d0f0d !important; }
.v-channel-catalog > header > div > span,
.v-library-group > header > span { color: var(--v-ref-gold-light) !important; }
.v-channel-catalog > header h3,
.v-saved-fragments h3 { color: var(--v-ref-ivory) !important; }
.v-channel-library-controls :is(label, select) {
  color: #c4beb2 !important;
  border-color: #39342a !important;
  background: #11120f !important;
}
.v-channel-material-list > button,
.v-public-material-list > :is(button, article),
.v-curated-channel .v-library-list > button {
  min-height: 64px !important;
  border-color: #2d2b24 !important;
  background: #10110e !important;
}
.v-channel-material-list > button > i,
.v-public-material-list > :is(button, article) > i { color: var(--v-ref-gold-light) !important; border-color: #4b412f !important; background: #191711 !important; }

/* Бесплатный старт и превью материалов используют ту же бронзу. */
.v-library-page.is-starter-mode,
.v-library-page.is-starter-mode .v-starter-pack,
.v-purchase-page.v-concept-purchase.has-article-preview { background: var(--v-ref-bg) !important; }
.v-starter-pack .v-starter-topbar > button,
.v-article-preview-topbar > button {
  color: var(--v-ref-ivory) !important;
  border-color: #66563d !important;
  background: #090a08bd !important;
}
.v-starter-topbar > div small,
.v-library-page.is-starter-mode .v-starter-pack > header > span { color: var(--v-ref-gold-light) !important; }
.v-starter-topbar > div small { border-color: #665337 !important; background: #0b0c09cc !important; }
.v-library-page.is-starter-mode .v-starter-pack > header {
  min-height: 330px !important;
  padding: 154px 20px 32px !important;
  background:
    linear-gradient(180deg, #0000000a 0%, #00000024 44%, var(--v-ref-bg) 100%),
    linear-gradient(90deg, #030403f5 0%, #030403a3 48%, #0304031d 100%),
    url('/media/vay-personal-brand.jpg') 70% 34% / cover no-repeat !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > strong { color: var(--v-ref-ivory) !important; }
.v-starter-pack > .v-starter-materials {
  border-color: var(--v-ref-line) !important;
  background: linear-gradient(180deg, #12130fff, #090a08ff) !important;
}
.v-starter-pack > .v-starter-materials > button { min-height: 67px !important; border-bottom-color: #29271f !important; }
.v-starter-pack > .v-starter-materials > button > i {
  color: var(--v-ref-gold-light) !important;
  border-color: #4f432f !important;
  background: radial-gradient(circle at 55% 30%, #282116, #11120e 72%) !important;
}
.v-starter-pack > .v-starter-materials > button > em {
  color: #19150e !important;
  background: #d7c08e !important;
}
.v-starter-pack > .v-starter-materials > button.is-locked > em {
  color: #c8b992 !important;
  border-color: #544832 !important;
  background: #12130f !important;
}
.v-starter-pack > .v-starter-primary,
.v-article-unlock {
  color: #17130d !important;
  border: 1px solid #d2bd94 !important;
  background: linear-gradient(135deg, #eee6d9, #c9ad78) !important;
}
.v-starter-flow:before { background: #49402f !important; }
.v-starter-flow > :is(button, span) > i { color: #a9936c !important; border-color: #504631 !important; background: #090a08 !important; }
.v-starter-flow > .active { color: #e5d9c4 !important; }
.v-starter-flow > .active > i { color: #17130d !important; border-color: #cbb17e !important; background: #cbb17e !important; }

.v-article-preview .v-locked-article-hero {
  filter: grayscale(.35) sepia(.08) brightness(.82) !important;
  background:
    linear-gradient(180deg, #00000008 0%, #00000012 56%, var(--v-ref-bg) 100%),
    url('/media/vay-personal-brand.jpg') center 26% / cover no-repeat !important;
}
.v-article-free-pill,
.v-article-route-label { color: var(--v-ref-gold-light) !important; }
.v-article-free-pill { border-color: #665439 !important; background: #11120e !important; }
.v-article-insight,
.v-article-locked-body,
.v-locked-preview-card {
  border-color: var(--v-ref-line) !important;
  background: #0f100d !important;
}
.v-article-preview .v-article-insight :is(svg, strong),
.v-article-locked-body > header > svg,
.v-article-preview .v-locked-article-takeaways article > i { color: var(--v-ref-gold-light) !important; }
.v-article-preview .v-locked-article-takeaways article > i { border-color: #4b402e !important; background: #181711 !important; }

/* Карта, итоги, подписка и среда — одинаковые панели и акценты. */
.v-map-cover,
.v-weekly-workspace .v-weekly-review,
.v-purchase-offer,
.v-access-feature-rail,
.v-environment-concept-hero,
.v-environment-today,
.v-environment-question,
.v-profile-hero,
.v-subscription-card {
  border-color: var(--v-ref-line) !important;
  background-color: var(--v-ref-panel) !important;
}
.v-map-cover {
  min-height: 225px !important;
  border-color: #5b4b32 !important;
  background:
    linear-gradient(90deg, #080907 8%, #080907d1 55%, #0809071c 100%),
    url('/media/v-route-mindset-v117.webp') 72% 33% / cover no-repeat !important;
}
.v-map-cover :is(span, small),
.v-result-route-map > header > small,
.v-route-map-context :is(small, span),
.v-map-workspace-guide > span { color: var(--v-ref-gold-light) !important; }
.v-result-route-map.v-video-route-map {
  border-color: var(--v-ref-line) !important;
  background: #090a08 !important;
}
.v-route-map-context article,
.v-map-workspace-guide { border-color: var(--v-ref-line) !important; background: #11120f !important; }
.v-result-route-track.v-video-route-days:before { background: #50452f !important; }
.v-video-route-days .v-video-route-day { color: #c9b17e !important; border-color: #5f5035 !important; background: #10110e !important; }
.v-video-route-days button.current > .v-video-route-day,
.v-video-route-days button.completed > .v-video-route-day { color: #17130d !important; border-color: #cbb17e !important; background: #cbb17e !important; }

.v-weekly-workspace .v-weekly-review {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 21px 15px !important;
  border-color: #594a32 !important;
  background: radial-gradient(circle at 84% 10%, #8d71372b, transparent 39%), #090a08 !important;
}
.v-weekly-review > header small,
.v-weekly-progress :is(b, span) { color: var(--v-ref-gold-light) !important; }
.v-weekly-review-metrics { border-color: #302d25 !important; }
.v-weekly-review-metrics article { border-right-color: #302d25 !important; }
.v-weekly-workspace .v-weekly-review-metrics strong { color: #e5d5b4 !important; }
.v-weekly-review-insights article { border-bottom-color: #2b2922 !important; }
.v-weekly-review-insights article > i { color: var(--v-ref-gold-light) !important; border-color: #594a32 !important; }

.v-purchase-page.v-concept-purchase:before {
  background:
    linear-gradient(180deg, #00000014, var(--v-ref-bg) 96%),
    url('/media/vay-personal-brand.jpg') center 36% / cover no-repeat !important;
  filter: grayscale(.2) sepia(.05) brightness(.62) contrast(1.08) !important;
}
.v-concept-purchase .v-purchase-intro > div > span:last-child,
.v-lifetime-tariff > span > small { color: var(--v-ref-gold-light) !important; }
.v-purchase-offer { border-color: #5a4931 !important; background: linear-gradient(180deg, #12120e, #090a08) !important; }
.v-purchase-benefits p { border-bottom-color: #2d2a23 !important; }
.v-purchase-benefits p > svg { color: var(--v-ref-gold-light) !important; }

.v-environment-concept-hero {
  border-color: #594a32 !important;
  background:
    linear-gradient(90deg, #050604f2, #05060478 68%, #0506041c),
    url('/media/v-opportunities-hero-hq.png') 68% center / cover no-repeat !important;
}
.v-environment-concept-hero :is(small, .v-environment-status),
.v-environment-today header small,
.v-environment-question small { color: var(--v-ref-gold-light) !important; }
.v-environment-status { border-color: #66543a !important; background: #0b0c09cc !important; }
.v-environment-today { background: #0e0f0c !important; }
.v-environment-today > button { border-bottom-color: #2c2a22 !important; }
.v-environment-today > button > i { color: var(--v-ref-gold-light) !important; border-color: #4e432f !important; background-color: #181711 !important; }
.v-environment-question { background: radial-gradient(circle at 85% 20%, #a17c3924, transparent 36%), #10110d !important; }

/* Вход и нижняя навигация завершают ту же систему. */
.v-concept-start:before { background: radial-gradient(circle at 72% 20%, #8c71362a, transparent 31%), linear-gradient(180deg, #060706, var(--v-ref-bg) 72%) !important; }
.v-start-hero-art {
  background:
    linear-gradient(180deg, #00000008 24%, #05060466 66%, var(--v-ref-bg) 100%),
    url('/media/v-launch-frame.jpg') center 42% / cover no-repeat !important;
}
.v-concept-start .v-start-intro > small,
.v-concept-start .v-start-steps > li > span { color: var(--v-ref-gold-light) !important; }
.v-concept-start .v-start-steps > li { border-color: var(--v-ref-line) !important; background: linear-gradient(100deg, #ffffff08, #ffffff02) !important; }
.v-concept-start .v-start-steps > li > span { border-color: #645338 !important; }

.v-bottom-nav {
  border-top: 1px solid #302a20 !important;
  background: #080907f8 !important;
  box-shadow: 0 -12px 34px #0007 !important;
}
.v-bottom-nav button { color: #8d8981 !important; }
.v-bottom-nav button.active,
.v-bottom-nav button.active > span,
.v-bottom-nav button.active svg { color: var(--v-ref-gold-light) !important; }
.v-bottom-nav button.active > i { background: var(--v-ref-gold) !important; }

@media (max-width: 360px) {
  .v-home-screen > .v-home-featured-route { height: 182px; min-height: 182px !important; padding: 16px !important; }
  .v-home-screen .v-home-featured-route .v-hero-copy { width: 72% !important; }
  .v-home-screen .v-home-featured-route .v-hero-copy h2 { font-size: 26px !important; }
  .v-home-quick-nav,
  .v-channel-shortcuts { gap: 5px; }
  .v-home-quick-nav > button,
  .v-channel-shortcuts > button { padding-inline: 5px; font-size: 8px; }
  .v-home-menu-item.v-catalog-card { padding-inline: 11px; gap: 9px; }
  .v-home-continue-item { grid-template-columns: 50px minmax(0, 1fr) 16px; gap: 9px; }
  .v-home-continue-icon { width: 48px; height: 46px; }
  .v-library-page.is-starter-mode .v-starter-pack > header { min-height: 315px !important; padding-top: 145px !important; }
}

/* V111 — точная плотность и пропорции мобильных референсов. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-ref-bg: #030403;
  --v-ref-panel: #0b0d0b;
  --v-ref-panel-2: #11120e;
  --v-ref-line: #3b3428;
  --v-ref-line-strong: #655438;
  --v-ref-gold: #a98b58;
  --v-ref-gold-light: #c8b183;
  --v-ref-ivory: #efebe3;
  --v-ref-muted: #918d85;
  --side: 8px;
}

.v-app .v-main {
  padding: 7px 8px calc(80px + env(safe-area-inset-bottom)) !important;
}
.v-app .v-screen {
  gap: 10px !important;
  padding-inline: 0 !important;
}
.v-app .v-header {
  min-height: 78px;
  padding: max(12px, env(safe-area-inset-top)) 8px 10px;
  grid-template-columns: 46px minmax(0, 1fr) 46px;
  border-bottom-color: #171813;
}
.v-app .v-header :is(.v-menu, .v-profile-trigger) {
  width: 42px;
  height: 42px;
}
.v-app .v-header-center h1 { font-size: 20px !important; font-weight: 690; }
.v-app .v-header-badge { min-height: 18px; padding: 3px 8px; font-size: 9px; }

.v-home-screen > .v-home-featured-route {
  height: 206px;
  min-height: 206px !important;
  padding: 17px 16px !important;
  border-color: #58482f !important;
  border-radius: 12px !important;
  box-shadow: inset 0 1px #ead3a30d !important;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #060706 0%, #060706eb 40%, #0607065e 67%, transparent 100%) !important;
}
.v-home-featured-route.v-photo-hero > .v-hero-photo {
  object-position: 69% center !important;
  filter: grayscale(.62) sepia(.08) brightness(.72) contrast(1.12) !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy { width: min(62%, 250px) !important; }
.v-home-screen .v-home-featured-route .v-hero-copy > span {
  font-size: 10px !important;
  color: #c0a970 !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy h2 {
  margin: auto 0 14px !important;
  font-size: clamp(28px, 7.2vw, 34px) !important;
  line-height: .96 !important;
}
.v-app .v-home-screen .v-home-featured-route .v-home-resume {
  min-height: 36px !important;
  padding: 0 13px !important;
  color: #e7dcc8 !important;
  border: 1px solid #7a633e !important;
  border-radius: 999px !important;
  background: #0a0b09b8 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 640;
}

.v-home-quick-nav {
  margin: 10px 0 17px;
  gap: 6px;
}
.v-home-quick-nav > button {
  min-height: 37px;
  padding: 0 7px;
  color: #a9a397;
  border-color: #393229;
  background: #090b09;
  font-size: 11px;
}
.v-home-quick-nav > button:first-child {
  color: #d3bd8f;
  border-color: #6d5938;
  background: linear-gradient(90deg, #241d12, #11120e);
}

.v-home-continue-section { margin-bottom: 17px; }
.v-home-continue-section > header,
.v-home-menu > header { margin: 0 1px 9px; }
.v-home-continue-section > header h3,
.v-home-menu > header h3 { font-size: 18px; font-weight: 700; }
.v-home-continue-section > header button,
.v-home-menu > header button { color: #c2aa74; font-size: 11px; }
.v-home-continue-item {
  min-height: 70px;
  padding: 6px 12px 10px 7px;
  grid-template-columns: 92px minmax(0, 1fr) 16px;
  gap: 10px;
  border-color: #393328;
  border-radius: 11px;
  background: #0b0d0b;
}
.v-home-continue-icon {
  position: relative;
  width: 90px;
  height: 56px;
  color: #eadfc9;
  border: 0;
  border-radius: 8px;
  background:
    linear-gradient(90deg, #0506051f, #05060573),
    url('/media/v-route-mindset-v117.webp') 73% center / cover no-repeat;
  overflow: hidden;
}
.v-home-continue-icon:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #05060505, #05060570);
}
.v-home-continue-icon svg {
  position: relative;
  z-index: 1;
  box-sizing: content-box;
  width: 16px;
  height: 16px;
  padding: 7px;
  border: 1px solid #e2d8c7;
  border-radius: 50%;
  background: #070806a8;
}
.v-home-continue-copy strong { font-size: 14px; }
.v-home-continue-copy small { margin-top: 4px; font-size: 11px; }
.v-home-continue-progress { right: 40px; bottom: 8px; left: 109px; background: #353128; }

.v-home-menu-list {
  border-color: #3c3528;
  border-radius: 12px;
  background: #0b0d0b;
}
.v-home-menu-item.v-catalog-card {
  min-height: 58px;
  padding: 9px 12px;
  grid-template-columns: 38px minmax(0, 1fr) 16px;
  gap: 10px;
}
.v-home-menu-item.v-catalog-card + .v-home-menu-item.v-catalog-card { border-top-color: #282821; }
.v-home-menu-item > i {
  width: 37px;
  height: 37px;
  color: #c4ad7a;
  border-color: #51442f;
  border-radius: 8px;
  background: #14150f;
}
.v-home-menu-item > span > strong { font-size: 14px; }
.v-home-menu-item > span > small { margin-top: 3px; font-size: 11px; }
.v-home-menu-item > svg { color: #b4a276; }
.v-home-menu-map { padding-bottom: 13px !important; }
.v-home-menu-progress.v-catalog-progress { right: 40px; bottom: 6px; left: 60px; background: #343027; }
.v-home-screen > .v-global-route-map { margin-top: 9px; }
.v-home-screen .v-home-route-disclosure { min-height: 50px; border-radius: 11px; }

/* V-канал повторяет композицию референса: hero → вкладки → продолжить → подборки. */
.v-channel-home-hero {
  min-height: 208px !important;
  padding: 17px 16px !important;
  border-color: #58482f !important;
  border-radius: 12px !important;
  background:
    linear-gradient(90deg, #060706 0%, #060706e8 42%, #06070656 70%, transparent 100%),
    url('/media/v-route-mindset-v117.webp') 70% center / cover no-repeat !important;
  box-shadow: inset 0 1px #ead3a30d !important;
}
.v-channel-home-hero small { color: #c0a970 !important; font-size: 10px !important; }
.v-channel-home-hero h2 { font-size: clamp(28px, 7.2vw, 34px) !important; line-height: .96 !important; }
.v-channel-home-hero span { font-size: 11px !important; }
.v-channel-home-hero button {
  min-height: 36px !important;
  color: #e7dcc8 !important;
  border-color: #7a633e !important;
  border-radius: 999px !important;
  background: #0a0b09b8 !important;
  box-shadow: none !important;
  font-size: 12px !important;
}
.v-channel-shortcuts {
  margin: 9px 0 17px;
  gap: 6px;
}
.v-channel-shortcuts > button {
  min-height: 37px;
  padding: 0 7px;
  color: #a9a397;
  border-color: #393229;
  background: #090b09;
  font-size: 11px;
}
.v-channel-shortcuts > button.active {
  color: #d3bd8f;
  border-color: #6d5938;
  background: linear-gradient(90deg, #241d12, #11120e);
}
.v-channel-resume,
.v-channel-collections { display: grid; gap: 9px; }
.v-channel-resume { margin-bottom: 16px; }
.v-channel-collections { margin-bottom: 18px; }
.v-channel-resume > header,
.v-channel-collections > header {
  margin: 0 1px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.v-channel-resume > header h3,
.v-channel-collections > header h3 {
  margin: 0;
  color: var(--v-ref-ivory);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -.03em;
}
.v-channel-resume > header button,
.v-channel-collections > header button {
  padding: 3px 0 3px 8px;
  color: #a9a297;
  border: 0;
  background: transparent;
  font-size: 11px;
}
.v-channel-resume-card {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 70px;
  padding: 7px 34px 10px 104px;
  color: var(--v-ref-ivory);
  text-align: left;
  border: 1px solid #393328;
  border-radius: 11px;
  background: #0b0d0b;
}
.v-channel-resume-card > i:first-child {
  position: absolute;
  top: 7px;
  bottom: 7px;
  left: 7px;
  width: 88px;
  display: grid;
  place-items: center;
  color: #eadfc9;
  border-radius: 8px;
  background:
    linear-gradient(90deg, #0506051f, #05060573),
    url('/media/v-route-mindset-v117.webp') 73% center / cover no-repeat;
  font-style: normal;
}
.v-channel-resume-card > i:first-child svg {
  box-sizing: content-box;
  width: 16px;
  height: 16px;
  padding: 7px;
  border: 1px solid #e2d8c7;
  border-radius: 50%;
  background: #070806a8;
}
.v-channel-resume-card > span:not(.v-channel-resume-progress) { display: block; min-width: 0; }
.v-channel-resume-card strong,
.v-channel-resume-card small { display: block; }
.v-channel-resume-card strong {
  overflow: hidden;
  color: var(--v-ref-ivory);
  font-size: 14px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v-channel-resume-card small { margin-top: 4px; color: #918d85 !important; font-size: 11px; }
.v-channel-resume-card > em {
  position: absolute;
  top: 10px;
  right: 11px;
  color: #9e978a;
  font-size: 12px;
  font-style: normal;
  letter-spacing: 1px;
}
.v-channel-resume-progress {
  position: absolute;
  right: 12px;
  bottom: 8px;
  left: 105px;
  height: 2px;
  overflow: hidden;
  border-radius: 2px;
  background: #343027;
}
.v-channel-resume-progress > i { display: block; height: 100%; background: #c3aa73; }

.v-channel-collections > div {
  overflow: hidden;
  border: 1px solid #3c3528;
  border-radius: 12px;
  background: #0b0d0b;
}
.v-channel-collections > div > button {
  box-sizing: border-box;
  width: 100%;
  min-height: 58px;
  padding: 9px 12px;
  display: grid;
  grid-template-columns: 37px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 10px;
  color: var(--v-ref-ivory);
  text-align: left;
  border: 0;
  background: transparent;
}
.v-channel-collections > div > button + button { border-top: 1px solid #282821; }
.v-channel-collections > div > button > i {
  width: 37px;
  height: 37px;
  display: grid;
  place-items: center;
  color: #c4ad7a;
  border: 1px solid #51442f;
  border-radius: 8px;
  background: #14150f;
  font-style: normal;
}
.v-channel-collections > div > button > i svg { width: 17px; height: 17px; }
.v-channel-collections > div > button > span { min-width: 0; }
.v-channel-collections > div > button strong,
.v-channel-collections > div > button small { display: block; }
.v-channel-collections > div > button strong { color: var(--v-ref-ivory); font-size: 14px; }
.v-channel-collections > div > button small { margin-top: 3px; color: #918d85 !important; font-size: 11px; }
.v-channel-collections > div > button > svg { width: 16px; height: 16px; color: #b4a276; }
.v-channel-catalog { margin-top: 4px; }

/* Бесплатный старт: белая CTA и спокойные золотистые метки, как в макете. */
.v-app:has(.v-library-page.is-starter-mode) .v-main,
.v-app:has(.v-concept-purchase.has-article-preview) .v-main { padding: 0 !important; }
.v-library-page.is-starter-mode .v-starter-pack > header {
  min-height: 356px !important;
  padding: 166px 18px 34px !important;
}
.v-starter-pack > .v-starter-materials { margin-inline: 10px; border-radius: 11px; }
.v-starter-pack > .v-starter-materials > button { min-height: 64px !important; }
.v-starter-pack > .v-starter-materials > button > em {
  color: #1b1812 !important;
  background: #d1bb91 !important;
}
.v-starter-pack > .v-starter-materials > button.is-locked > em {
  color: #c4b58f !important;
  background: #11120e !important;
}
.v-app .v-starter-pack > .v-starter-primary {
  width: calc(100% - 20px) !important;
  min-height: 48px !important;
  margin: 10px 10px 0 !important;
  color: #11120f !important;
  border: 1px solid #efeee9 !important;
  border-radius: 11px !important;
  background: #efeee9 !important;
  box-shadow: none !important;
}

.v-bottom-nav {
  height: calc(72px + env(safe-area-inset-bottom)) !important;
  padding: 6px 8px env(safe-area-inset-bottom) !important;
  border-top-color: #28231a !important;
  background: #060706fa !important;
  box-shadow: 0 -10px 28px #0008 !important;
}
.v-bottom-nav button { gap: 4px; }
.v-bottom-nav svg { width: 21px !important; height: 21px !important; }
.v-bottom-nav button > span:not(.v-ai-nav-mark) { font-size: 10px !important; }
.v-bottom-nav button.active,
.v-bottom-nav button.active > span,
.v-bottom-nav button.active svg { color: #c7b17e !important; }
.v-bottom-nav button.active > i { width: 25px !important; background: #b99b64 !important; }

@media (max-width: 360px) {
  .v-app .v-main { padding-inline: 7px !important; }
  .v-app .v-header { padding-inline: 7px; }
  .v-home-screen > .v-home-featured-route,
  .v-channel-home-hero { min-height: 192px !important; height: 192px; padding: 15px !important; }
  .v-home-screen .v-home-featured-route .v-hero-copy h2,
  .v-channel-home-hero h2 { font-size: 27px !important; }
  .v-home-quick-nav > button,
  .v-channel-shortcuts > button { font-size: 10px; }
  .v-home-continue-item { grid-template-columns: 78px minmax(0, 1fr) 15px; }
  .v-home-continue-icon { width: 76px; }
  .v-home-continue-progress { left: 95px; }
  .v-channel-resume-card { padding-left: 91px; }
  .v-channel-resume-card > i:first-child { width: 75px; }
  .v-channel-resume-progress { left: 92px; }
  .v-library-page.is-starter-mode .v-starter-pack > header { min-height: 330px !important; padding-top: 152px !important; }
}

/* V112 — палитра, снятая непосредственно с утверждённого референса. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v-ref-bg: #000000;
  --v-ref-panel: #090a0c;
  --v-ref-panel-2: #111213;
  --v-ref-line: #2f2e2c;
  --v-ref-line-strong: #534539;
  --v-ref-gold: #877669;
  --v-ref-gold-light: #cbb8a8;
  --v-ref-ivory: #f1f0ed;
  --v-ref-muted: #8e8d8c;
  --v92-bg: #000000;
  --v92-panel: #090a0c;
  --v92-panel-raised: #111213;
  --v92-line: #2f2e2c;
  --v92-line-strong: #534539;
  --v92-gold: #877669;
  --v92-gold-bright: #cbb8a8;
  --v92-ivory: #f1f0ed;
  --v92-muted: #8e8d8c;
  --v100-bg: #000000;
  --v100-surface: #090a0c;
  --v100-surface-2: #111213;
  --v100-line: #2f2e2c;
  --v100-muted: #8e8d8c;
  --v100-accent: #877669;
  --v100-accent-bright: #cbb8a8;
  --v102-bg: #000000;
  --v102-panel: #090a0c;
  --v102-panel-2: #111213;
  --v102-line: #2f2e2c;
  --v102-line-warm: #534539;
  --v102-accent: #877669;
  --v102-muted: #8e8d8c;
  --v102-button: #ece9e4;
}

.v-app,
.v-shell,
.v-main,
.v-screen,
.v-trial-preview-screen,
.v-library-page.is-starter-mode,
.v-library-page.is-starter-mode .v-starter-pack,
.v-purchase-page.v-concept-purchase.has-article-preview {
  background-color: #000 !important;
}
.v-app .v-header { background: #000 !important; border-bottom-color: #171717 !important; }
.v-app .v-header :is(.v-menu, .v-profile-trigger) {
  color: #f1f0ed !important;
  border-color: #4e4e4d !important;
  background: #040404 !important;
}
.v-app .v-header-badge {
  color: #aaa5a1 !important;
  border-color: #453a32 !important;
  background: #0b0908 !important;
}
.v-app .v-screen :is(p, small) { color: #8e8d8c; }

.v-app :is(.v-primary, .v-route-page-next, .v-route-shift-cta, .v-map-continue, .v-weekly-continue, .v-purchase-cta, .v-environment-banner-cta, .v-fragment-subscribe),
.v-start-screen .v-start-cta,
.v-quiz-shell :is(.v-quiz-cta, .v-quiz-question-next) {
  color: #111213 !important;
  border-color: #ece9e4 !important;
  background: #ece9e4 !important;
  box-shadow: none !important;
}

.v-home-screen > .v-home-featured-route,
.v-channel-home-hero,
.v-map-cover,
.v-environment-concept-hero {
  border-color: #453a32 !important;
  background-color: #090a0c !important;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #000 0%, #000000ec 40%, #00000060 68%, transparent 100%) !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy > span,
.v-channel-home-hero small,
.v-map-cover :is(span, small),
.v-environment-concept-hero :is(small, .v-environment-status) {
  color: #cbb8a8 !important;
}
.v-app .v-home-screen .v-home-featured-route .v-home-resume,
.v-channel-home-hero button {
  color: #cbb8a8 !important;
  border-color: #6c5d52 !important;
  background: #080706d9 !important;
  box-shadow: none !important;
}

.v-home-quick-nav > button,
.v-channel-shortcuts > button {
  color: #8e8d8c;
  border-color: #2f2e2c;
  background: #090a0c;
}
.v-home-quick-nav > button:first-child,
.v-channel-shortcuts > button.active {
  color: #cbb8a8;
  border-color: #534539;
  background: #221d19;
}

.v-home-continue-item,
.v-home-menu-list,
.v-channel-resume-card,
.v-channel-collections > div,
.v-channel-catalog,
.v-saved-fragments,
.v-library-group,
.v-channel-material-list > button,
.v-public-material-list > :is(button, article),
.v-curated-channel .v-library-list > button,
.v-route-map-context article,
.v-map-workspace-guide,
.v-environment-today,
.v-environment-question,
.v-purchase-offer,
.v-access-feature-rail,
.v-weekly-workspace .v-weekly-review {
  color: #f1f0ed !important;
  border-color: #2f2e2c !important;
  background-color: #090a0c !important;
  background-image: none !important;
}
.v-home-menu-item.v-catalog-card + .v-home-menu-item.v-catalog-card,
.v-channel-collections > div > button + button,
.v-environment-today > button,
.v-purchase-benefits p,
.v-weekly-review-insights article {
  border-color: #242524 !important;
}
.v-home-menu-item > i,
.v-channel-collections > div > button > i,
.v-channel-material-list > button > i,
.v-public-material-list > :is(button, article) > i,
.v-environment-today > button > i,
.v-article-preview .v-locked-article-takeaways article > i {
  color: #cbb8a8 !important;
  border-color: #453a32 !important;
  background: #111213 !important;
}
.v-home-menu-item > svg,
.v-channel-collections > div > button > svg,
.v-channel-resume-card > em { color: #877669 !important; }
.v-home-continue-progress,
.v-home-menu-progress.v-catalog-progress,
.v-channel-resume-progress { background: #2f2e2c !important; }
.v-home-continue-progress > i,
.v-home-menu-progress > i,
.v-channel-resume-progress > i { background: #877669 !important; }

.v-starter-pack .v-starter-topbar > button,
.v-article-preview-topbar > button {
  color: #f1f0ed !important;
  border-color: #4e4e4d !important;
  background: #050505bf !important;
}
.v-starter-topbar > div small,
.v-library-page.is-starter-mode .v-starter-pack > header > span,
.v-article-free-pill,
.v-article-route-label {
  color: #cbb8a8 !important;
}
.v-starter-topbar > div small,
.v-article-free-pill { border-color: #534539 !important; background: #0b0908 !important; }
.v-starter-pack > .v-starter-materials,
.v-article-insight,
.v-article-locked-body,
.v-locked-preview-card {
  border-color: #2f2e2c !important;
  background: #090a0c !important;
}
.v-starter-pack > .v-starter-materials > button { border-bottom-color: #242524 !important; }
.v-starter-pack > .v-starter-materials > button > i,
.v-article-preview .v-locked-article-takeaways article > i {
  color: #cbb8a8 !important;
  border-color: #453a32 !important;
  background: #111213 !important;
}
.v-starter-pack > .v-starter-materials > button > em {
  color: #111213 !important;
  background: #cbb8a8 !important;
}
.v-starter-pack > .v-starter-materials > button.is-locked > em {
  color: #aaa5a1 !important;
  border-color: #453a32 !important;
  background: #090a0c !important;
}
.v-app .v-starter-pack > .v-starter-primary,
.v-article-unlock {
  color: #111213 !important;
  border-color: #ece9e4 !important;
  background: #ece9e4 !important;
  box-shadow: none !important;
}

.v-video-route-days .v-video-route-day,
.v-starter-flow > :is(button, span) > i {
  color: #aaa5a1 !important;
  border-color: #4e4e4d !important;
  background: #090a0c !important;
}
.v-video-route-days button.current > .v-video-route-day,
.v-video-route-days button.completed > .v-video-route-day,
.v-starter-flow > .active > i {
  color: #111213 !important;
  border-color: #cbb8a8 !important;
  background: #cbb8a8 !important;
}
.v-weekly-review > header small,
.v-weekly-progress :is(b, span),
.v-weekly-review-insights article > i,
.v-purchase-benefits p > svg,
.v-concept-purchase .v-purchase-intro > div > span:last-child {
  color: #cbb8a8 !important;
}
.v-weekly-review-insights article > i { border-color: #534539 !important; }

.v-bottom-nav {
  border-top-color: #2f2e2c !important;
  background: #090b0afa !important;
  box-shadow: 0 -10px 28px #000b !important;
}
.v-bottom-nav button { color: #6d6d6c !important; }
.v-bottom-nav button.active,
.v-bottom-nav button.active > span,
.v-bottom-nav button.active svg { color: #cbb8a8 !important; }
.v-bottom-nav button.active > i { background: #877669 !important; }

/* V113 — единый эталонный интерфейс по присланным референсам. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v113-bg: #000;
  --v113-panel: #0b0c0c;
  --v113-panel-raised: #111212;
  --v113-line: #302d2a;
  --v113-accent: #d2bba3;
  --v113-text: #f2f0ed;
  --v113-muted: #8f8b87;
  --v-ref-bg: var(--v113-bg);
  --v-ref-panel: var(--v113-panel);
  --v-ref-panel-2: var(--v113-panel-raised);
  --v-ref-line: var(--v113-line);
  --v-ref-line-strong: rgb(210 187 163 / .38);
  --v-ref-gold: var(--v113-accent);
  --v-ref-gold-light: var(--v113-accent);
  --v-ref-ivory: var(--v113-text);
  --v-ref-muted: var(--v113-muted);
}

.v-app,
.v-shell,
.v-main,
.v-screen { background-color: var(--v113-bg) !important; }

/* Одинаковая шапка и фирменный круг V на всех основных экранах. */
.v-app .v-header {
  min-height: 68px !important;
  height: auto !important;
  padding: max(9px, env(safe-area-inset-top)) 12px 8px !important;
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
  border-bottom: 1px solid #181818 !important;
  background: #000 !important;
}
.v-app .v-header :is(.v-menu, .v-profile-trigger, .v-logo.v-back) {
  box-sizing: border-box;
  width: 40px !important;
  height: 40px !important;
  color: var(--v113-text) !important;
  border: 1px solid rgb(210 187 163 / .42) !important;
  border-radius: 50% !important;
  background: #070707 !important;
  box-shadow: none !important;
}
.v-app .v-profile-trigger { padding: 0 !important; overflow: hidden !important; }
.v-telegram-photo.v-brand-avatar,
.v-profile-avatar .v-brand-avatar {
  background: #111 url('/media/v-channel-logo-v117.webp') 50% 47% / 112% no-repeat !important;
  filter: grayscale(1) contrast(1.02) brightness(.88);
}
.v-app .v-header-center { gap: 4px !important; }
.v-app .v-header-center h1 {
  color: var(--v113-text) !important;
  font-size: 20px !important;
  font-weight: 680 !important;
  letter-spacing: -.035em !important;
}
.v-app .v-header-badge {
  min-height: 18px !important;
  padding: 3px 9px !important;
  color: var(--v113-accent) !important;
  border: 1px solid rgb(210 187 163 / .34) !important;
  background: #0b0b0b !important;
  font-size: 9px !important;
}

/* Единственный акцент: спокойный бежево-золотистый без жёлтых вариаций. */
.v-app :is(
  .v-home-featured-route .v-hero-copy > span,
  .v-channel-home-hero small,
  .v-channel-catalog > header > div > span,
  .v-library-group > header > span,
  .v-environment-concept-hero small,
  .v-environment-status,
  .v-environment-today header small,
  .v-environment-question small,
  .v-map-cover > span,
  .v-map-cover > small,
  .v-weekly-review > header small,
  .v-weekly-progress > span,
  .v-weekly-progress b
) { color: var(--v113-accent) !important; }

.v-app :is(
  .v-home-menu-item > i,
  .v-channel-collections > div > button > i,
  .v-channel-material-list > button > i,
  .v-public-material-list > :is(button, article) > i,
  .v-environment-today > button > i,
  .v-weekly-review-insights article > i
) {
  color: var(--v113-accent) !important;
  border-color: rgb(210 187 163 / .34) !important;
  background: var(--v113-panel-raised) !important;
}

.v-app :is(.v-primary, .v-map-continue, .v-weekly-continue, .v-purchase-cta, .v-environment-question button) {
  color: #141312 !important;
  border-color: #ece9e4 !important;
  background: #ece9e4 !important;
  box-shadow: none !important;
}

/* V-канал: тот же порядок и разделение, что на референсе. */
.v-channel-home-hero {
  position: relative !important;
  isolation: isolate;
  box-sizing: border-box;
  min-height: 202px !important;
  height: 202px !important;
  padding: 18px 17px !important;
  display: block !important;
  overflow: hidden !important;
  border: 1px solid rgb(210 187 163 / .33) !important;
  border-radius: 12px !important;
  background:
    radial-gradient(circle at 76% 50%, rgb(210 187 163 / .10), transparent 31%),
    linear-gradient(105deg, #090a0a 0%, #060707 57%, #0b0a09 100%) !important;
  box-shadow: none !important;
}
.v-channel-home-hero:after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #070808 0 47%, #070808c9 61%, transparent 83%);
}
.v-channel-home-hero > div:first-child {
  position: relative !important;
  z-index: 3 !important;
  width: 62%;
  min-width: 0;
}
.v-channel-home-hero small {
  margin: 0 0 15px !important;
  font-size: 9px !important;
  font-weight: 650 !important;
  letter-spacing: .09em !important;
}
.v-channel-home-hero h2 {
  max-width: 9ch;
  margin: 0 0 7px !important;
  color: var(--v113-text) !important;
  font-size: clamp(26px, 7vw, 32px) !important;
  font-weight: 680 !important;
  line-height: .96 !important;
  letter-spacing: -.045em !important;
}
.v-channel-home-hero span {
  color: var(--v113-muted) !important;
  font-size: 10px !important;
}
.v-channel-home-hero button {
  min-height: 34px !important;
  margin-top: 14px !important;
  padding: 0 13px !important;
  color: var(--v113-text) !important;
  border: 1px solid rgb(210 187 163 / .42) !important;
  border-radius: 999px !important;
  background: #090909d9 !important;
  box-shadow: none !important;
  font-size: 11px !important;
}
.v-channel-home-art {
  position: absolute !important;
  z-index: 0 !important;
  top: 25px;
  right: 18px;
  width: 96px;
  height: 132px;
  display: block !important;
  opacity: 1 !important;
  border: 1px solid rgb(210 187 163 / .30);
  border-radius: 4px 9px 9px 4px;
  background: #111 url('/media/v-channel-logo-v117.webp') 50% 48% / cover no-repeat;
  box-shadow: -12px 12px 25px #000d, inset 2px 0 rgb(210 187 163 / .14);
  transform: perspective(420px) rotateY(-12deg) rotateZ(7deg);
}
.v-channel-home-art:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 7px -12px -7px 12px;
  border: 1px solid #2e2d2b;
  border-radius: 5px;
  background: #111212;
  transform: rotate(5deg);
}
.v-channel-home-art:after {
  content: "";
  position: absolute;
  top: -15%;
  right: -2px;
  width: 1px;
  height: 130%;
  background: linear-gradient(transparent, var(--v113-accent), transparent);
  box-shadow: 0 0 15px rgb(210 187 163 / .36);
}
.v-channel-shortcuts {
  margin: 10px 0 20px !important;
  gap: 7px !important;
}
.v-channel-shortcuts > button,
.v-home-quick-nav > button {
  color: var(--v113-muted) !important;
  border-color: var(--v113-line) !important;
  background: var(--v113-panel) !important;
}
.v-channel-shortcuts > button.active,
.v-home-quick-nav > button:first-child {
  color: var(--v113-accent) !important;
  border-color: rgb(210 187 163 / .40) !important;
  background: rgb(210 187 163 / .10) !important;
}
.v-channel-resume { margin-bottom: 22px !important; }
.v-channel-collections { margin-bottom: 24px !important; }
.v-channel-resume-card,
.v-channel-collections > div,
.v-channel-catalog,
.v-library-group,
.v-saved-fragments {
  border-color: var(--v113-line) !important;
  background: var(--v113-panel) !important;
  box-shadow: none !important;
}
.v-channel-collections > div > button + button,
.v-channel-material-list > button + button { border-top-color: #252525 !important; }
.v-channel-resume-progress,
.v-home-continue-progress,
.v-home-menu-progress.v-catalog-progress { background: #2d2d2c !important; }
.v-channel-resume-progress > i,
.v-home-continue-progress > i,
.v-home-menu-progress > i { background: var(--v113-accent) !important; }

.v-channel-library-controls {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
.v-channel-library-controls > label { grid-column: 1 / -1 !important; }
.v-channel-library-controls :is(label, select) {
  box-sizing: border-box;
  min-height: 44px !important;
  color: #bbb7b2 !important;
  border: 1px solid var(--v113-line) !important;
  border-radius: 12px !important;
  background: #0d0e0d !important;
  box-shadow: none !important;
}
.v-channel-library-controls > label input { color: var(--v113-text) !important; }
.v-channel-library-controls > label svg { color: #777b7c !important; }

.v-channel-overview {
  box-sizing: border-box;
  margin: 0 0 22px;
  padding: 14px;
  border: 1px solid var(--v113-line);
  border-radius: 12px;
  background: var(--v113-panel);
}
.v-channel-overview > header { margin-bottom: 11px; }
.v-channel-overview > header small {
  color: var(--v113-accent) !important;
  font-size: 9px;
  font-weight: 650;
  letter-spacing: .09em;
}
.v-channel-overview > header h3 {
  margin: 5px 0 4px;
  color: var(--v113-text);
  font-size: 20px;
  line-height: 1.06;
  letter-spacing: -.03em;
}
.v-channel-overview > header p {
  margin: 0;
  color: var(--v113-muted) !important;
  font-size: 11px;
  line-height: 1.35;
}
.v-channel-overview > video {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: cover;
  border: 1px solid var(--v113-line);
  border-radius: 10px;
  background: #050505;
}

/* Среда: фотография снова является частью блока и плавно уходит в фон. */
.v-environment-concept-hero {
  min-height: 265px !important;
  border-color: rgb(210 187 163 / .32) !important;
  background:
    linear-gradient(180deg, transparent 40%, #060707 96%),
    linear-gradient(90deg, #050606f5 0%, #050606c4 48%, #0506062b 79%, transparent 100%),
    url('/media/v-subscription-portrait-v89.png') 69% center / cover no-repeat !important;
  box-shadow: none !important;
}
.v-environment-status {
  color: var(--v113-accent) !important;
  border-color: rgb(210 187 163 / .38) !important;
  background: #070707cc !important;
}
.v-environment-today,
.v-environment-question {
  border-color: var(--v113-line) !important;
  background: var(--v113-panel) !important;
}
.v-environment-question { background-image: none !important; }
.v-environment-today > button { border-bottom-color: #252525 !important; }

/* Экран подписки: портрет без видимой прямоугольной границы. */
.v-purchase-page.v-concept-purchase {
  padding-top: 282px !important;
  background: #000 !important;
}
.v-purchase-page.v-concept-purchase:before {
  height: 360px !important;
  background:
    linear-gradient(180deg, #00000016 0%, #00000005 43%, #000 96%),
    linear-gradient(90deg, #0009 0%, transparent 45%, #0002 100%),
    url('/media/v-subscription-portrait-v89.png') 67% 28% / cover no-repeat !important;
  filter: grayscale(.08) brightness(.72) contrast(1.08) !important;
  -webkit-mask-image: linear-gradient(#000 0 70%, transparent 100%);
  mask-image: linear-gradient(#000 0 70%, transparent 100%);
}
.v-concept-purchase .v-purchase-intro { margin-top: -50px !important; }

/* Карта: единый портретный экран вместо двух растянутых карточек. */
.v-app:has(.v-map-workspace) .v-header {
  position: absolute !important;
  z-index: 30;
  top: 0;
  right: 0;
  left: 0;
  border-bottom: 0 !important;
  background: linear-gradient(#000d, transparent) !important;
}
.v-app:has(.v-map-workspace) .v-main { padding: 0 !important; }
.v-map-workspace {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  min-height: 100svh;
  padding: 74px 16px 24px !important;
  gap: 0 !important;
  overflow: hidden;
  background:
    linear-gradient(180deg, #00000018 0%, #00000008 29%, #0009 69%, #000 96%),
    linear-gradient(90deg, #000e 0%, #0006 47%, #0002 74%, #000b 100%),
    url('/media/v-subscription-portrait-v89.png') 69% center / cover no-repeat !important;
}
.v-map-workspace:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 0 62%, #000b 83%, #000 100%);
}
.v-map-workspace:after {
  content: "V";
  position: absolute;
  z-index: -1;
  top: 78px;
  right: 17px;
  color: rgb(210 187 163 / .78);
  font: 500 48px/1 Georgia, serif;
  text-shadow: 0 0 20px #000;
}
.v-map-workspace > * { position: relative; z-index: 1; }
.v-map-cover {
  min-height: 124px !important;
  padding: 8px 3px 4px !important;
  display: block !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-map-cover > :is(span, small) { display: none !important; }
.v-map-cover h1 {
  max-width: 230px !important;
  margin: 4px 0 7px !important;
  color: var(--v113-text) !important;
  font-size: clamp(32px, 9vw, 40px) !important;
  line-height: .91 !important;
  letter-spacing: -.055em !important;
}
.v-map-cover p {
  max-width: 225px !important;
  margin: 0 !important;
  color: #c2bcb6 !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
}
.v-map-workspace-canvas {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.v-map-workspace .v-result-route-map.v-video-route-map {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-map-workspace .v-result-route-map > header,
.v-map-workspace .v-route-map-context,
.v-map-workspace .v-result-route-map > footer,
.v-map-workspace-guide { display: none !important; }
.v-map-workspace .v-result-route-track.v-video-route-days {
  padding: 0 !important;
  background: transparent !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  top: 18px !important;
  bottom: 20px !important;
  left: 16px !important;
  background: rgb(210 187 163 / .48) !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 48px !important;
  padding: 4px 0 !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 10px !important;
  border: 0 !important;
  background: transparent !important;
  opacity: 1 !important;
}
.v-map-workspace .v-video-route-days > button > svg { display: none !important; }
.v-map-workspace .v-video-route-days .v-video-route-day {
  box-sizing: border-box;
  width: 34px !important;
  height: 34px !important;
  color: var(--v113-accent) !important;
  border: 1px solid rgb(210 187 163 / .50) !important;
  background: #090909e8 !important;
}
.v-map-workspace .v-video-route-days button.current > .v-video-route-day,
.v-map-workspace .v-video-route-days button.completed > .v-video-route-day {
  color: #171513 !important;
  border-color: var(--v113-accent) !important;
  background: var(--v113-accent) !important;
}
.v-map-workspace .v-video-route-days button > div > small {
  color: var(--v113-accent) !important;
  font-size: 8px !important;
  letter-spacing: .08em;
}
.v-map-workspace .v-video-route-days button > div > strong {
  color: var(--v113-text) !important;
  font-size: 13px !important;
  line-height: 1.12 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  display: -webkit-box;
  margin: 2px 0 0 !important;
  overflow: hidden;
  color: #a29c96 !important;
  font-size: 9px !important;
  line-height: 1.2 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.v-map-workspace .v-video-route-days button > div > em {
  margin-top: 2px;
  color: #a9a39d !important;
  background: transparent !important;
  font-size: 8px !important;
}
.v-map-workspace .v-video-route-days button.current > div > em {
  width: max-content;
  padding: 2px 6px;
  color: #171513 !important;
  border-radius: 999px;
  background: var(--v113-accent) !important;
}
.v-map-workspace .v-route-map-result {
  margin: 11px 0 9px !important;
  padding: 11px 13px !important;
  grid-template-columns: 36px minmax(0, 1fr) !important;
  border: 1px solid rgb(210 187 163 / .50) !important;
  border-radius: 10px !important;
  background: #090909d9 !important;
  box-shadow: none !important;
}
.v-map-workspace .v-route-map-result > svg { color: var(--v113-accent) !important; }
.v-map-workspace .v-route-map-result small { color: var(--v113-accent) !important; }
.v-map-workspace .v-route-map-result strong { color: var(--v113-text) !important; }
.v-map-workspace .v-map-continue {
  width: 100% !important;
  min-height: 46px !important;
  margin: 0 !important;
  border-radius: 9px !important;
}
.v-map-subscription-link {
  min-height: 32px;
  margin: 4px auto 0;
  padding: 0 12px;
  color: #aaa49f;
  border: 0;
  border-bottom: 1px solid rgb(210 187 163 / .35);
  background: transparent;
  font-size: 9px;
}

/* Итоги недели — композиция референса со ступенями и стрелкой роста. */
.v-weekly-workspace {
  gap: 0 !important;
  padding-bottom: 20px !important;
}
.v-weekly-workspace .v-weekly-review {
  position: relative;
  isolation: isolate;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 14px 0 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000 !important;
  box-shadow: none !important;
}
.v-weekly-art {
  position: absolute;
  z-index: -1;
  top: 4px;
  right: 0;
  width: 46%;
  height: 156px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 4px;
  opacity: .86;
  pointer-events: none;
}
.v-weekly-art > i {
  width: 23%;
  border: 1px solid rgb(210 187 163 / .30);
  background: linear-gradient(135deg, #252422, #0d0e0e 70%);
  box-shadow: inset 1px 0 rgb(210 187 163 / .13), -8px 8px 18px #0009;
  transform: skewY(-7deg);
}
.v-weekly-art > i:nth-child(1) { height: 31%; }
.v-weekly-art > i:nth-child(2) { height: 49%; }
.v-weekly-art > i:nth-child(3) { height: 69%; }
.v-weekly-art > i:nth-child(4) { height: 91%; }
.v-weekly-art > b {
  position: absolute;
  top: 12px;
  right: 4px;
  color: var(--v113-accent);
  font: 300 48px/1 Georgia, serif;
  transform: rotate(-8deg);
}
.v-weekly-art > em {
  position: absolute;
  right: 17px;
  bottom: 31px;
  color: rgb(210 187 163 / .78);
  font: 500 29px/1 Georgia, serif;
}
.v-weekly-review > header {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  min-height: 158px;
  padding: 8px 0 0 !important;
  border: 0 !important;
}
.v-weekly-review > header small {
  display: block;
  max-width: 150px;
  font-size: 8px !important;
  line-height: 1.25 !important;
  letter-spacing: .09em !important;
}
.v-weekly-review > header strong {
  max-width: 57% !important;
  margin-top: 10px !important;
  display: block;
  color: var(--v113-text) !important;
  font-size: clamp(27px, 7.6vw, 34px) !important;
  line-height: .92 !important;
  letter-spacing: -.05em !important;
}
.v-weekly-review-metrics {
  margin-top: 0 !important;
  border-block: 1px solid var(--v113-line) !important;
}
.v-weekly-review-metrics article {
  padding: 12px 5px !important;
  border-right: 1px solid var(--v113-line) !important;
  background: transparent !important;
}
.v-weekly-review-metrics article:last-child { border-right: 0 !important; }
.v-weekly-review-metrics strong {
  color: var(--v113-text) !important;
  font-size: 25px !important;
}
.v-weekly-review-metrics small { color: var(--v113-muted) !important; font-size: 8px !important; }
.v-weekly-review-insights article {
  padding: 12px 0 !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  border-bottom: 1px solid var(--v113-line) !important;
}
.v-weekly-review-insights article:last-child { border-bottom: 0 !important; }
.v-weekly-review-insights article > i {
  width: 31px !important;
  height: 31px !important;
  color: var(--v113-accent) !important;
  border-color: rgb(210 187 163 / .42) !important;
  background: #090909 !important;
}
.v-weekly-review-insights small { color: #9b938c !important; font-size: 8px !important; }
.v-weekly-review-insights strong {
  margin-top: 3px !important;
  color: var(--v113-text) !important;
  font-size: 12px !important;
  line-height: 1.28 !important;
}
.v-weekly-progress { margin: 13px 0 11px !important; padding: 0 2px !important; }
.v-weekly-progress > div { gap: 5px !important; margin-top: 8px !important; }
.v-weekly-progress i { background: #2d2d2c !important; }
.v-weekly-progress i:is(.current, .completed) { background: var(--v113-accent) !important; }
.v-weekly-continue {
  width: 100% !important;
  min-height: 46px !important;
  border-radius: 9px !important;
}

/* Нижняя навигация больше не меняет оттенок от экрана к экрану. */
.v-bottom-nav {
  border-top-color: var(--v113-line) !important;
  background: #080909f8 !important;
  box-shadow: 0 -10px 28px #000b !important;
}
.v-bottom-nav button { color: #85817d !important; }
.v-bottom-nav button.active,
.v-bottom-nav button.active > span,
.v-bottom-nav button.active svg { color: var(--v113-accent) !important; filter: none !important; }
.v-bottom-nav button.active > i { background: var(--v113-accent) !important; box-shadow: none !important; }

@media (max-width: 360px) {
  .v-channel-home-hero { min-height: 188px !important; height: 188px !important; padding: 15px !important; }
  .v-channel-home-art { top: 26px; right: 12px; width: 86px; height: 122px; }
  .v-channel-home-hero h2 { font-size: 26px !important; }
  .v-map-workspace { padding-inline: 12px !important; }
  .v-map-cover h1 { font-size: 31px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 46px !important; }
  .v-weekly-review > header strong { font-size: 27px !important; }
}

/* V114 — один спокойный золотой акцент, светлее фотографии и раздельный каталог. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v114-gold: #c7a66a;
  --v114-gold-rgb: 199 166 106;
  --v113-accent: var(--v114-gold);
  --v-ref-gold: var(--v114-gold);
  --v-ref-gold-light: var(--v114-gold);
  --v92-gold: var(--v114-gold);
  --v92-gold-bright: var(--v114-gold);
  --v100-accent: var(--v114-gold);
  --v100-accent-bright: var(--v114-gold);
  --v102-accent: var(--v114-gold);
}

/* Главная фотография: новый оригинальный V-визуал без глухого затемнения. */
.v-home-screen > .v-home-featured-route {
  border-color: rgb(var(--v114-gold-rgb) / .38) !important;
  background: #050505 !important;
}
.v-home-featured-route:after {
  background: linear-gradient(90deg, #050505f7 0%, #050505dc 34%, #05050578 57%, transparent 79%) !important;
}
.v-home-featured-route.v-photo-hero > .v-hero-photo {
  object-position: 57% center !important;
  filter: brightness(1.08) contrast(1.06) saturate(.92) !important;
  opacity: 1 !important;
}
.v-home-screen .v-home-featured-route .v-hero-copy > span,
.v-home-screen .v-home-menu > header button,
.v-home-screen .v-home-continue-section > header button {
  color: var(--v114-gold) !important;
}

/* Уроки, материалы, карта, итоги и сдвиг — пять отдельных карточек. */
.v-home-menu-list {
  display: grid !important;
  gap: 10px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.v-home-menu-item.v-catalog-card {
  min-height: 68px !important;
  border: 1px solid #302d28 !important;
  border-radius: 12px !important;
  background: linear-gradient(145deg, #111211 0%, #090a0a 100%) !important;
  box-shadow: inset 0 1px rgb(255 255 255 / .025) !important;
}
.v-home-menu-item.v-catalog-card + .v-home-menu-item.v-catalog-card {
  border-top: 1px solid #302d28 !important;
}
.v-home-menu-item.v-catalog-card:hover,
.v-home-menu-item.v-catalog-card:active {
  border-color: rgb(var(--v114-gold-rgb) / .42) !important;
  background: #141411 !important;
}
.v-home-menu-item > i {
  color: var(--v114-gold) !important;
  border-color: rgb(var(--v114-gold-rgb) / .34) !important;
  background: #15140f !important;
}
.v-home-menu-item > svg,
.v-home-continue-item > svg,
.v-channel-collections > div > button > svg,
.v-channel-resume-card > em {
  color: var(--v114-gold) !important;
}
.v-home-menu-progress > i,
.v-home-continue-progress > i,
.v-channel-resume-progress > i {
  background: var(--v114-gold) !important;
}

/* V-канал использует тот же новый визуал как цельную фотографию, а не вставленную плитку. */
.v-channel-home-hero {
  border-color: rgb(var(--v114-gold-rgb) / .38) !important;
  background:
    linear-gradient(90deg, #050505ee 0%, #050505c9 39%, #05050547 67%, transparent 86%),
    url('/media/v-channel-hero-v114.png') 57% center / cover no-repeat !important;
}
.v-channel-home-hero:after {
  background: linear-gradient(90deg, #050505bb 0 38%, transparent 76%) !important;
}
.v-channel-home-art { display: none !important; }
.v-channel-home-hero small,
.v-channel-home-hero button,
.v-channel-shortcuts > button.active,
.v-channel-catalog > header > div > span,
.v-channel-overview > header small {
  color: var(--v114-gold) !important;
}
.v-channel-home-hero button,
.v-channel-shortcuts > button.active {
  border-color: rgb(var(--v114-gold-rgb) / .46) !important;
  background: rgb(var(--v114-gold-rgb) / .09) !important;
}

/* Все активные состояния используют один и тот же металл без жёлтых вариаций. */
.v-app :is(
  .v-header-badge,
  .v-bottom-nav button.active,
  .v-bottom-nav button.active > span,
  .v-bottom-nav button.active svg,
  .v-map-cover > span,
  .v-map-cover > small,
  .v-weekly-review > header small,
  .v-weekly-progress > span,
  .v-weekly-progress b,
  .v-weekly-review-insights article > i,
  .v-environment-concept-hero small,
  .v-environment-status
) { color: var(--v114-gold) !important; }
.v-bottom-nav button.active > i,
.v-weekly-progress i:is(.current, .completed) {
  background: var(--v114-gold) !important;
}
.v-app .v-header :is(.v-menu, .v-profile-trigger, .v-logo.v-back),
.v-weekly-review-insights article > i,
.v-map-workspace .v-video-route-days .v-video-route-day {
  border-color: rgb(var(--v114-gold-rgb) / .42) !important;
}

/* Портретные фотографии остаются читаемыми и плавно растворяются в чёрном фоне. */
.v-environment-concept-hero {
  background:
    linear-gradient(180deg, transparent 54%, #050606 100%),
    linear-gradient(90deg, #050606df 0%, #0506069e 43%, #05060618 78%, transparent 100%),
    url('/media/v-subscription-portrait-v89.png') 69% center / cover no-repeat !important;
}
.v-purchase-page.v-concept-purchase:before {
  background:
    linear-gradient(180deg, #0000000c 0%, transparent 55%, #000 98%),
    linear-gradient(90deg, #0005 0%, transparent 48%, #0001 100%),
    url('/media/v-subscription-portrait-v89.png') 67% 28% / cover no-repeat !important;
  filter: grayscale(.04) brightness(.91) contrast(1.04) !important;
}
.v-map-workspace {
  background:
    linear-gradient(180deg, transparent 0 38%, #0005 70%, #000 97%),
    linear-gradient(90deg, #000c 0%, #0004 47%, transparent 77%, #0007 100%),
    url('/media/v-subscription-portrait-v89.png') 69% center / cover no-repeat !important;
}

@media (max-width: 360px) {
  .v-home-menu-list { gap: 8px !important; }
  .v-home-menu-item.v-catalog-card { min-height: 65px !important; }
  .v-channel-home-hero {
    background-position: 61% center !important;
  }
}

/* V115 — сгенерированный визуал роста для итогов недели. */
.v-weekly-art {
  top: -2px !important;
  right: 0 !important;
  width: 100% !important;
  height: 184px !important;
  gap: 0 !important;
  opacity: .96 !important;
  background:
    linear-gradient(90deg, #000 0%, #000f 32%, #0008 48%, transparent 69%),
    url('/media/v-weekly-growth-v115.png') center / cover no-repeat !important;
  -webkit-mask-image: linear-gradient(#000 0 80%, transparent 100%);
  mask-image: linear-gradient(#000 0 80%, transparent 100%);
}
.v-weekly-art > * { display: none !important; }
.v-weekly-review > header {
  min-height: 174px !important;
  padding-top: 10px !important;
}
.v-weekly-review > header strong {
  max-width: 54% !important;
}
.v-weekly-review > header p {
  position: relative;
  z-index: 2;
  max-width: 46%;
  margin: 8px 0 0 !important;
  color: #aaa49d !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
}

@media (max-width: 360px) {
  .v-weekly-art { height: 171px !important; background-position: 52% center !important; }
  .v-weekly-review > header { min-height: 164px !important; }
  .v-weekly-review > header strong { max-width: 56% !important; font-size: 26px !important; }
  .v-weekly-review > header p { max-width: 48%; font-size: 9px !important; }
}

/* V116 — карта маршрута повторяет компактную композицию референса. */
.v-map-workspace {
  min-height: 100svh !important;
  padding: 68px 12px 13px !important;
  background:
    linear-gradient(180deg, transparent 0 24%, #0009 34%, #000 46%, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000f 0%, #000a 38%, #0002 72%, #0005 100%) 0 0 / 100% 265px no-repeat,
    url('/media/v-subscription-portrait-v89.png') center top / 100% auto no-repeat,
    #000 !important;
}
.v-map-workspace:before { background: none !important; }
.v-map-workspace:after {
  top: 7px !important;
  right: 17px !important;
  color: rgb(var(--v114-gold-rgb) / .84) !important;
  font-size: 42px !important;
  text-shadow: 0 2px 18px #000 !important;
}
.v-map-cover {
  min-height: 91px !important;
  padding: 2px 2px 3px !important;
}
.v-map-cover h1 {
  max-width: 148px !important;
  margin: 0 0 6px !important;
  font-size: 29px !important;
  line-height: .91 !important;
}
.v-map-cover p {
  max-width: 158px !important;
  font-size: 9px !important;
  line-height: 1.28 !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  top: 13px !important;
  bottom: 14px !important;
  left: 13px !important;
  width: 1px !important;
  background: rgb(var(--v114-gold-rgb) / .48) !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 41px !important;
  padding: 2px 0 !important;
  grid-template-columns: 27px minmax(0, 1fr) !important;
  gap: 8px !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 27px !important;
  height: 27px !important;
  border-color: rgb(var(--v114-gold-rgb) / .46) !important;
  background: #080908e8 !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day svg {
  width: 12px !important;
  height: 12px !important;
}
.v-map-workspace .v-video-route-days button > div {
  position: relative !important;
  padding-right: 2px !important;
}
.v-map-workspace .v-video-route-days button > div > small {
  font-size: 7px !important;
  line-height: 1.05 !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  margin-top: 1px !important;
  font-size: 11.5px !important;
  line-height: 1.08 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  margin-top: 1px !important;
  font-size: 7.5px !important;
  line-height: 1.15 !important;
}
.v-map-workspace .v-video-route-days button > div > em {
  display: none !important;
}
.v-map-workspace .v-video-route-days button.current > div {
  padding-right: 57px !important;
}
.v-map-workspace .v-video-route-days button.current > div > em {
  position: absolute !important;
  top: 10px !important;
  right: 0 !important;
  width: max-content !important;
  margin: 0 !important;
  padding: 2px 6px !important;
  display: block !important;
  font-size: 6.5px !important;
  line-height: 1.2 !important;
}
.v-map-workspace .v-route-map-result {
  min-height: 52px !important;
  margin: 8px 0 !important;
  padding: 8px 11px !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  border-color: rgb(var(--v114-gold-rgb) / .44) !important;
  border-radius: 9px !important;
  background: #080908d9 !important;
}
.v-map-workspace .v-route-map-result > svg {
  width: 23px !important;
  height: 23px !important;
}
.v-map-workspace .v-route-map-result small {
  font-size: 6.5px !important;
}
.v-map-workspace .v-route-map-result strong {
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 1.14 !important;
}
.v-map-workspace .v-map-continue {
  min-height: 41px !important;
  border-radius: 9px !important;
  font-size: 11px !important;
}
.v-map-subscription-link {
  min-height: 24px !important;
  margin-top: 1px !important;
  font-size: 7.5px !important;
}

@media (min-width: 430px) {
  .v-map-workspace {
    background-size: 100% 100%, 100% 330px, 100% auto, auto !important;
  }
  .v-map-cover h1 { font-size: 31px !important; }
}

@media (max-width: 360px) {
  .v-map-workspace { padding: 66px 9px 10px !important; }
  .v-map-cover { min-height: 88px !important; }
  .v-map-cover h1 { font-size: 28px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 40px !important; }
}

/* V117 — точная чёрная композиция из референсов: белый текст, один металл. */
:root,
.v-app,
.v-start-screen,
.v-quiz-shell,
.v-trial-preview-screen {
  --v117-gold: #b79b70;
  --v117-gold-rgb: 183 155 112;
  --v113-accent: var(--v117-gold);
  --v114-gold: var(--v117-gold);
  --v114-gold-rgb: var(--v117-gold-rgb);
  --v-ref-gold: var(--v117-gold);
  --v-ref-gold-light: var(--v117-gold);
  --v100-accent: var(--v117-gold);
  --v102-accent: var(--v117-gold);
}

.v-app .v-header-badge {
  color: #e4ddd3 !important;
  border-color: rgb(var(--v117-gold-rgb) / .46) !important;
  background: #070707 !important;
}
.v-telegram-photo.v-brand-avatar,
.v-profile-avatar .v-brand-avatar {
  filter: grayscale(.62) sepia(.12) brightness(.94) contrast(1.06) !important;
}

/* V-канал: все кнопки чёрные; металл появляется только в контуре и реакции. */
.v-channel-home-hero {
  min-height: clamp(142px, 38cqw, 182px) !important;
  height: clamp(142px, 38cqw, 182px) !important;
  padding: 13px 14px !important;
  border-color: #3b342a !important;
  background:
    linear-gradient(90deg, #050505f5 0%, #050505d9 41%, #0505055c 66%, transparent 86%),
    url('/media/v-channel-hero-v114.png') 60% center / cover no-repeat !important;
}
.v-channel-home-hero:after {
  background: linear-gradient(90deg, #050505d4 0 38%, transparent 75%) !important;
}
.v-channel-home-hero > div:first-child { width: 64% !important; }
.v-channel-home-hero small {
  margin: 0 0 7px !important;
  color: #b7b3ad !important;
  font-size: 8px !important;
}
.v-channel-home-hero h2 {
  margin-bottom: 4px !important;
  color: #f4f2ef !important;
  font-size: clamp(22px, 5.7cqw, 27px) !important;
  line-height: .96 !important;
}
.v-channel-home-hero span { color: #aaa6a0 !important; }
.v-channel-home-hero button {
  min-height: 30px !important;
  margin-top: 8px !important;
  padding-inline: 11px !important;
  color: #f3f1ed !important;
  border-color: #5b4b37 !important;
  background: #070707e8 !important;
}
.v-channel-shortcuts > button,
.v-channel-shortcuts > button.active {
  color: #aaa6a0 !important;
  border-color: #30302d !important;
  background: #080909 !important;
  box-shadow: none !important;
}
.v-channel-shortcuts > button.active {
  color: #f2f0ec !important;
  border-color: rgb(var(--v117-gold-rgb) / .58) !important;
}
.v-channel-collections > div {
  display: grid !important;
  gap: 8px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.v-channel-collections > div > button,
.v-channel-collections > div > button + button {
  min-height: 60px !important;
  border: 1px solid #30312e !important;
  border-radius: 11px !important;
  background: linear-gradient(145deg, #0e0f0f, #080909) !important;
  box-shadow: inset 0 1px rgb(255 255 255 / .018) !important;
}
.v-channel-collections > div > button strong { color: #f3f1ee !important; }
.v-channel-collections > div > button small { color: #8f8d89 !important; }
.v-channel-collections > div > button > i {
  color: var(--v117-gold) !important;
  border-color: rgb(var(--v117-gold-rgb) / .38) !important;
  background: #11110f !important;
}
.v-channel-collections > div > button > svg { color: #9f8a68 !important; }
.v-channel-library-controls :is(label, select) {
  color: #d1cec9 !important;
  border-color: #30312e !important;
  background: #0a0b0b !important;
}
.v-channel-library-controls > label input { color: #f2f0ed !important; }
.v-channel-library-controls > label input::placeholder { color: #777975 !important; }

@media (hover: hover) {
  .v-channel-home-hero button:hover,
  .v-channel-shortcuts > button:hover,
  .v-channel-collections > div > button:hover,
  .v-channel-library-controls :is(label, select):hover {
    color: #f5f3ef !important;
    border-color: rgb(var(--v117-gold-rgb) / .68) !important;
    background-color: #12110f !important;
  }
}
.v-channel-home-hero button:active,
.v-channel-shortcuts > button:active,
.v-channel-collections > div > button:active {
  border-color: var(--v117-gold) !important;
  background: #17140f !important;
  transform: translateY(1px);
}

/* Карта: мобильная пропорция, как во втором референсе, без жёлтой типографики. */
.v-app:has(.v-map-workspace) .v-shell { width: min(100%, 390px) !important; }
.v-app:has(.v-map-workspace) .v-header {
  min-height: 68px !important;
  background: linear-gradient(180deg, #000 0%, #000d 62%, transparent 100%) !important;
}
.v-map-workspace {
  min-height: 100svh !important;
  padding: 69px 13px 18px !important;
  background:
    linear-gradient(180deg, transparent 0 43%, #0006 70%, #000 100%) 0 0 / 100% 370px no-repeat,
    linear-gradient(90deg, #000f 0%, #000c 34%, #0003 65%, #0002 100%) 0 0 / 100% 315px no-repeat,
    url('/media/v-subscription-portrait-v89.png') center top / 100% auto no-repeat,
    #000 !important;
}
.v-map-workspace:after {
  top: 77px !important;
  right: 15px !important;
  color: rgb(var(--v117-gold-rgb) / .86) !important;
  font-size: 43px !important;
}
.v-map-cover {
  min-height: 116px !important;
  padding: 2px 2px 5px !important;
}
.v-map-cover h1 {
  max-width: 180px !important;
  margin: 0 0 7px !important;
  color: #f4f2ef !important;
  font-size: 33px !important;
  line-height: .91 !important;
}
.v-map-cover p {
  max-width: 185px !important;
  color: #bbb7b1 !important;
  font-size: 10px !important;
  line-height: 1.28 !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  top: 15px !important;
  bottom: 16px !important;
  left: 15px !important;
  background: rgb(var(--v117-gold-rgb) / .46) !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 48px !important;
  padding: 3px 0 !important;
  grid-template-columns: 31px minmax(0, 1fr) !important;
  gap: 9px !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 31px !important;
  height: 31px !important;
  color: #ddd8d0 !important;
  border-color: rgb(var(--v117-gold-rgb) / .48) !important;
  background: #080909e8 !important;
}
.v-map-workspace .v-video-route-days button.current > .v-video-route-day,
.v-map-workspace .v-video-route-days button.completed > .v-video-route-day {
  color: #15130f !important;
  border-color: var(--v117-gold) !important;
  background: #c5ad86 !important;
}
.v-map-workspace .v-video-route-days button > div > small {
  color: #aaa59e !important;
  font-size: 7.5px !important;
  letter-spacing: .07em !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  color: #f3f1ee !important;
  font-size: 12.5px !important;
  line-height: 1.1 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  margin-top: 2px !important;
  color: #96928d !important;
  font-size: 8px !important;
  line-height: 1.16 !important;
}
.v-map-workspace .v-video-route-days button.current > div { padding-right: 58px !important; }
.v-map-workspace .v-video-route-days button.current > div > em {
  top: 12px !important;
  color: #17130e !important;
  background: #c5ad86 !important;
}
.v-map-workspace .v-route-map-result {
  min-height: 61px !important;
  margin: 10px 0 9px !important;
  padding: 9px 12px !important;
  grid-template-columns: 35px minmax(0, 1fr) !important;
  border-color: rgb(var(--v117-gold-rgb) / .52) !important;
  border-radius: 10px !important;
  background: #090a09e8 !important;
}
.v-map-workspace .v-route-map-result > svg { color: var(--v117-gold) !important; }
.v-map-workspace .v-route-map-result small {
  color: #aaa59e !important;
  font-size: 7px !important;
}
.v-map-workspace .v-route-map-result strong {
  color: #f3f1ee !important;
  font-size: 12px !important;
  line-height: 1.18 !important;
}
.v-map-workspace .v-map-continue {
  min-height: 45px !important;
  color: #171511 !important;
  border-color: #e9e5de !important;
  background: #e9e5de !important;
  font-size: 11px !important;
}
.v-map-subscription-link {
  min-height: 28px !important;
  color: #9f9b95 !important;
  border-bottom-color: #4a4134 !important;
  font-size: 8px !important;
}

/* Среда V: отдельная фотография и карточки из последнего референса. */
.v-app:has(.v-environment-concept) .v-main {
  padding-top: 0 !important;
  padding-inline: 0 !important;
}
.v-environment-concept {
  gap: 10px !important;
  padding-inline: 0 !important;
}
.v-environment-concept-hero {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: clamp(160px, 48cqw, 220px) !important;
  height: clamp(160px, 48cqw, 220px) !important;
  margin: 0 !important;
  padding: 18px 15px !important;
  display: flex !important;
  align-items: flex-end !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    linear-gradient(180deg, transparent 45%, #000a 86%, #000 100%),
    linear-gradient(90deg, #040505fa 0%, #040505dc 36%, #0405054a 63%, transparent 84%),
    url('/media/v-environment-hero-v117.webp') 60% center / cover no-repeat !important;
  box-shadow: none !important;
}
.v-environment-concept-hero > div {
  position: relative;
  z-index: 2;
  width: 52%;
}
.v-environment-concept-hero small {
  color: #aaa6a0 !important;
  font-size: 8px !important;
  letter-spacing: .08em !important;
}
.v-environment-concept-hero h2 {
  max-width: 12ch;
  margin: 8px 0 6px !important;
  color: #f5f3f0 !important;
  font-size: clamp(20px, 5cqw, 24px) !important;
  line-height: 1 !important;
  letter-spacing: -.045em !important;
}
.v-environment-concept-hero p {
  max-width: 24ch;
  margin: 0 !important;
  color: #aba7a1 !important;
  font-size: 9px !important;
  line-height: 1.3 !important;
}
.v-environment-status { display: none !important; }
.v-environment-today {
  margin: 0 11px !important;
  padding: 6px 0 0 !important;
  display: grid !important;
  gap: 8px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.v-environment-today > header { margin: 0 2px 2px !important; }
.v-environment-today > header small {
  color: #aaa6a0 !important;
  font-size: 8px !important;
}
.v-environment-today > header h3 {
  margin-top: 5px !important;
  color: #f3f1ee !important;
  font-size: 20px !important;
  letter-spacing: -.035em !important;
}
.v-environment-today > button {
  box-sizing: border-box;
  min-height: 68px !important;
  padding: 7px 10px 7px 7px !important;
  grid-template-columns: 64px minmax(0, 1fr) 18px !important;
  gap: 10px !important;
  border: 1px solid #30312e !important;
  border-radius: 11px !important;
  background: #0a0b0b !important;
}
.v-environment-today > button > i {
  width: 64px !important;
  height: 52px !important;
  overflow: hidden !important;
  border: 1px solid #393934 !important;
  border-radius: 8px !important;
  background-color: #111 !important;
  background-position: center !important;
  background-size: cover !important;
}
.v-environment-today > button:first-of-type > i:not(.has-photo) {
  background-image: linear-gradient(#0002, #0004), url('/media/vay-mindset-confidence.jpg') !important;
}
.v-environment-today > button:nth-of-type(2) > i {
  background-image: linear-gradient(#0001, #0003), url('/media/v-opportunities-hero-v117.webp') !important;
  background-position: 72% center !important;
}
.v-environment-today > button > i svg { display: none !important; }
.v-environment-today > button strong {
  color: #f3f1ee !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
}
.v-environment-today > button small {
  margin-top: 4px !important;
  color: #8f8d89 !important;
  font-size: 8px !important;
}
.v-environment-today > button > svg { color: var(--v117-gold) !important; }
.v-environment-question {
  position: relative;
  min-height: 176px !important;
  margin: 2px 11px 0 !important;
  padding: 16px 16px 12px !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
  border: 1px solid #34312d !important;
  border-radius: 12px !important;
  background:
    linear-gradient(90deg, #080909 0%, #080909f5 53%, #08090971 76%, #08090924 100%),
    url('/media/v-weekly-growth-v115.png') 78% center / cover no-repeat !important;
}
.v-environment-question small {
  color: #aaa6a0 !important;
  font-size: 8px !important;
}
.v-environment-question > strong {
  position: relative;
  z-index: 1;
  max-width: 15ch;
  margin-top: 8px !important;
  display: block;
  color: #f5f3f0 !important;
  font-size: 21px !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
}
.v-environment-question > p {
  position: relative;
  z-index: 1;
  max-width: 31ch;
  color: #9c9994 !important;
  font-size: 9px !important;
  line-height: 1.3 !important;
}
.v-environment-question > button {
  position: absolute !important;
  z-index: 2;
  right: 11px;
  bottom: 11px;
  left: 11px;
  min-height: 42px !important;
  color: #171511 !important;
  border-color: #e8e4dd !important;
  border-radius: 9px !important;
  background: #e8e4dd !important;
}
.v-environment-how {
  margin: 0 auto 12px !important;
  color: #aaa6a0 !important;
}

/* Итоги недели: белая типографика и спокойный металл только в графике. */
.v-weekly-review > header small,
.v-weekly-progress > span,
.v-weekly-progress b,
.v-weekly-review-insights small {
  color: #aaa6a0 !important;
}
.v-weekly-review > header strong,
.v-weekly-review-metrics strong,
.v-weekly-review-insights strong { color: #f4f2ef !important; }
.v-weekly-review-insights article > i {
  color: var(--v117-gold) !important;
  border-color: rgb(var(--v117-gold-rgb) / .48) !important;
  background: #090a09 !important;
}
.v-weekly-progress i:is(.current, .completed) { background: var(--v117-gold) !important; }
.v-weekly-continue {
  color: #171511 !important;
  border-color: #e9e5de !important;
  background: #e9e5de !important;
}

@media (max-width: 360px) {
  .v-channel-home-hero {
    min-height: 142px !important;
    height: 142px !important;
  }
  .v-channel-home-hero h2 { font-size: 22px !important; }
  .v-map-workspace { padding: 67px 10px 14px !important; }
  .v-map-cover { min-height: 106px !important; }
  .v-map-cover h1 { max-width: 160px !important; font-size: 29px !important; }
  .v-map-cover p { max-width: 165px !important; font-size: 9px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 44px !important; }
  .v-map-workspace .v-video-route-days button > div > strong { font-size: 11.5px !important; }
  .v-environment-concept-hero {
    min-height: 160px !important;
    height: 160px !important;
    padding: 14px 12px !important;
    background-position: 61% center !important;
  }
  .v-environment-concept-hero h2 { font-size: 19px !important; }
  .v-environment-concept-hero p { font-size: 8px !important; }
  .v-environment-today > header h3 { font-size: 18px !important; }
  .v-environment-today > button { min-height: 62px !important; grid-template-columns: 58px minmax(0, 1fr) 16px !important; }
  .v-environment-today > button > i { width: 58px !important; height: 47px !important; }
  .v-environment-question { min-height: 170px !important; }
  .v-environment-question > strong { font-size: 19px !important; }
  .v-weekly-review > header strong { font-size: 25px !important; }
}

/* V123 — ровная мобильная геометрия и только реальные данные в «Среде». */
html,
body,
.v-app,
.v-shell {
  max-width: 100% !important;
  overflow-x: clip !important;
}
.v-shell {
  width: min(100%, 430px) !important;
}
.v-app *,
.v-app *:before,
.v-app *:after {
  box-sizing: border-box;
}
.v-app button,
.v-app input,
.v-app textarea,
.v-app select {
  max-width: 100%;
}

/* Бесплатный старт: отдельный светлый портрет, компактный заголовок и ровная карточка. */
.v-library-page.is-starter-mode,
.v-library-page.is-starter-mode .v-starter-pack {
  width: 100% !important;
  overflow: clip !important;
}
.v-library-page.is-starter-mode .v-starter-pack {
  padding-bottom: calc(98px + env(safe-area-inset-bottom)) !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header {
  min-height: 302px !important;
  padding: 138px 17px 26px !important;
  background:
    linear-gradient(180deg, #0000000a 0%, #00000024 43%, #000 100%),
    linear-gradient(90deg, #020202f2 0%, #020202a8 42%, #02020220 76%, transparent 100%),
    url('/media/v-starter-portrait-v88.png') 69% 22% / cover no-repeat !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > span {
  margin-bottom: 8px !important;
  color: #aaa6a0 !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > strong {
  font-size: clamp(29px, 8.5vw, 34px) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
}
.v-library-page.is-starter-mode .v-starter-pack > header > p {
  max-width: 28ch !important;
  margin-top: 10px !important;
  color: #aaa6a0 !important;
  font-size: 11px !important;
  line-height: 1.34 !important;
}
.v-starter-pack > .v-starter-materials {
  width: calc(100% - 22px) !important;
  margin: -10px 11px 0 !important;
  padding: 5px 9px !important;
  overflow: hidden !important;
  border-color: #30312e !important;
  border-radius: 12px !important;
  background: #0a0b0b !important;
}
.v-starter-pack > .v-starter-materials > button {
  min-height: 65px !important;
  padding: 8px 0 !important;
  grid-template-columns: 49px minmax(0, 1fr) auto !important;
  gap: 9px !important;
}
.v-starter-pack > .v-starter-materials > button > i {
  width: 49px !important;
  height: 47px !important;
  border-radius: 9px !important;
}
.v-starter-pack > .v-starter-materials > button strong {
  overflow-wrap: anywhere !important;
  color: #f3f1ee !important;
  font-size: 12.5px !important;
  line-height: 1.16 !important;
}
.v-starter-pack > .v-starter-materials > button small {
  color: #8f8d89 !important;
  font-size: 8.5px !important;
}
.v-starter-pack > .v-starter-materials > button > em {
  min-height: 25px !important;
  padding-inline: 7px !important;
  color: #171511 !important;
  background: #ded9d1 !important;
  font-size: 8px !important;
}
.v-starter-pack > .v-starter-materials > button.is-locked > em {
  color: #b8b3ac !important;
  border-color: #4a4136 !important;
  background: #090a0a !important;
}
.v-app .v-starter-pack > .v-starter-primary {
  width: calc(100% - 22px) !important;
  min-height: 46px !important;
  margin: 10px 11px 0 !important;
  border-radius: 11px !important;
}

/* Среда: без подставных людей, без наложения на нижнее меню. */
.v-environment-concept {
  width: 100% !important;
  padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
  overflow: clip !important;
}
.v-environment-concept-hero {
  min-height: 182px !important;
  height: 182px !important;
  padding: 17px 14px !important;
  background-position: 62% center !important;
}
.v-environment-concept-hero > div {
  width: 61% !important;
}
.v-environment-concept-hero h2 {
  max-width: 14ch !important;
  font-size: 21px !important;
  line-height: 1.01 !important;
}
.v-environment-concept-hero p {
  max-width: 27ch !important;
  font-size: 9px !important;
}
.v-environment-today {
  margin-inline: 12px !important;
}
.v-environment-today > header h3 {
  max-width: 100% !important;
  font-size: 19px !important;
  line-height: 1.08 !important;
}
.v-environment-today > button,
.v-environment-empty {
  width: 100% !important;
  min-height: 66px !important;
  padding: 8px 10px !important;
  border: 1px solid #30312e !important;
  border-radius: 11px !important;
  background: #0a0b0b !important;
}
.v-environment-empty {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}
.v-environment-empty > i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  color: var(--v117-gold);
  border: 1px solid rgb(var(--v117-gold-rgb) / .38);
  border-radius: 10px;
  background: #11110f;
  font-style: normal;
}
.v-environment-empty > i svg { width: 19px; height: 19px; }
.v-environment-empty > span { min-width: 0; }
.v-environment-empty strong,
.v-environment-empty small { display: block; }
.v-environment-empty strong {
  color: #f3f1ee;
  font-size: 12.5px;
  line-height: 1.16;
}
.v-environment-empty small {
  max-width: 31ch;
  margin-top: 4px;
  color: #8f8d89;
  font-size: 9px;
  line-height: 1.28;
}
.v-environment-question {
  width: auto !important;
  min-height: 184px !important;
  margin-inline: 12px !important;
  border-radius: 12px !important;
}
.v-environment-question > strong {
  max-width: 17ch !important;
  font-size: 20px !important;
}
.v-environment-question > button {
  right: 12px !important;
  bottom: 12px !important;
  left: 12px !important;
}

/* Карта: портрет не растягивает контент, все семь шагов держат одну сетку. */
.v-map-workspace {
  width: 100% !important;
  min-height: 100svh !important;
  padding: 68px 12px calc(18px + env(safe-area-inset-bottom)) !important;
  overflow-x: clip !important;
  background:
    linear-gradient(180deg, transparent 0 25%, #0008 40%, #000 55%, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000f 0%, #000c 36%, #0003 66%, #0003 100%) 0 0 / 100% 292px no-repeat,
    url('/media/v-subscription-portrait-v89.png') 58% top / auto 292px no-repeat,
    #000 !important;
}
.v-map-cover {
  min-height: 107px !important;
  padding: 0 2px 4px !important;
}
.v-map-cover h1 {
  max-width: 164px !important;
  font-size: clamp(28px, 8.3vw, 32px) !important;
}
.v-map-cover p {
  max-width: 174px !important;
  font-size: 9px !important;
}
.v-map-workspace .v-video-route-days > button {
  width: 100% !important;
  min-height: 45px !important;
  grid-template-columns: 29px minmax(0, 1fr) !important;
  gap: 9px !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  left: 14px !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 29px !important;
  height: 29px !important;
}
.v-map-workspace .v-video-route-days button > div {
  min-width: 0 !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  overflow-wrap: anywhere !important;
  font-size: 12px !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  font-size: 8px !important;
}
.v-map-workspace .v-route-map-result {
  width: 100% !important;
  min-height: 58px !important;
  margin: 9px 0 !important;
}
.v-map-workspace .v-map-continue {
  width: 100% !important;
  min-height: 44px !important;
  border-radius: 10px !important;
}

@media (max-width: 360px) {
  .v-library-page.is-starter-mode .v-starter-pack > header {
    min-height: 286px !important;
    padding: 128px 14px 23px !important;
  }
  .v-library-page.is-starter-mode .v-starter-pack > header > strong { font-size: 29px !important; }
  .v-starter-pack > .v-starter-materials > button {
    min-height: 61px !important;
    grid-template-columns: 45px minmax(0, 1fr) auto !important;
    gap: 7px !important;
  }
  .v-starter-pack > .v-starter-materials > button > i {
    width: 45px !important;
    height: 43px !important;
  }
  .v-starter-pack > .v-starter-materials > button strong { font-size: 11.5px !important; }
  .v-starter-pack > .v-starter-materials > button > em { padding-inline: 6px !important; font-size: 7.5px !important; }
  .v-environment-concept-hero { min-height: 170px !important; height: 170px !important; }
  .v-environment-concept-hero h2 { font-size: 19px !important; }
  .v-environment-today > header h3 { font-size: 18px !important; }
  .v-map-workspace { padding-inline: 10px !important; }
  .v-map-cover { min-height: 101px !important; }
  .v-map-cover h1 { font-size: 28px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 43px !important; }
}

/* V123 — precise mobile pass from the supplied Telegram references. */
.v-app {
  --v119-gold: #b79a68;
  --v119-gold-bright: #d2b982;
  --v119-line: #303438;
  --v119-panel: #0d0f10;
}

/* V-channel is a material archive, not a second home screen. */
.v-library-page:not(.is-starter-mode):has(> .v-channel-catalog) {
  gap: 14px !important;
  padding-top: 8px !important;
  background: #000 !important;
}
.v-library-page:not(.is-starter-mode):has(> .v-channel-catalog) > .v-channel-overview {
  margin-top: 0 !important;
  border-color: #303438 !important;
  background: #0d0f10 !important;
}
.v-library-page:not(.is-starter-mode):has(> .v-channel-catalog) > .v-channel-catalog {
  margin-top: 0 !important;
}

/* Environment photo: show the full portrait instead of cropping the head and shoulders. */
.v-environment-concept {
  gap: 13px !important;
  background: #000 !important;
}
.v-environment-concept-hero {
  min-height: 205px !important;
  height: 205px !important;
  padding: 18px 15px !important;
  align-items: flex-end !important;
  background:
    linear-gradient(180deg, transparent 50%, #0008 83%, #000 100%),
    linear-gradient(90deg, #030404 0%, #030404e6 35%, #0304046e 58%, transparent 78%),
    url('/media/v-environment-hero-v117.webp') right center / auto 100% no-repeat,
    #030404 !important;
  background-blend-mode: normal !important;
}
.v-environment-concept-hero > div { width: 54% !important; }
.v-environment-concept-hero small { color: #aeb2b5 !important; }
.v-environment-concept-hero h2 {
  max-width: 12ch !important;
  color: #f2f3f4 !important;
  font-size: 22px !important;
  line-height: .98 !important;
}
.v-environment-concept-hero p {
  max-width: 25ch !important;
  color: #9ca1a4 !important;
  font-size: 9px !important;
}

/* Full community catalogue is visible directly in the subscription environment. */
.v-environment-directory {
  margin: 0 11px !important;
  display: grid;
  gap: 8px;
}
.v-environment-directory > header { padding: 0 2px; }
.v-environment-directory > header small {
  color: #9ea3a6;
  letter-spacing: .12em;
  font-size: 8px;
}
.v-environment-directory > header h3 {
  margin: 5px 0 0;
  color: #f1f2f3;
  font-size: 19px;
  font-weight: 550;
  letter-spacing: -.035em;
}
.v-environment-directory > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}
.v-environment-directory > div > button {
  min-width: 0;
  min-height: 64px;
  padding: 9px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 12px;
  align-items: center;
  gap: 8px;
  color: #eff1f2;
  text-align: left;
  border: 1px solid #303438;
  border-radius: 11px;
  background: linear-gradient(145deg, #121415, #090b0c);
}
.v-environment-directory > div > button > i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #c5c9cc;
  border: 1px solid #3b4044;
  border-radius: 9px;
  background: #171a1c;
  font-style: normal;
}
.v-environment-directory > div > button > i svg { width: 16px; height: 16px; }
.v-environment-directory > div > button > span { min-width: 0; }
.v-environment-directory > div > button strong,
.v-environment-directory > div > button small { display: block; }
.v-environment-directory > div > button strong { font-size: 11px; line-height: 1.1; }
.v-environment-directory > div > button small {
  margin-top: 4px;
  color: #80868a;
  font-size: 7.5px;
  line-height: 1.2;
}
.v-environment-directory > div > button > svg { width: 12px; color: #9ca2a5; }
.v-environment-empty,
.v-environment-today > button,
.v-environment-question {
  border-color: #303438 !important;
  background-color: #0b0d0e !important;
}

/* Active subscription leads to the community catalogue. */
.v-active-access-notice {
  border-color: #3a3f42 !important;
  background: linear-gradient(145deg, #121415, #090b0c) !important;
}
.v-active-access-notice > button {
  min-height: 40px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #151617;
  border: 0;
  border-radius: 9px;
  background: #ebeced;
  font-size: 11px;
  font-weight: 700;
}
.v-active-access-notice > button svg { width: 15px; height: 15px; }

/* Route map: reproduce the compact third reference and remove the stretched pills. */
.v-app:has(.v-map-workspace) .v-shell { width: min(100%, 390px) !important; }
.v-app:has(.v-map-workspace) .v-header {
  min-height: 66px !important;
  background: linear-gradient(180deg, #000 0%, #000e 67%, transparent 100%) !important;
}
.v-map-workspace {
  min-height: 100svh !important;
  padding: 64px 10px calc(12px + env(safe-area-inset-bottom)) !important;
  overflow-x: clip !important;
  background:
    linear-gradient(180deg, transparent 0 19%, #0005 32%, #000 48%, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000 0%, #000d 34%, #0005 64%, transparent 100%) 0 0 / 100% 257px no-repeat,
    url('/media/v-subscription-portrait-v89.png') 58% top / auto 257px no-repeat,
    #000 !important;
}
.v-map-workspace:after {
  top: 70px !important;
  right: 15px !important;
  color: #b9a178 !important;
  font-size: 37px !important;
}
.v-map-cover {
  min-height: 94px !important;
  padding: 0 2px 2px !important;
  border: 0 !important;
  background: transparent !important;
}
.v-map-cover > span,
.v-map-cover > small { display: none !important; }
.v-map-cover h1 {
  max-width: 158px !important;
  margin: 0 0 6px !important;
  color: #f3f2ef !important;
  font-size: 29px !important;
  line-height: .91 !important;
  letter-spacing: -.045em !important;
}
.v-map-cover p {
  max-width: 173px !important;
  color: #a7a8a7 !important;
  font-size: 8.5px !important;
  line-height: 1.22 !important;
}
.v-map-workspace-canvas { margin: 0 !important; }
.v-map-workspace .v-result-route-map.v-video-route-map {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-map-workspace .v-result-route-map > header,
.v-map-workspace .v-route-map-context,
.v-map-workspace .v-result-route-map > footer,
.v-map-workspace-guide { display: none !important; }
.v-map-workspace .v-result-route-track.v-video-route-days {
  gap: 0 !important;
  padding: 0 !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  top: 13px !important;
  bottom: 13px !important;
  left: 13px !important;
  background: #5a4d39 !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 40px !important;
  padding: 2px 0 !important;
  grid-template-columns: 27px minmax(0, 1fr) !important;
  gap: 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-map-workspace .v-video-route-days > button > svg,
.v-map-workspace .v-video-route-icon { display: none !important; }
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 27px !important;
  height: 27px !important;
  min-height: 27px !important;
  color: #d6d7d6 !important;
  border: 1px solid #65563e !important;
  border-radius: 50% !important;
  background: #090a0aeb !important;
}
.v-map-workspace .v-video-route-days button.current > .v-video-route-day,
.v-map-workspace .v-video-route-days button.completed:first-child > .v-video-route-day {
  color: #17140f !important;
  border-color: #c7aa75 !important;
  background: #c7aa75 !important;
}
.v-map-workspace .v-video-route-days button.completed:not(:first-child) > .v-video-route-day {
  color: #c9cdd0 !important;
  border-color: #5b5142 !important;
  background: #0b0c0c !important;
}
.v-map-workspace .v-video-route-days button > div { min-width: 0 !important; }
.v-map-workspace .v-video-route-days button > div > small {
  color: #9c9d9b !important;
  font-size: 6.7px !important;
  letter-spacing: .06em !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  margin-top: 1px !important;
  color: #f1f1ef !important;
  font-size: 10.5px !important;
  line-height: 1.08 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  margin: 1px 0 0 !important;
  color: #8f918f !important;
  font-size: 7.2px !important;
  line-height: 1.13 !important;
  -webkit-line-clamp: 1 !important;
}
.v-map-workspace .v-video-route-days button > div > em { display: none !important; }
.v-map-workspace .v-route-map-result {
  min-height: 52px !important;
  margin: 7px 0 !important;
  padding: 7px 10px !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  gap: 9px !important;
  border: 1px solid #5a4c36 !important;
  border-radius: 9px !important;
  background: #0b0c0be8 !important;
}
.v-map-workspace .v-route-map-result > svg { color: #b99d6b !important; }
.v-map-workspace .v-route-map-result small { color: #9d9e9c !important; font-size: 6.5px !important; }
.v-map-workspace .v-route-map-result strong { color: #f2f2f0 !important; font-size: 10.5px !important; line-height: 1.13 !important; }
.v-map-workspace .v-map-continue {
  min-height: 42px !important;
  margin: 0 !important;
  color: #171717 !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: #ecebea !important;
  font-size: 10.5px !important;
}
.v-map-subscription-link {
  min-height: 25px !important;
  color: #8f9292 !important;
  border-bottom-color: #4a4133 !important;
  font-size: 7.5px !important;
}

/* The material route receives a real banner instead of a flat stretched block. */
.v-library-page:not(.is-starter-mode) > .v-full-page-intro {
  min-height: 154px !important;
  padding: 18px !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
  border: 1px solid #574a35 !important;
  border-radius: 13px !important;
  background:
    linear-gradient(90deg, #070807f4 0%, #070807ce 52%, #07080749 100%),
    linear-gradient(180deg, transparent 48%, #070807 100%),
    url('/media/v-route-mindset-v117.webp') 72% 34% / cover no-repeat !important;
  box-shadow: inset 0 1px #d2b98214 !important;
}
.v-library-page:not(.is-starter-mode) > .v-full-page-intro:before {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 12px;
  width: 68px;
  height: 1px;
  background: linear-gradient(90deg, transparent, #b79a68);
}
.v-library-page:not(.is-starter-mode) > .v-full-page-intro h2 {
  max-width: 12ch !important;
  margin: 8px 0 6px !important;
  color: #f3f2ef !important;
  font-size: 28px !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}
.v-library-page:not(.is-starter-mode) > .v-full-page-intro p {
  max-width: 29ch !important;
  margin: 0 !important;
  color: #9a9c9a !important;
  font-size: 9px !important;
  line-height: 1.3 !important;
}
.v-route-checklist-note {
  min-height: 58px !important;
  padding: 10px 12px !important;
  border-color: #303438 !important;
  border-radius: 11px !important;
  background: #0d0f10 !important;
}
.v-route-checklist { gap: 8px !important; }
.v-route-checklist > article,
.v-route-checklist > article.completed,
.v-route-checklist > article.locked {
  min-height: 70px !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  border-color: #303438 !important;
  border-radius: 11px !important;
  background: #0d0f10 !important;
  box-shadow: none !important;
}
.v-route-material-open {
  padding: 8px 7px 8px 9px !important;
  grid-template-columns: 18px 37px minmax(0, 1fr) 13px !important;
  gap: 7px !important;
}
.v-route-checklist .v-content-icon { width: 37px !important; height: 37px !important; }
.v-route-checklist .v-content-copy strong { font-size: 12px !important; line-height: 1.16 !important; }
.v-route-checklist .v-content-copy p { font-size: 8px !important; -webkit-line-clamp: 2 !important; }
.v-route-material-check { width: 52px !important; }

/* The removed transition intro leaves the action itself as the first useful block. */
.v-shift-workspace { padding-top: 8px !important; }
.v-shift-workspace > .v-route-shift {
  margin-top: 0 !important;
  border-color: #34373a !important;
}

/* Gold is now a small premium accent only in Profile and the hamburger menu. */
.v-app .v-header .v-menu {
  color: #d2b982 !important;
  border-color: #69583c !important;
  background: #090a09e8 !important;
}
.v-sheet {
  border-left-color: #4d422f !important;
  background: #090a0a !important;
}
.v-sheet [data-slot="sheet-title"] { color: #f2f1ee !important; }
.v-sheet [data-slot="sheet-description"] { color: #96928a !important; }
.v-menu-route {
  border-color: #51452f !important;
  background: radial-gradient(circle at 90% 5%, #b79a681a, transparent 35%), #111210 !important;
  box-shadow: inset 0 1px #d2b98217 !important;
}
.v-menu-route > span,
.v-menu-route small { color: #bca77f !important; }
.v-sheet-links button { border-bottom-color: #2c2923 !important; }
.v-sheet-links button > svg:first-child { color: #bba272 !important; }
.v-sheet-links button > svg:last-child { color: #7f7564 !important; }
.v-profile-hero {
  border-color: #51452f !important;
  background: radial-gradient(circle at 82% 7%, #b79a6814, transparent 31%), #101110 !important;
  box-shadow: inset 0 1px #d2b98214 !important;
}
.v-profile-edit,
.v-profile-avatar,
.v-profile-tags i,
.v-profile-skills i { border-color: #5a4d37 !important; }
.v-profile-tags i,
.v-profile-skills i,
.v-profile-info-grid svg,
.v-vault-card > div > svg,
.v-subscription-card > svg { color: #c4ab7a !important; }
.v-profile-info-grid section,
.v-vault-card,
.v-subscription-card,
.v-subscription-card.active {
  border-color: #38342c !important;
  background: #101110 !important;
}

@media (max-width: 360px) {
  .v-environment-concept-hero { min-height: 188px !important; height: 188px !important; }
  .v-environment-concept-hero h2 { font-size: 20px !important; }
  .v-environment-directory > div { grid-template-columns: 1fr !important; }
  .v-environment-directory > div > button { min-height: 58px; }
  .v-map-workspace { padding-inline: 9px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 38px !important; }
  .v-library-page:not(.is-starter-mode) > .v-full-page-intro { min-height: 145px !important; }
}

/* V123 — readable route scale and a complete subscription environment. */
.v-environment-concept-hero {
  min-height: 232px !important;
  height: 232px !important;
  padding: 22px 16px 24px !important;
  align-items: flex-start !important;
  justify-content: center !important;
  background:
    linear-gradient(180deg, transparent 48%, #0006 78%, #000 100%),
    linear-gradient(90deg, #030404f2 0%, #030404d6 34%, #03040454 62%, transparent 82%),
    url('/media/v-environment-hero-v117.webp') 56% center / cover no-repeat !important;
}
.v-environment-concept-hero > div {
  width: 55% !important;
  max-width: 214px !important;
  margin: 0 !important;
}
.v-environment-concept-hero small {
  font-size: 9px !important;
}
.v-environment-concept-hero h2 {
  max-width: 11ch !important;
  margin: 10px 0 8px !important;
  font-size: clamp(24px, 6.4cqw, 29px) !important;
  line-height: .98 !important;
}
.v-environment-concept-hero p {
  max-width: 24ch !important;
  font-size: 10px !important;
  line-height: 1.32 !important;
}

/* The personal matching remains the first useful block for paid members. */
.v-environment-concept > .v-environment-concept-hero { order: 0; }
.v-environment-concept > .v-environment-today { order: 1; }
.v-environment-concept > .v-environment-directory { order: 2; }
.v-environment-concept > .v-environment-question { order: 3; }
.v-environment-concept > .v-environment-how { order: 4; }
.v-environment-today {
  padding-top: 3px !important;
}
.v-environment-directory > div {
  gap: 6px !important;
}
.v-environment-directory > div > button {
  min-height: 60px !important;
}

/* Route map is deliberately larger: readable rows, portrait and result card. */
.v-app:has(.v-map-workspace) .v-shell {
  width: min(100%, 420px) !important;
}
.v-map-workspace {
  padding: 68px 14px calc(18px + env(safe-area-inset-bottom)) !important;
  background:
    linear-gradient(180deg, transparent 0 21%, #0004 34%, #000 51%, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000 0%, #000d 34%, #0004 65%, transparent 100%) 0 0 / 100% 315px no-repeat,
    url('/media/v-subscription-portrait-v89.png') 63% top / auto 315px no-repeat,
    #000 !important;
}
.v-map-workspace:after {
  top: 76px !important;
  right: 17px !important;
  font-size: 43px !important;
}
.v-map-cover {
  min-height: 128px !important;
  padding: 2px 2px 8px !important;
}
.v-map-cover h1 {
  max-width: 182px !important;
  margin-bottom: 8px !important;
  font-size: 34px !important;
  line-height: .92 !important;
}
.v-map-cover p {
  max-width: 190px !important;
  font-size: 9.5px !important;
  line-height: 1.28 !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  top: 16px !important;
  bottom: 16px !important;
  left: 16px !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 52px !important;
  padding: 4px 0 !important;
  grid-template-columns: 33px minmax(0, 1fr) !important;
  gap: 10px !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 33px !important;
  height: 33px !important;
  min-height: 33px !important;
}
.v-map-workspace .v-video-route-days button > div > small {
  font-size: 7.8px !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  margin-top: 2px !important;
  font-size: 12.5px !important;
  line-height: 1.1 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  margin-top: 2px !important;
  font-size: 8.6px !important;
  line-height: 1.18 !important;
}
.v-map-workspace .v-route-map-result {
  min-height: 62px !important;
  margin: 10px 0 !important;
  padding: 9px 12px !important;
  grid-template-columns: 37px minmax(0, 1fr) !important;
  gap: 10px !important;
}
.v-map-workspace .v-route-map-result > svg {
  width: 26px !important;
  height: 26px !important;
}
.v-map-workspace .v-route-map-result small {
  font-size: 7.5px !important;
}
.v-map-workspace .v-route-map-result strong {
  font-size: 12px !important;
  line-height: 1.16 !important;
}
.v-map-workspace .v-map-continue {
  min-height: 48px !important;
  font-size: 11.5px !important;
}
.v-map-subscription-link {
  min-height: 30px !important;
  font-size: 8.5px !important;
}

@media (max-width: 360px) {
  .v-environment-concept-hero {
    min-height: 218px !important;
    height: 218px !important;
    padding-inline: 14px !important;
  }
  .v-environment-concept-hero h2 { font-size: 23px !important; }
  .v-environment-directory > div { grid-template-columns: 1fr 1fr !important; }
  .v-environment-directory > div > button { min-height: 58px !important; }
  .v-map-workspace {
    padding-inline: 11px !important;
    background:
      linear-gradient(180deg, transparent 0 21%, #0004 34%, #000 51%, #000 100%) 0 0 / 100% 100% no-repeat,
      linear-gradient(90deg, #000 0%, #000d 34%, #0004 65%, transparent 100%) 0 0 / 100% 300px no-repeat,
      url('/media/v-subscription-portrait-v89.png') 63% top / auto 300px no-repeat,
      #000 !important;
  }
  .v-map-cover { min-height: 122px !important; }
  .v-map-cover h1 { font-size: 32px !important; }
  .v-map-workspace .v-video-route-days > button { min-height: 49px !important; }
}

/* V123 — мягкий портрет карты, последовательные дни и модульная «Среда». */
.v-map-workspace {
  padding: 70px 15px calc(18px + env(safe-area-inset-bottom)) !important;
  background:
    linear-gradient(180deg, transparent 0 170px, #0001 235px, #0008 335px, #000 430px, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000 0%, #000e 33%, #0006 62%, transparent 100%) 0 56px / 100% 390px no-repeat,
    url('/media/v-subscription-portrait-v89.png') 63% 56px / auto 390px no-repeat,
    #000 !important;
}
.v-map-workspace:after {
  top: 98px !important;
  right: 18px !important;
  color: #c7a96f !important;
  opacity: .86;
}
.v-map-cover {
  width: 100% !important;
  min-height: 124px !important;
  margin: 0 !important;
  padding: 8px 3px 9px !important;
  overflow: visible !important;
}
.v-map-cover h1 {
  max-width: 188px !important;
  margin: 0 0 9px !important;
  overflow: visible !important;
  color: #f5f3ef !important;
  font-size: clamp(29px, 8vw, 33px) !important;
  line-height: .92 !important;
  text-wrap: balance;
}
.v-map-cover p {
  max-width: 205px !important;
  color: #aaa7a1 !important;
  font-size: 9.5px !important;
  line-height: 1.3 !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 53px !important;
}
.v-map-workspace .v-video-route-days > button.locked {
  opacity: .68 !important;
}
.v-map-workspace .v-video-route-days > button.locked > .v-video-route-day {
  color: #9a9184 !important;
  border-color: #4c4438 !important;
  background: #080909e8 !important;
}
.v-map-workspace .v-video-route-days button.current > .v-video-route-day {
  color: #17140f !important;
  border-color: #d2b77d !important;
  background: linear-gradient(145deg, #e0c78d, #b89155) !important;
  box-shadow: 0 0 18px #c7a96f24 !important;
}
.v-map-workspace .v-video-route-days button.completed:not(:first-child) > .v-video-route-day {
  color: #d0c4ad !important;
  border-color: #66573f !important;
}

/* Каталог воспринимается как шесть самостоятельных модулей, а не как список кнопок. */
.v-environment-concept-hero {
  min-height: 244px !important;
  height: 244px !important;
  padding: 24px 16px 27px !important;
  background:
    linear-gradient(180deg, transparent 42%, #0005 75%, #000 100%),
    linear-gradient(90deg, #020303f5 0%, #020303dd 34%, #0203034d 62%, transparent 82%),
    url('/media/v-environment-hero-v117.webp') 55% top / cover no-repeat,
    #020303 !important;
}
.v-environment-directory {
  gap: 11px !important;
  margin: 2px 12px 0 !important;
}
.v-environment-directory > header small,
.v-environment-today > header small {
  color: #c1a36d !important;
}
.v-environment-directory > header h3 {
  font-size: 21px !important;
}
.v-environment-directory > div {
  gap: 9px !important;
}
.v-environment-directory > div > button {
  position: relative;
  min-height: 118px !important;
  padding: 12px !important;
  display: flex !important;
  flex-direction: column;
  align-items: flex-start !important;
  justify-content: flex-start;
  gap: 0 !important;
  overflow: hidden;
  border-color: #4d4334 !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at 105% -8%, #c8a66520, transparent 41%),
    linear-gradient(145deg, #121311 0%, #090a09 72%) !important;
  box-shadow: inset 0 1px #e1c78d12, 0 12px 24px #0004 !important;
}
.v-environment-directory > div > button:before {
  position: absolute;
  top: 12px;
  right: 12px;
  color: #75654b;
  font-size: 8px;
  font-weight: 650;
  letter-spacing: .14em;
}
.v-environment-directory > div > button:nth-child(1):before { content: "01"; }
.v-environment-directory > div > button:nth-child(2):before { content: "02"; }
.v-environment-directory > div > button:nth-child(3):before { content: "03"; }
.v-environment-directory > div > button:nth-child(4):before { content: "04"; }
.v-environment-directory > div > button:nth-child(5):before { content: "05"; }
.v-environment-directory > div > button:nth-child(6):before { content: "06"; }
.v-environment-directory > div > button > i {
  width: 40px !important;
  height: 40px !important;
  color: #d0b477 !important;
  border-color: #65563d !important;
  border-radius: 11px !important;
  background: linear-gradient(145deg, #1c1a15, #0d0e0c) !important;
  box-shadow: inset 0 1px #e1c78d14 !important;
}
.v-environment-directory > div > button > i svg {
  width: 19px !important;
  height: 19px !important;
}
.v-environment-directory > div > button > span {
  width: 100%;
  margin-top: auto;
  padding-top: 14px;
  padding-right: 23px;
}
.v-environment-directory > div > button strong {
  color: #f2f0eb !important;
  font-size: 12.5px !important;
  line-height: 1.12 !important;
}
.v-environment-directory > div > button small {
  margin-top: 5px !important;
  color: #8f8a82 !important;
  font-size: 8px !important;
  line-height: 1.25 !important;
}
.v-environment-directory > div > button > svg {
  position: absolute;
  right: 11px;
  bottom: 12px;
  width: 15px !important;
  height: 15px !important;
  color: #c1a36d !important;
}
.v-environment-directory > div > button:active {
  transform: translateY(1px);
  border-color: #846f4b !important;
  background: radial-gradient(circle at 100% 0%, #d0af6d2b, transparent 45%), #11120f !important;
}

/* Внутренние разделы «Среды» получают ту же премиальную систему. */
.v-environment-page .v-subpage-toolbar > button,
.v-environment-page .v-filter-bar > label,
.v-environment-page .v-filter-bar [data-slot="native-select-wrapper"],
.v-environment-page .v-ai-match-switch,
.v-environment-page .v-ai-match-state,
.v-environment-page .v-people-page-list > article,
.v-environment-page .v-opportunity-page-list > article,
.v-environment-page .v-community-page-list > article,
.v-environment-page .v-feed-page-list > article,
.v-environment-page .v-questionnaire-context {
  border-color: #40392f !important;
  background: linear-gradient(145deg, #111210, #0a0b0a) !important;
  box-shadow: inset 0 1px #d2b9820d !important;
}
.v-environment-page .v-page-intro {
  position: relative;
  min-height: 210px !important;
  overflow: hidden !important;
  border-color: #51452f !important;
  background:
    radial-gradient(circle at 92% 9%, #c6a36726, transparent 34%),
    linear-gradient(145deg, #171715, #0b0c0b 72%) !important;
  box-shadow: inset 0 1px #e1c78d16 !important;
}
.v-environment-page .v-page-intro:after {
  content: "V";
  position: absolute;
  right: 19px;
  bottom: 5px;
  color: #c3a46a18;
  font-family: Georgia, serif;
  font-size: 88px;
  line-height: 1;
}
.v-environment-page .v-page-intro > * {
  position: relative;
  z-index: 1;
}
.v-environment-page .v-page-intro > span,
.v-environment-page .v-filter-bar svg,
.v-environment-page .v-ai-match-state svg,
.v-environment-page .v-ai-match-switch > i,
.v-environment-page .v-skill-chips i {
  color: #c2a56e !important;
}
.v-environment-page .v-ai-match-switch > i,
.v-environment-page .v-people-page-list article > i,
.v-environment-page .v-questionnaire-context > i {
  border-color: #5a4d37 !important;
}

/* Материалы и ручная отметка выглядят как одна новая система. */
.v-route-content-group > header > span,
.v-library-group > header > span,
.v-route-checklist-note > svg {
  color: #c4a86f !important;
}
.v-route-checklist > article,
.v-library-list > button,
.v-public-material-list > button {
  border-color: #3f392f !important;
  background: linear-gradient(145deg, #111210, #0a0b0a) !important;
  box-shadow: inset 0 1px #d2b9820b !important;
}
.v-route-checklist .v-content-icon,
.v-library-list .v-content-icon {
  color: #c6aa72 !important;
  border-color: #5b4e38 !important;
  background: #12120f !important;
}
.v-route-material-check {
  border-left-color: #3f392f !important;
  color: #bda46f !important;
  background: linear-gradient(180deg, #151612, #0c0d0c) !important;
}
.v-reader-page .v-primary[aria-pressed="false"] {
  color: #17140f !important;
  background: linear-gradient(135deg, #e1c88d, #b99256) !important;
}

@media (max-width: 360px) {
  .v-map-workspace {
    padding-inline: 12px !important;
    background:
      linear-gradient(180deg, transparent 0 165px, #0001 225px, #0008 322px, #000 410px, #000 100%) 0 0 / 100% 100% no-repeat,
      linear-gradient(90deg, #000 0%, #000e 33%, #0006 62%, transparent 100%) 0 54px / 100% 366px no-repeat,
      url('/media/v-subscription-portrait-v89.png') 63% 54px / auto 366px no-repeat,
      #000 !important;
  }
  .v-map-cover { min-height: 119px !important; }
  .v-map-cover h1 { max-width: 176px !important; font-size: 30px !important; }
  .v-environment-concept-hero { min-height: 232px !important; height: 232px !important; }
  .v-environment-directory > div > button { min-height: 108px !important; padding: 10px !important; }
  .v-environment-directory > div > button > i { width: 37px !important; height: 37px !important; }
  .v-environment-directory > div > button strong { font-size: 11.5px !important; }
  .v-environment-directory > div > button small { font-size: 7.5px !important; }
}

/* v122: responsive web control center and explicit browser-code access. */
.v-control-login-page {
  background:
    radial-gradient(circle at 50% 10%, rgba(203, 169, 104, 0.13), transparent 34%),
    #050505;
}
.v-admin-web-login {
  border-color: rgba(203, 169, 104, 0.32);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.55);
}
.v-admin-login-kicker {
  color: #c7aa72;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
}
.v-admin-login-error {
  color: #ffb4aa;
  background: rgba(112, 28, 24, 0.24);
  border: 1px solid rgba(255, 113, 100, 0.28);
  border-radius: 12px;
  padding: 11px 13px;
  font-size: 13px;
  line-height: 1.4;
}
.v-admin-login-spinner {
  align-self: center;
  width: 30px;
  height: 30px;
  color: #c7aa72;
}
.v-admin-back-site {
  color: #aaa6a0;
  padding-top: 5px;
  font-size: 13px;
  text-align: center;
  text-decoration: none;
}
.v-control-actions {
  justify-content: flex-end;
  gap: 8px !important;
}
.v-admin-site-link,
.v-admin-web-exit {
  box-sizing: border-box;
  border: 1px solid rgba(203, 169, 104, 0.28);
  border-radius: 999px;
  min-height: 40px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #e7e2d9;
  background: #11110f;
  font-size: 13px;
  line-height: 1;
  text-decoration: none;
}
.v-admin-site-link:hover,
.v-admin-web-exit:hover {
  border-color: rgba(225, 200, 141, 0.62);
  background: #191711;
}
.v-control-page .v-admin-tabs {
  scrollbar-width: thin;
  scrollbar-color: #5b4e38 transparent;
}
.v-control-page .v-admin-tabs button,
.v-control-page .v-admin-panel button,
.v-control-page .v-admin-panel input,
.v-control-page .v-admin-panel select,
.v-control-page .v-admin-panel textarea {
  font-size: 14px !important;
}
.v-control-page .v-admin-panel :is(p, small, label, span) {
  line-height: 1.45;
}
.v-control-page .v-admin-list > article,
.v-control-page .v-admin-user-row,
.v-control-page .v-admin-access-card,
.v-control-page .v-admin-control-card,
.v-control-page .v-admin-settings-card,
.v-control-page .v-one-time-broadcast {
  border-color: rgba(203, 169, 104, 0.18) !important;
}
.v-permanent-notification {
  display: none !important;
}

@media (max-width: 760px) {
  .v-control-page {
    padding-bottom: calc(42px + env(safe-area-inset-bottom));
  }
  .v-control-topbar {
    height: 68px;
    padding: 0 12px;
    gap: 8px;
  }
  .v-control-brand {
    min-width: 0;
    gap: 8px !important;
  }
  .v-control-topbar i {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }
  .v-control-topbar strong {
    font-size: 10px;
  }
  .v-control-topbar small {
    display: none;
  }
  .v-control-actions {
    margin-left: auto;
  }
  .v-admin-site-link,
  .v-admin-web-exit {
    min-height: 38px;
    padding: 0 11px;
    font-size: 12px;
  }
  .v-control-page .v-admin-panel {
    width: calc(100% - 16px);
    padding-top: 14px;
  }
  .v-control-page .v-admin-tabs {
    top: 76px;
    margin-inline: -2px;
    gap: 5px;
    padding: 5px !important;
  }
  .v-control-page .v-admin-tabs button {
    min-width: max-content;
    min-height: 42px;
    padding-inline: 15px;
  }
  .v-control-page .v-admin-tab {
    gap: 12px;
    margin-top: 14px;
  }
  .v-control-page .v-admin-metrics,
  .v-control-page .v-admin-metrics-compact,
  .v-control-page .v-admin-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .v-control-page .v-admin-metrics article {
    min-height: 118px;
    padding: 15px;
  }
  .v-control-page .v-admin-metrics strong {
    font-size: 28px;
  }
  .v-control-page .v-admin-filters {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .v-control-page .v-admin-list > article {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
  }
  .v-control-page .v-admin-list > article > div:last-child {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }
  .v-control-page .v-admin-list > article > div:last-child > * {
    width: 100%;
    justify-content: center;
  }
  .v-control-page .v-admin-avatar {
    width: 44px;
    height: 44px;
  }
  .v-control-page .v-admin-user-row {
    grid-template-columns: 44px minmax(0, 1fr) 20px;
    min-height: 78px;
    padding: 13px;
  }
  .v-control-page .v-admin-user-row > b,
  .v-control-page .v-admin-user-row em {
    grid-column: 2;
  }
  .v-control-page .v-admin-user-row > svg {
    grid-area: 1 / 3 / span 3;
  }
  .v-control-page .v-admin-bulk-bar,
  .v-control-page .v-admin-bulk-actions,
  .v-control-page .v-daily-reminder-head,
  .v-control-page .v-daily-reminder-foot {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
  }
  .v-control-page .v-admin-bulk-actions > *,
  .v-control-page .v-admin-bulk-bar > button {
    width: 100%;
  }
  .v-control-page .v-broadcast-layout,
  .v-control-page .v-form-row,
  .v-control-page .v-form-row.v-three,
  .v-admin-dossier-grid {
    grid-template-columns: 1fr !important;
  }
  .v-control-page .v-telegram-preview {
    min-height: 220px;
  }
  .v-admin-dossier-head {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 10px;
  }
  .v-admin-dossier-head > div {
    min-width: calc(100% - 54px);
  }
  .v-dialog {
    width: calc(100vw - 24px) !important;
    max-width: none !important;
  }
}

@media (max-width: 390px) {
  .v-control-brand span {
    display: none;
  }
  .v-admin-site-link,
  .v-admin-web-exit {
    padding-inline: 10px;
  }
  .v-control-page .v-admin-metrics,
  .v-control-page .v-admin-metrics-compact,
  .v-control-page .v-admin-summary {
    grid-template-columns: 1fr;
  }
  .v-admin-web-login {
    width: calc(100% - 20px);
    padding: 26px 20px;
    border-radius: 20px;
  }
}

/* V123 — строгий недельный маршрут и спокойная модульная «Среда». */
.v-map-workspace {
  padding: 70px 15px calc(18px + env(safe-area-inset-bottom)) !important;
  background:
    linear-gradient(180deg, transparent 0 168px, #0001 238px, #0009 356px, #000 470px, #000 100%) 0 0 / 100% 100% no-repeat,
    linear-gradient(90deg, #000 0%, #000e 31%, #0006 61%, transparent 100%) 0 56px / 100% 414px no-repeat,
    url('/media/v-subscription-portrait-v89.png') 63% 56px / auto 414px no-repeat,
    #000 !important;
}
.v-map-workspace:before {
  z-index: 0 !important;
  background: linear-gradient(180deg, #000b 0, transparent 118px, transparent 238px, #0004 330px, #000 470px) !important;
}
.v-map-workspace:after { z-index: 0 !important; }
.v-map-cover {
  min-height: 112px !important;
  padding-top: 8px !important;
}
.v-map-cover h1 {
  width: max-content !important;
  max-width: none !important;
  white-space: nowrap !important;
  text-wrap: nowrap !important;
  font-size: clamp(23px, 6.8vw, 29px) !important;
  line-height: 1 !important;
}
.v-result-route-map > header > strong {
  white-space: nowrap !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 55px !important;
}
.v-map-workspace .v-video-route-days > button.locked {
  cursor: not-allowed;
  opacity: .58 !important;
}
.v-map-workspace .v-video-route-days > button.locked > div > strong,
.v-map-workspace .v-video-route-days > button.locked > div > p {
  color: #777973 !important;
}

.v-environment-concept-hero h2 > span {
  display: block;
}
.v-environment-concept-hero h2 > span:first-child {
  white-space: nowrap;
}
.v-environment-today > header h3 {
  white-space: nowrap !important;
  font-size: clamp(16px, 4.7vw, 20px) !important;
}
.v-environment-directory > div > button {
  border-color: #34383a !important;
  background: linear-gradient(145deg, #121415, #090b0c) !important;
  box-shadow: inset 0 1px #ffffff0b, 0 12px 24px #0004 !important;
}
.v-environment-directory > div > button:before {
  color: #666b6e !important;
}
.v-environment-directory > div > button > i {
  color: #c3c7c9 !important;
  border-color: #41474a !important;
  background: linear-gradient(145deg, #1a1d1e, #101213) !important;
  box-shadow: inset 0 1px #ffffff10 !important;
}
.v-environment-directory > div > button > svg {
  color: #989ea1 !important;
}
.v-environment-directory > div > button:active {
  border-color: #706550 !important;
  background: linear-gradient(145deg, #171816, #0d0f0f) !important;
}
.v-environment-directory > div > button:last-child {
  grid-column: 1 / -1;
  min-height: 82px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 18px;
  align-items: center !important;
  gap: 11px !important;
}
.v-environment-directory > div > button:last-child > span {
  width: auto;
  margin: 0;
  padding: 0 22px 0 0;
}
.v-environment-directory > div > button:last-child > svg {
  top: 50%;
  right: 12px;
  bottom: auto;
  transform: translateY(-50%);
}
.v-environment-directory > div > button:last-child:before {
  top: 9px;
  right: 12px;
}
.v-environment-page .v-page-intro {
  border-color: #3a3f41 !important;
  background:
    radial-gradient(circle at 92% 9%, #b59b6c12, transparent 34%),
    linear-gradient(145deg, #151718, #0a0c0d 72%) !important;
}
.v-environment-page .v-page-intro > span,
.v-environment-page .v-filter-bar svg,
.v-environment-page .v-ai-match-state svg,
.v-environment-page .v-ai-match-switch > i,
.v-environment-page .v-skill-chips i {
  color: #b7ada0 !important;
}

.v-weekly-review-metrics small {
  white-space: normal !important;
  text-align: center;
  line-height: 1.12 !important;
}

@media (max-width: 360px) {
  .v-map-cover h1 { font-size: 23px !important; }
  .v-environment-concept-hero h2 > span:first-child { font-size: 21px; }
  .v-environment-today > header h3 { font-size: 15px !important; }
}

/* V125 — golden launch, a full-scale V-access application and dating automation. */
.v-launch-screen {
  background:
    radial-gradient(ellipse at 50% 50%, #8f63262b 0%, #2b1c0b18 34%, transparent 61%),
    radial-gradient(circle at 50% 48%, #d5ad5a12 0%, transparent 32%),
    linear-gradient(180deg, #080603 0%, #020201 58%, #070502 100%) !important;
}
.v-launch-brand:after {
  width: 220px;
  height: 68px;
  background: #d4a84b38 !important;
  box-shadow: 0 0 52px #c18c3240;
}
.v-launch-brand h1 {
  text-shadow: 0 0 28px #d6ad5d24 !important;
}
.v-launch-brand h1 > span {
  background: linear-gradient(106deg, #79511d 3%, #c99743 25%, #f5d893 47%, #fff1bf 56%, #c08b35 81%, #73501e 98%) !important;
  background-size: 260% 100% !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  filter: blur(8px) drop-shadow(0 0 10px #d7ad5640);
}

/* V125 — ровная мобильная сетка: старт, диагностика, маршрут и отклики. */
.v-concept-start .v-start-steps > li > span > svg {
  width: 17px !important;
  height: 17px !important;
  stroke-width: 1.7 !important;
}

.v-current-configuration-v71 {
  margin-top: 22px !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v-current-configuration-v71 > header {
  margin: 0 0 12px !important;
  padding: 0 2px !important;
  border: 0 !important;
  background: transparent !important;
}
.v-current-configuration-v71 > header > h2 {
  margin: 0 !important;
  color: #f1f0ed !important;
  font-size: clamp(20px, 5.4vw, 24px) !important;
  line-height: 1.16 !important;
}
.v-current-configuration-v71 > .v-configuration-card {
  margin: 0 !important;
  border: 1px solid #34383a !important;
  border-radius: 16px !important;
  background: #090b0c !important;
}
.v-current-configuration-v71 .v-configuration-status-line,
.v-current-configuration-v71 .v-configuration-facts > div,
.v-current-configuration-v71 .v-configuration-signals > div {
  box-sizing: border-box !important;
  width: 100% !important;
}

.v-incoming-requests article > span {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
.v-incoming-requests article > span > button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
.v-incoming-requests article > span > button > svg {
  flex: 0 0 auto !important;
  width: 15px !important;
  height: 15px !important;
}

.v-map-workspace .v-result-route-track.v-video-route-days {
  width: 100% !important;
  max-width: 100% !important;
}
.v-map-workspace .v-video-route-days > button {
  min-height: 48px !important;
  padding: 5px 0 !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  column-gap: 10px !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  left: 16px !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
}
.v-map-workspace .v-video-route-days button > div {
  position: relative !important;
  min-width: 0 !important;
  padding-right: 4px !important;
}
.v-map-workspace .v-video-route-days button > div > small {
  font-size: 10px !important;
  line-height: 1.15 !important;
}
.v-map-workspace .v-video-route-days button > div > strong {
  margin-top: 2px !important;
  font-size: 14px !important;
  line-height: 1.16 !important;
}
.v-map-workspace .v-video-route-days button > div > p {
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
  overflow: hidden !important;
}
.v-map-workspace .v-video-route-days button.current > div {
  padding-right: 86px !important;
}
.v-map-workspace .v-video-route-days button.current > div > em {
  position: absolute !important;
  top: 50% !important;
  right: 0 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 5px 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  transform: translateY(-50%) !important;
  border-radius: 999px !important;
  font-size: 9px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

@media (max-width: 520px) {
  .v-incoming-requests article > span {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 360px) {
  .v-incoming-requests article > span > button {
    min-height: 40px !important;
    height: 40px !important;
    padding-inline: 7px !important;
    font-size: 11px !important;
  }
  .v-map-workspace .v-video-route-days > button {
    min-height: 46px !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    column-gap: 8px !important;
  }
  .v-map-workspace .v-video-route-days .v-video-route-day {
    width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
  }
  .v-map-workspace .v-result-route-track.v-video-route-days:before {
    left: 15px !important;
  }
  .v-map-workspace .v-video-route-days button > div > strong { font-size: 13px !important; }
  .v-map-workspace .v-video-route-days button > div > p { font-size: 10px !important; }
}
@keyframes v-launch-letter-in {
  from {
    opacity: 0;
    background-position: 100% 50%;
    filter: blur(8px) drop-shadow(0 0 0 #d7ad5600);
    transform: translateY(14px) rotateX(-18deg) scale(0.94);
  }
  to {
    opacity: 1;
    background-position: 10% 50%;
    filter: blur(0) drop-shadow(0 0 9px #d7ad5640);
    transform: translateY(0) rotateX(0) scale(1);
  }
}

.v-application-page {
  gap: 14px !important;
  padding: max(12px, env(safe-area-inset-top)) 14px
    calc(28px + env(safe-area-inset-bottom)) !important;
}
.v-application-intro {
  position: relative;
  min-height: 284px;
  padding: 28px 22px 22px !important;
  overflow: hidden;
  border: 1px solid #b895563d;
  border-radius: 24px;
  background:
    radial-gradient(circle at 88% 10%, #d8b66d24 0%, transparent 31%),
    linear-gradient(145deg, #17130d 0%, #0b0a08 52%, #080808 100%);
  box-shadow: inset 0 1px #fff1c21a, 0 22px 48px #0008;
}
.v-application-intro:after {
  content: "V";
  position: absolute;
  right: 18px;
  bottom: -24px;
  color: #d5b36b0d;
  font-family: Georgia, serif;
  font-size: 158px;
  line-height: 1;
  pointer-events: none;
}
.v-application-intro > span {
  position: relative;
  z-index: 1;
  color: #d2ae67;
  letter-spacing: .16em;
  font-size: 12px;
  font-weight: 650;
}
.v-application-intro h1 {
  position: relative;
  z-index: 1;
  max-width: none !important;
  margin: 46px 0 14px !important;
  font-size: clamp(42px, 11cqw, 56px) !important;
  line-height: .96 !important;
}
.v-application-intro > p {
  position: relative;
  z-index: 1;
  max-width: 36ch;
  color: #b8b4ad !important;
  font-size: 16px !important;
}
.v-application-facts {
  position: relative;
  z-index: 1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 24px 0 0;
  padding: 17px 0 0;
  display: grid;
  border-top: 1px solid #d1ae6930;
  list-style: none;
}
.v-application-facts > li {
  min-width: 0;
  padding: 0 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  border-right: 1px solid #ffffff16;
}
.v-application-facts > li:first-child { padding-left: 0; }
.v-application-facts > li:last-child { padding-right: 0; border-right: 0; }
.v-application-facts b {
  color: #f1e3c5;
  font-size: 20px;
  font-weight: 620;
}
.v-application-facts span {
  color: #8f8b84;
  white-space: nowrap;
  font-size: 12px;
}
.v-application-page .v-purchase-application {
  gap: 0 !important;
  padding: 0 20px 20px !important;
  border: 1px solid #ffffff22 !important;
  border-radius: 24px !important;
  background: linear-gradient(160deg, #111111, #080808 72%) !important;
  box-shadow: inset 0 1px #ffffff0b, 0 20px 42px #0006;
}
.v-application-form-head {
  padding: 24px 0 20px;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #ffffff18;
}
.v-application-form-head > span {
  color: #b7975c;
  letter-spacing: .15em;
  font-size: 11px;
  font-weight: 650;
}
.v-application-form-head > strong {
  margin-top: 9px;
  color: #f1f0ed;
  font-size: 24px;
  font-weight: 600;
}
.v-application-form-head > p {
  margin: 7px 0 0;
  color: #8f8f8d;
  font-size: 14px;
  line-height: 1.45;
}
.v-application-page .v-purchase-application-grid {
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  display: grid;
}
.v-application-page .v-purchase-application-grid > label {
  grid-template-columns: 34px minmax(0, 1fr);
  column-gap: 12px;
  row-gap: 12px;
  padding: 20px 0;
  display: grid;
  border-bottom: 1px solid #ffffff15;
}
.v-application-page .v-purchase-application-grid > label > b {
  grid-row: 1;
  grid-column: 1;
  color: #b79860;
  letter-spacing: .08em;
  font-size: 12px;
  font-weight: 650;
}
.v-application-page .v-purchase-application-grid > label > div {
  grid-row: 1;
  grid-column: 2;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.v-application-page .v-purchase-application-grid > label > div > span {
  color: #ecebe8;
  font-size: 16px;
  font-weight: 590;
}
.v-application-page .v-purchase-application-grid > label > div > small {
  color: #777977;
  font-size: 13px;
  line-height: 1.35;
}
.v-application-page .v-purchase-application-grid :is(input, textarea) {
  grid-row: 2;
  grid-column: 1 / -1;
  width: 100%;
  min-height: 56px;
  padding: 15px 16px;
  color: #f4f2ed !important;
  background: #171716 !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 14px !important;
  font-size: 16px !important;
  line-height: 1.4;
  box-shadow: inset 0 1px #ffffff0a;
}
.v-application-page .v-purchase-application-grid textarea {
  min-height: 132px;
  resize: vertical;
}
.v-application-page .v-purchase-application-grid :is(input, textarea):focus {
  border-color: #c2a46b82 !important;
  box-shadow: 0 0 0 3px #b6965820 !important;
  outline: none;
}
.v-application-page .v-purchase-application-grid :is(input, textarea)::placeholder {
  color: #666763;
}
.v-application-submit {
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.v-application-submit > p {
  margin: 0;
  padding-left: 14px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  border-left: 2px solid #b99659;
}
.v-application-submit > p > strong {
  color: #e5dfd3;
  font-size: 14px;
  font-weight: 600;
}
.v-application-submit > p > small {
  color: #858580;
  font-size: 13px;
  line-height: 1.45;
}
.v-application-submit .v-purchase-cta {
  min-height: 64px !important;
  color: #110e08 !important;
  background: linear-gradient(135deg, #f1d796 0%, #cba55e 48%, #9e7436 100%) !important;
  border: 1px solid #f2daa4 !important;
  border-radius: 17px !important;
  font-weight: 720 !important;
  box-shadow: 0 14px 32px #0009, inset 0 1px #fff3ce8c !important;
}
.v-admin-control-card-gold {
  border-color: #b6975c52 !important;
  background: linear-gradient(135deg, #17140f, #0d0d0d 68%) !important;
  box-shadow: inset 0 1px #f2d99b12;
}
.v-admin-control-card-gold strong { color: #eadfca !important; }
.v-admin-control-card-gold small { color: #9b9488 !important; }

@media (max-width: 380px) {
  .v-application-page { padding-inline: 10px !important; }
  .v-application-intro { min-height: 270px; padding-inline: 18px !important; }
  .v-application-intro h1 { font-size: 40px !important; }
  .v-application-page .v-purchase-application { padding-inline: 16px !important; }
  .v-application-facts > li { padding-inline: 9px; }
  .v-application-facts span { font-size: 11px; }
  .v-application-submit .v-purchase-cta { font-size: 14px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .v-launch-brand h1 > span {
    color: #e2bd71 !important;
    background: none !important;
    filter: none !important;
  }
}

/* V126 — прежняя спокойная анимация V APP с лёгким золотым тоном. */
.v-launch-screen {
  background:
    radial-gradient(ellipse at center, #15130f 0%, #050505 35%, #010101 72%)
    !important;
}
.v-launch-brand:after {
  width: 190px !important;
  height: 54px !important;
  background: #c7aa7512 !important;
  box-shadow: none !important;
  filter: blur(24px) !important;
}
.v-launch-brand h1 {
  text-shadow: none !important;
}
.v-launch-brand h1 > span {
  background: linear-gradient(
    108deg,
    #827b70 5%,
    #e3dbce 45%,
    #f6f2e9 55%,
    #9f9179 95%
  ) !important;
  background-size: 240% 100% !important;
  filter: blur(3px);
}
@keyframes v-launch-letter-in {
  from {
    opacity: 0;
    background-position: 100% 50%;
    filter: blur(8px);
    transform: translateY(14px) rotateX(-18deg) scale(0.94);
  }
  to {
    opacity: 1;
    background-position: 18% 50%;
    filter: blur(0);
    transform: translateY(0) rotateX(0) scale(1);
  }
}
@keyframes v-launch-wordmark-glow {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.72);
  }
  60% { opacity: 0.42; }
  to {
    opacity: 0.2;
    transform: translate(-50%, -50%) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-launch-brand h1 > span {
    color: #d8c9ae !important;
    background: none !important;
    filter: none !important;
  }
}

/* V127 — размытие только в момент появления, затем полностью резкий V APP. */
.v-launch-brand h1 > span {
  filter: blur(3px);
}
@keyframes v-launch-letter-in {
  from {
    opacity: 0;
    background-position: 100% 50%;
    filter: blur(3px);
    transform: translateY(14px) rotateX(-18deg) scale(0.94);
  }
  to {
    opacity: 1;
    background-position: 18% 50%;
    filter: blur(0);
    transform: translateY(0) rotateX(0) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .v-launch-brand h1 > span { filter: none !important; }
}

/* V128 — release hardening: native letters and strictly circular route markers. */
.v-launch-screen {
  background:
    radial-gradient(ellipse at center, #15130f 0%, #050505 34%, #010101 72%)
    !important;
}
.v-launch-brand:after {
  width: 176px !important;
  height: 48px !important;
  background: rgb(199 170 117 / 0.08) !important;
  box-shadow: none !important;
  filter: blur(22px) !important;
  opacity: 0.42;
}
.v-launch-brand h1 {
  color: #d8cbb6 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  text-shadow: 0 0 16px rgb(199 170 117 / 0.08) !important;
}
.v-launch-brand h1 > span {
  color: #d8cbb6 !important;
  background: none !important;
  background-image: none !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  filter: none !important;
  will-change: opacity, transform;
  animation-name: v-launch-letter-in-v128 !important;
  animation-duration: 0.56s !important;
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1) !important;
  animation-fill-mode: both !important;
}
.v-launch-brand h1 > span:nth-child(1) { animation-delay: 0.04s !important; }
.v-launch-brand h1 > span:nth-child(2) { animation-delay: 0.12s !important; }
.v-launch-brand h1 > span:nth-child(3) { animation-delay: 0.20s !important; }
.v-launch-brand h1 > span:nth-child(4) { animation-delay: 0.28s !important; }
@keyframes v-launch-letter-in-v128 {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.v-map-workspace .v-video-route-days > button {
  align-items: center !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day {
  box-sizing: border-box !important;
  inline-size: 34px !important;
  block-size: 34px !important;
  min-inline-size: 34px !important;
  min-block-size: 34px !important;
  max-inline-size: 34px !important;
  max-block-size: 34px !important;
  aspect-ratio: 1 / 1 !important;
  align-self: center !important;
  justify-self: center !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  padding: 0 !important;
  overflow: hidden !important;
  line-height: 1 !important;
  transform: none !important;
  position: relative;
  z-index: 1;
}
.v-map-workspace .v-video-route-days .v-video-route-day > svg {
  box-sizing: border-box !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  flex: 0 0 15px !important;
  stroke-width: 1.9 !important;
}
.v-map-workspace .v-video-route-days .v-video-route-day > strong {
  margin: 0 !important;
  line-height: 1 !important;
}
.v-map-workspace .v-result-route-track.v-video-route-days:before {
  z-index: 0;
}
.v-control-actions:empty {
  display: none;
}

@media (max-width: 360px) {
  .v-map-workspace .v-video-route-days .v-video-route-day {
    inline-size: 32px !important;
    block-size: 32px !important;
    min-inline-size: 32px !important;
    min-block-size: 32px !important;
    max-inline-size: 32px !important;
    max-block-size: 32px !important;
    flex-basis: 32px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .v-launch-brand h1 > span {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}

/* V129 — один трек без дублирующих линий и круглые маркеры во вкладке карты. */
.v-personal-route-result .v-route-tab-progress {
  display: none !important;
}

.v-personal-route-result .v-result-route-track.v-video-route-days:before {
  top: 24px !important;
  bottom: 24px !important;
  left: 17px !important;
  width: 1px !important;
  z-index: 0 !important;
  background: rgb(var(--v117-gold-rgb) / .46) !important;
  box-shadow: none !important;
}

.v-personal-route-result .v-video-route-days > button {
  min-height: 62px !important;
  grid-template-columns: 35px minmax(0, 1fr) 16px !important;
  align-items: center !important;
  gap: 10px !important;
  border-bottom: 0 !important;
}

.v-personal-route-result .v-video-route-days .v-video-route-day {
  box-sizing: border-box !important;
  inline-size: 35px !important;
  block-size: 35px !important;
  min-inline-size: 35px !important;
  min-block-size: 35px !important;
  max-inline-size: 35px !important;
  max-block-size: 35px !important;
  width: 35px !important;
  height: 35px !important;
  min-width: 35px !important;
  min-height: 35px !important;
  max-width: 35px !important;
  max-height: 35px !important;
  aspect-ratio: 1 / 1 !important;
  align-self: center !important;
  justify-self: center !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 35px !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #ddd8d0 !important;
  line-height: 1 !important;
  border: 1px solid rgb(var(--v117-gold-rgb) / .48) !important;
  border-radius: 50% !important;
  background: #080909 !important;
  transform: none !important;
  position: relative !important;
  z-index: 1 !important;
}

.v-personal-route-result .v-video-route-days .v-video-route-day > svg {
  box-sizing: border-box !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  flex: 0 0 14px !important;
  stroke-width: 1.9 !important;
}

.v-personal-route-result .v-video-route-days .v-video-route-day > strong {
  margin: 0 !important;
  line-height: 1 !important;
}

.v-personal-route-result .v-video-route-days button.current > .v-video-route-day,
.v-personal-route-result .v-video-route-days button.completed > .v-video-route-day {
  color: #15130f !important;
  border-color: var(--v117-gold) !important;
  background: #c5ad86 !important;
}

/* V130 — подписка на 30 дней: условия видны до кнопки, статус заявки — после неё. */
.v-purchase-terms {
  display: grid;
  gap: 10px;
  margin: 18px 0 16px;
  padding: 16px 18px;
  border: 1px solid #353535;
  border-radius: 18px;
  background: #151515;
}
.v-purchase-terms > small {
  color: #b8a18b;
  font-size: 12px;
  letter-spacing: .12em;
}
.v-purchase-terms p {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
  color: #b8b3aa;
  font-size: 14px;
  line-height: 1.4;
}
.v-purchase-terms p > b {
  color: #fff;
  font-weight: 600;
}
.v-manual-payment-note.is-pending {
  display: flex !important;
  margin-top: 12px;
}

/* V130 — «V-канал» стал вкладкой: бесплатный старт внутри неё оставляет нижнюю навигацию. */
.v-app:has(.v-library-page.is-starter-mode.is-tab) .v-bottom-nav {
  display: grid !important;
}
.v-library-page.is-starter-mode.is-tab .v-starter-pack {
  padding-bottom: calc(112px + env(safe-area-inset-bottom)) !important;
}

/* V131 — шлифовка после проверки: старт, подписка, чат, профиль, «Сегодня», материал, архив, «Сдвиг», админка на телефоне. */
.v-start-steps > li > span:after {
  content: none !important;
  display: none !important;
}
.v-purchase-intro > h1,
.v-concept-purchase .v-purchase-intro h1 {
  max-width: none !important;
  white-space: normal !important;
  text-wrap: balance;
  overflow-wrap: break-word;
}
.v-community-chat-messages > article.own > div p {
  color: #151412 !important;
}
.v-community-chat-messages > article.own > div small,
.v-community-chat-messages > article.own > div button {
  color: #6f685e !important;
}
@media (width <= 600px) {
  .v-community-page-list > article > .v-community-row-actions {
    grid-column: 2;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
}
@media (width <= 410px) {
  .v-profile-info-grid section {
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: center;
    column-gap: 14px;
    row-gap: 2px;
    padding: 15px 17px !important;
  }
  .v-profile-info-grid section > svg {
    grid-row: span 2;
  }
  .v-profile-info-grid span,
  .v-profile-info-grid p {
    margin: 0 !important;
  }
}
.v-today-home .v-hero-copy > span {
  max-width: none !important;
}
.v-reader-external {
  width: 100%;
  color: inherit;
  font: inherit;
  text-align: center;
  align-content: center;
  justify-items: center;
  gap: 16px;
  cursor: pointer;
  transition: border-color .2s ease;
}
.v-reader-external > svg {
  color: var(--v102-accent, #d5b679);
}
.v-reader-external > span {
  display: grid;
  gap: 6px;
}
.v-reader-external strong {
  color: #f1ede6;
  font-size: 16px;
  font-weight: 600;
}
.v-reader-external small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #9b9288;
  font-size: 12px;
}
.v-reader-external small svg {
  width: 13px !important;
  height: 13px !important;
  stroke-width: 2 !important;
}
.v-reader-external:active {
  border-color: #6d5d40;
}
.v-channel-material-list > button > div > p {
  display: -webkit-box !important;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}
.v-archive-more {
  width: 100%;
  min-height: 48px;
  margin-top: 4px;
  border: 1px solid #3f392f;
  border-radius: 12px;
  background: #0f100e;
  color: #e7dfd1;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
@media (width <= 480px) {
  .v-route-shift-intro {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }
  .v-route-shift-intro > small {
    max-width: none !important;
    text-align: left !important;
  }
}
@media (width <= 760px) {
  .v-control-page .v-admin-tabs,
  .v-admin-tabs {
    position: static !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    gap: 4px !important;
  }
  .v-control-page .v-admin-tabs button,
  .v-admin-tabs button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding-inline: 4px !important;
    font-size: 13px !important;
  }
  .v-control-page .v-card-heading {
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
  }
  .v-control-page .v-card-heading > small {
    max-width: none !important;
    color: #8f8b85 !important;
    font-size: 14px !important;
    text-align: left !important;
  }
}
.v-reader-page .v-full-page-intro {
  min-height: 0 !important;
}
.v-environment-question {
  padding-bottom: 66px !important;
}
.v-starter-video-rail button strong {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
  white-space: normal !important;
  text-overflow: clip !important;
}
@media (width <= 420px) {
  .v-purchase-terms p {
    grid-template-columns: 1fr;
    gap: 2px;
  }
  .v-purchase-terms p > b {
    color: #d8d2c8;
    font-size: 13px;
  }
}
@media (width <= 760px) {
  .v-control-page .v-admin-dossier-page {
    padding-inline: 12px !important;
  }
}
.v-home-renewal {
  width: 100%;
  margin: 2px 0 4px;
  padding: 14px 14px 14px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: inherit;
  font: inherit;
  text-align: left;
  border: 1px solid #5b4e38;
  border-radius: 14px;
  background: linear-gradient(145deg, #17140f, #0c0c0b);
  cursor: pointer;
}
.v-home-renewal > span {
  min-width: 0;
  display: grid;
  gap: 4px;
}
.v-home-renewal strong {
  color: #f1ede6;
  font-size: 15px;
  font-weight: 600;
}
.v-home-renewal small {
  color: #9b9288;
  font-size: 12px;
  line-height: 1.35;
}
.v-home-renewal em {
  flex: none;
  padding: 9px 14px;
  color: #151412;
  font-size: 13px;
  font-style: normal;
  font-weight: 650;
  border-radius: 10px;
  background: #e8e4dd;
}
.v-app .v-screen.v-map-workspace {
  padding-inline: 14px !important;
}
@media (max-width: 360px) {
  .v-app .v-screen.v-map-workspace {
    padding-inline: 12px !important;
  }
}
.v-app:has(.v-bottom-nav) .v-screen.v-map-workspace {
  padding-bottom: calc(96px + env(safe-area-inset-bottom)) !important;
}
.v-app:has(.v-bottom-nav):not(:has(.v-map-workspace)) .v-main:not(.v-main-chat) {
  padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
}
@media (width <= 410px) {
  .v-people-page-list > article > .v-person-card-main {
    grid-column: 1 / -1 !important;
  }
  .v-people-page-list > article > button:not(.v-person-card-main) {
    grid-column: 1 / -1 !important;
    justify-self: start;
    margin-left: 59px;
  }
}
.v-full-form-page > .v-full-page-intro {
  min-height: 0 !important;
}
@media (width <= 760px) {
  .v-control-page header > div:has(> strong + small) {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
  }
  .v-control-page header > div:has(> strong + small) > small {
    max-width: none !important;
    color: #8f8b85 !important;
    font-size: 13px !important;
    text-align: left !important;
  }
}

/* V132 — «Сдвиг» на «Сегодня», порог просмотра урока, согласие на данные, воронка в админке. */
.v-home-shift-result {
  max-width: 230px;
  margin: 2px 0 12px !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: #c9c3b8 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}
.v-reader-gate {
  display: block;
  margin: 2px 0 10px;
  color: #9b9288;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
}
.v-reader-page .v-primary:disabled {
  opacity: .45;
  cursor: not-allowed;
}
.v-portrait-consent {
  margin: 14px 0 12px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  color: #a7a29a;
  font-size: 12px;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
}
.v-portrait-consent input {
  width: 18px;
  height: 18px;
  margin: 1px 0 0;
  accent-color: #c3ae98;
}
.v-portrait-consent a {
  color: #d8c3a5;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.v-admin-funnel-card {
  margin-bottom: 14px;
}
.v-admin-funnel-card > header strong {
  font-size: 18px;
}
.v-admin-funnel-card > header small {
  color: #8f8b85;
  font-size: 12px;
}
.v-admin-funnel-stages > article {
  min-height: 104px;
}
.v-admin-funnel-stages i {
  font-size: 10px;
}
.v-admin-funnel-stages span {
  color: #b8b3aa;
  font-size: 12px;
}
.v-admin-funnel-stages small {
  margin-top: 4px;
  color: #77736d;
  font-size: 11px;
}
.v-admin-north-star {
  margin: 12px 0 0;
  padding: 12px 14px;
  color: #b8b3aa;
  font-size: 13px;
  line-height: 1.4;
  border: 1px solid #4a4030;
  border-radius: 12px;
  background: #12110e;
}
.v-admin-north-star strong {
  color: #f1ede6;
  font-size: 16px;
}
.v-admin-route-distribution strong {
  font-size: 13px;
}
.v-admin-route-distribution small {
  font-size: 11px;
}
.v-admin-route-distribution b {
  width: auto;
  min-width: 28px;
  padding: 0 8px;
  border-radius: 14px;
  font-size: 12px;
}

/* V133 — a locked «Отметить как пройдено» looks locked and answers a tap with what is left */
.v-app .v-reader-page .v-primary.is-locked,
.v-app .v-reader-page .v-primary.is-locked[aria-pressed="false"] {
  color: #8f8a83 !important;
  background: #232323 !important;
  border-color: #ffffff1a !important;
  box-shadow: none !important;
  cursor: not-allowed;
}
.v-app .v-reader-page .v-reader-gate.is-nudged {
  color: #e1c88d !important;
  animation: v-reader-gate-nudge 0.42s ease;
}
@keyframes v-reader-gate-nudge {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}
@media (prefers-reduced-motion: reduce) {
  .v-app .v-reader-page .v-reader-gate.is-nudged { animation: none; }
}
