/*! tailwindcss v4.0.17 | MIT License | https://tailwindcss.com */
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-500: oklch(0.637 0.237 25.331);
    --spacing: 0.25rem;
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: color-mix(in oklab, currentColor 50%, transparent);
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .\@container {
    container-type: inline-size;
  }
  .\@container-\[inline-size\] {
    container-type: inline-size;
  }
  .pointer-events-auto {
    pointer-events: auto;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
  }
  .\!absolute {
    position: absolute !important;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .isolate {
    isolation: isolate;
  }
  .isolation-auto {
    isolation: auto;
  }
  .z-auto {
    z-index: auto;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .order-none {
    order: 0;
  }
  .col-auto {
    grid-column: auto;
  }
  .col-span-full {
    grid-column: 1 / -1;
  }
  .col-start-auto {
    grid-column-start: auto;
  }
  .col-end-auto {
    grid-column-end: auto;
  }
  .row-auto {
    grid-row: auto;
  }
  .row-span-full {
    grid-row: 1 / -1;
  }
  .row-start-auto {
    grid-row-start: auto;
  }
  .row-end-auto {
    grid-row-end: auto;
  }
  .float-end {
    float: inline-end;
  }
  .float-left {
    float: left;
  }
  .float-none {
    float: none;
  }
  .float-right {
    float: right;
  }
  .float-start {
    float: inline-start;
  }
  .clear-both {
    clear: both;
  }
  .clear-end {
    clear: inline-end;
  }
  .clear-left {
    clear: left;
  }
  .clear-none {
    clear: none;
  }
  .clear-right {
    clear: right;
  }
  .clear-start {
    clear: inline-start;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .container\! {
    width: 100% !important;
    @media (width >= 40rem) {
      max-width: 40rem !important;
    }
    @media (width >= 48rem) {
      max-width: 48rem !important;
    }
    @media (width >= 64rem) {
      max-width: 64rem !important;
    }
    @media (width >= 80rem) {
      max-width: 80rem !important;
    }
    @media (width >= 96rem) {
      max-width: 96rem !important;
    }
  }
  .box-border {
    box-sizing: border-box;
  }
  .box-content {
    box-sizing: content-box;
  }
  .line-clamp-none {
    overflow: visible;
    display: block;
    -webkit-box-orient: horizontal;
    -webkit-line-clamp: unset;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .flow-root {
    display: flow-root;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .inline-table {
    display: inline-table;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-column {
    display: table-column;
  }
  .table-column-group {
    display: table-column-group;
  }
  .table-footer-group {
    display: table-footer-group;
  }
  .table-header-group {
    display: table-header-group;
  }
  .table-row {
    display: table-row;
  }
  .table-row-group {
    display: table-row-group;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .field-sizing-fixed {
    field-sizing: fixed;
  }
  .aspect-auto {
    aspect-ratio: auto;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .h-screen {
    height: 100vh;
  }
  .max-h-none {
    max-height: none;
  }
  .max-h-screen {
    max-height: 100vh;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/2 {
    width: calc(1/2 * 100%);
  }
  .w-screen {
    width: 100vw;
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-screen {
    max-width: 100vw;
  }
  .min-w-screen {
    min-width: 100vw;
  }
  .flex-auto {
    flex: auto;
  }
  .flex-initial {
    flex: 0 auto;
  }
  .flex-none {
    flex: none;
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .shrink {
    flex-shrink: 1;
  }
  .flex-grow {
    flex-grow: 1;
  }
  .grow {
    flex-grow: 1;
  }
  .basis-auto {
    flex-basis: auto;
  }
  .basis-full {
    flex-basis: 100%;
  }
  .table-auto {
    table-layout: auto;
  }
  .table-fixed {
    table-layout: fixed;
  }
  .caption-bottom {
    caption-side: bottom;
  }
  .caption-top {
    caption-side: top;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .border-separate {
    border-collapse: separate;
  }
  .origin-bottom {
    transform-origin: bottom;
  }
  .origin-bottom-left {
    transform-origin: bottom left;
  }
  .origin-bottom-right {
    transform-origin: bottom right;
  }
  .origin-center {
    transform-origin: center;
  }
  .origin-left {
    transform-origin: left;
  }
  .origin-right {
    transform-origin: right;
  }
  .origin-top {
    transform-origin: top;
  }
  .origin-top-left {
    transform-origin: top left;
  }
  .origin-top-right {
    transform-origin: top right;
  }
  .-translate-full {
    --tw-translate-x: -100%;
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-full {
    --tw-translate-x: 100%;
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-3d {
    translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
  }
  .translate-none {
    translate: none;
  }
  .scale-3d {
    scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
  }
  .scale-none {
    scale: none;
  }
  .rotate-none {
    rotate: none;
  }
  .transform {
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }
  .transform-cpu {
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }
  .transform-gpu {
    transform: translateZ(0) var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }
  .transform-none {
    transform: none;
  }
  .animate-none {
    animation: none;
  }
  .touch-pinch-zoom {
    --tw-pinch-zoom: pinch-zoom;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .resize-x {
    resize: horizontal;
  }
  .resize-y {
    resize: vertical;
  }
  .snap-none {
    scroll-snap-type: none;
  }
  .snap-mandatory {
    --tw-scroll-snap-strictness: mandatory;
  }
  .snap-proximity {
    --tw-scroll-snap-strictness: proximity;
  }
  .snap-align-none {
    scroll-snap-align: none;
  }
  .snap-center {
    scroll-snap-align: center;
  }
  .snap-end {
    scroll-snap-align: end;
  }
  .snap-start {
    scroll-snap-align: start;
  }
  .snap-always {
    scroll-snap-stop: always;
  }
  .snap-normal {
    scroll-snap-stop: normal;
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-outside {
    list-style-position: outside;
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: none;
  }
  .list-image-none {
    list-style-image: none;
  }
  .appearance-auto {
    appearance: auto;
  }
  .appearance-none {
    appearance: none;
  }
  .columns-auto {
    columns: auto;
  }
  .auto-cols-auto {
    grid-auto-columns: auto;
  }
  .auto-cols-fr {
    grid-auto-columns: minmax(0, 1fr);
  }
  .auto-cols-max {
    grid-auto-columns: max-content;
  }
  .auto-cols-min {
    grid-auto-columns: min-content;
  }
  .grid-flow-col {
    grid-auto-flow: column;
  }
  .grid-flow-col-dense {
    grid-auto-flow: column dense;
  }
  .grid-flow-dense {
    grid-auto-flow: dense;
  }
  .grid-flow-row {
    grid-auto-flow: row;
  }
  .grid-flow-row-dense {
    grid-auto-flow: row dense;
  }
  .auto-rows-auto {
    grid-auto-rows: auto;
  }
  .auto-rows-fr {
    grid-auto-rows: minmax(0, 1fr);
  }
  .auto-rows-max {
    grid-auto-rows: max-content;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .grid-cols-none {
    grid-template-columns: none;
  }
  .grid-cols-subgrid {
    grid-template-columns: subgrid;
  }
  .grid-rows-none {
    grid-template-rows: none;
  }
  .grid-rows-subgrid {
    grid-template-rows: subgrid;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-nowrap {
    flex-wrap: nowrap;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .flex-wrap-reverse {
    flex-wrap: wrap-reverse;
  }
  .place-content-around {
    place-content: space-around;
  }
  .place-content-baseline {
    place-content: baseline;
  }
  .place-content-between {
    place-content: space-between;
  }
  .place-content-center {
    place-content: center;
  }
  .place-content-end {
    place-content: end;
  }
  .place-content-evenly {
    place-content: space-evenly;
  }
  .place-content-start {
    place-content: start;
  }
  .place-content-stretch {
    place-content: stretch;
  }
  .place-items-baseline {
    place-items: baseline;
  }
  .place-items-center {
    place-items: center;
  }
  .place-items-end {
    place-items: end;
  }
  .place-items-start {
    place-items: start;
  }
  .place-items-stretch {
    place-items: stretch;
  }
  .content-around {
    align-content: space-around;
  }
  .content-baseline {
    align-content: baseline;
  }
  .content-between {
    align-content: space-between;
  }
  .content-center {
    align-content: center;
  }
  .content-end {
    align-content: flex-end;
  }
  .content-evenly {
    align-content: space-evenly;
  }
  .content-normal {
    align-content: normal;
  }
  .content-start {
    align-content: flex-start;
  }
  .content-stretch {
    align-content: stretch;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-around {
    justify-content: space-around;
  }
  .justify-baseline {
    justify-content: baseline;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-evenly {
    justify-content: space-evenly;
  }
  .justify-normal {
    justify-content: normal;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .justify-stretch {
    justify-content: stretch;
  }
  .justify-items-center {
    justify-items: center;
  }
  .justify-items-end {
    justify-items: end;
  }
  .justify-items-normal {
    justify-items: normal;
  }
  .justify-items-start {
    justify-items: start;
  }
  .justify-items-stretch {
    justify-items: stretch;
  }
  .space-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 1;
    }
  }
  .space-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 1;
    }
  }
  .divide-x {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 0;
      border-inline-style: var(--tw-border-style);
      border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
      border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 1;
    }
  }
  .place-self-auto {
    place-self: auto;
  }
  .place-self-center {
    place-self: center;
  }
  .place-self-end {
    place-self: end;
  }
  .place-self-start {
    place-self: start;
  }
  .place-self-stretch {
    place-self: stretch;
  }
  .self-auto {
    align-self: auto;
  }
  .self-baseline {
    align-self: baseline;
  }
  .self-center {
    align-self: center;
  }
  .self-end {
    align-self: flex-end;
  }
  .self-start {
    align-self: flex-start;
  }
  .self-stretch {
    align-self: stretch;
  }
  .justify-self-auto {
    justify-self: auto;
  }
  .justify-self-center {
    justify-self: center;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .justify-self-start {
    justify-self: flex-start;
  }
  .justify-self-stretch {
    justify-self: stretch;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .scroll-auto {
    scroll-behavior: auto;
  }
  .scroll-smooth {
    scroll-behavior: smooth;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-s {
    border-start-start-radius: 0.25rem;
    border-end-start-radius: 0.25rem;
  }
  .rounded-ss {
    border-start-start-radius: 0.25rem;
  }
  .rounded-e {
    border-start-end-radius: 0.25rem;
    border-end-end-radius: 0.25rem;
  }
  .rounded-se {
    border-start-end-radius: 0.25rem;
  }
  .rounded-ee {
    border-end-end-radius: 0.25rem;
  }
  .rounded-es {
    border-end-start-radius: 0.25rem;
  }
  .rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-tl {
    border-top-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-tr {
    border-top-right-radius: 0.25rem;
  }
  .rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-br {
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-bl {
    border-bottom-left-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-x {
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }
  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-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-dotted {
    --tw-border-style: dotted;
    border-style: dotted;
  }
  .border-double {
    --tw-border-style: double;
    border-style: double;
  }
  .border-hidden {
    --tw-border-style: hidden;
    border-style: hidden;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-solid {
    --tw-border-style: solid;
    border-style: solid;
  }
  .bg-\(--my_variable\) {
    background-color: var(--my_variable);
  }
  .bg-\(color\:--my-color\) {
    background-color: var(--my-color);
  }
  .bg-\[\#0088cc\] {
    background-color: #0088cc;
  }
  .bg-\[color\:var\(--my-color\)\] {
    background-color: var(--my-color);
  }
  .bg-\[var\(--my_variable\)\] {
    background-color: var(--my_variable);
  }
  .bg-red-500 {
    background-color: var(--color-red-500);
  }
  .bg-red-500\/50 {
    background-color: color-mix(in oklab, var(--color-red-500) 50%, transparent);
  }
  .bg-red-500\/\[50\%\] {
    background-color: color-mix(in oklab, var(--color-red-500) 50%, transparent);
  }
  .-bg-conic {
    --tw-gradient-position: in oklab;
    background-image: conic-gradient(var(--tw-gradient-stops));
  }
  .bg-conic {
    --tw-gradient-position: in oklab;
    background-image: conic-gradient(var(--tw-gradient-stops));
  }
  .bg-radial {
    --tw-gradient-position: in oklab;
    background-image: radial-gradient(var(--tw-gradient-stops));
  }
  .bg-none {
    background-image: none;
  }
  .via-none {
    --tw-gradient-via-stops: initial;
  }
  .box-decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .box-decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
  }
  .decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
  }
  .bg-auto {
    background-size: auto;
  }
  .bg-contain {
    background-size: contain;
  }
  .bg-cover {
    background-size: cover;
  }
  .bg-fixed {
    background-attachment: fixed;
  }
  .bg-local {
    background-attachment: local;
  }
  .bg-scroll {
    background-attachment: scroll;
  }
  .bg-clip-border {
    background-clip: border-box;
  }
  .bg-clip-content {
    background-clip: content-box;
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .bg-clip-text {
    background-clip: text;
  }
  .bg-bottom {
    background-position: bottom;
  }
  .bg-center {
    background-position: center;
  }
  .bg-left {
    background-position: left;
  }
  .bg-left-bottom {
    background-position: left bottom;
  }
  .bg-left-top {
    background-position: left top;
  }
  .bg-right {
    background-position: right;
  }
  .bg-right-bottom {
    background-position: right bottom;
  }
  .bg-right-top {
    background-position: right top;
  }
  .bg-top {
    background-position: top;
  }
  .bg-no-repeat {
    background-repeat: no-repeat;
  }
  .bg-repeat {
    background-repeat: repeat;
  }
  .bg-repeat-round {
    background-repeat: round;
  }
  .bg-repeat-space {
    background-repeat: space;
  }
  .bg-repeat-x {
    background-repeat: repeat-x;
  }
  .bg-repeat-y {
    background-repeat: repeat-y;
  }
  .bg-origin-border {
    background-origin: border-box;
  }
  .bg-origin-content {
    background-origin: content-box;
  }
  .bg-origin-padding {
    background-origin: padding-box;
  }
  .fill-none {
    fill: none;
  }
  .stroke-none {
    stroke: none;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-fill {
    object-fit: fill;
  }
  .object-none {
    object-fit: none;
  }
  .object-scale-down {
    object-fit: scale-down;
  }
  .object-bottom {
    object-position: bottom;
  }
  .object-center {
    object-position: center;
  }
  .object-left {
    object-position: left;
  }
  .object-left-bottom {
    object-position: left bottom;
  }
  .object-left-top {
    object-position: left top;
  }
  .object-right {
    object-position: right;
  }
  .object-right-bottom {
    object-position: right bottom;
  }
  .object-right-top {
    object-position: right top;
  }
  .object-top {
    object-position: top;
  }
  .text-center {
    text-align: center;
  }
  .text-end {
    text-align: end;
  }
  .text-justify {
    text-align: justify;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .text-start {
    text-align: start;
  }
  .align-baseline {
    vertical-align: baseline;
  }
  .align-bottom {
    vertical-align: bottom;
  }
  .align-middle {
    vertical-align: middle;
  }
  .align-sub {
    vertical-align: sub;
  }
  .align-super {
    vertical-align: super;
  }
  .align-text-bottom {
    vertical-align: text-bottom;
  }
  .align-text-top {
    vertical-align: text-top;
  }
  .align-top {
    vertical-align: top;
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .text-balance {
    text-wrap: balance;
  }
  .text-nowrap {
    text-wrap: nowrap;
  }
  .text-pretty {
    text-wrap: pretty;
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .break-normal {
    overflow-wrap: normal;
    word-break: normal;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .break-all {
    word-break: break-all;
  }
  .break-keep {
    word-break: keep-all;
  }
  .overflow-ellipsis {
    text-overflow: ellipsis;
  }
  .text-clip {
    text-overflow: clip;
  }
  .text-ellipsis {
    text-overflow: ellipsis;
  }
  .hyphens-auto {
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  .hyphens-manual {
    -webkit-hyphens: manual;
    hyphens: manual;
  }
  .hyphens-none {
    -webkit-hyphens: none;
    hyphens: none;
  }
  .whitespace-break-spaces {
    white-space: break-spaces;
  }
  .whitespace-normal {
    white-space: normal;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre {
    white-space: pre;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .\[color\:red\] {
    color: red;
  }
  .\[color\:red\]\/50 {
    color: color-mix(in oklab, red 50%, transparent);
  }
  .\[color\:red\]\/50\! {
    color: color-mix(in oklab, red 50%, transparent) !important;
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .font-stretch-condensed {
    font-stretch: condensed;
  }
  .font-stretch-expanded {
    font-stretch: expanded;
  }
  .font-stretch-extra-condensed {
    font-stretch: extra-condensed;
  }
  .font-stretch-extra-expanded {
    font-stretch: extra-expanded;
  }
  .font-stretch-normal {
    font-stretch: normal;
  }
  .font-stretch-semi-condensed {
    font-stretch: semi-condensed;
  }
  .font-stretch-semi-expanded {
    font-stretch: semi-expanded;
  }
  .font-stretch-ultra-condensed {
    font-stretch: ultra-condensed;
  }
  .font-stretch-ultra-expanded {
    font-stretch: ultra-expanded;
  }
  .diagonal-fractions {
    --tw-numeric-fraction: diagonal-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .lining-nums {
    --tw-numeric-figure: lining-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .oldstyle-nums {
    --tw-numeric-figure: oldstyle-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .proportional-nums {
    --tw-numeric-spacing: proportional-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .slashed-zero {
    --tw-slashed-zero: slashed-zero;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .stacked-fractions {
    --tw-numeric-fraction: stacked-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .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,);
  }
  .normal-nums {
    font-variant-numeric: normal;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-dashed {
    text-decoration-style: dashed;
  }
  .decoration-dotted {
    text-decoration-style: dotted;
  }
  .decoration-double {
    text-decoration-style: double;
  }
  .decoration-solid {
    text-decoration-style: solid;
  }
  .decoration-wavy {
    text-decoration-style: wavy;
  }
  .decoration-auto {
    text-decoration-thickness: auto;
  }
  .decoration-from-font {
    text-decoration-thickness: from-font;
  }
  .underline-offset-auto {
    text-underline-offset: auto;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
  }
  .accent-auto {
    accent-color: auto;
  }
  .scheme-dark {
    color-scheme: dark;
  }
  .scheme-light {
    color-scheme: light;
  }
  .scheme-light-dark {
    color-scheme: light dark;
  }
  .scheme-normal {
    color-scheme: normal;
  }
  .scheme-only-dark {
    color-scheme: only dark;
  }
  .scheme-only-light {
    color-scheme: only light;
  }
  .mix-blend-plus-darker {
    mix-blend-mode: plus-darker;
  }
  .mix-blend-plus-lighter {
    mix-blend-mode: plus-lighter;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --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);
  }
  .inset-ring {
    --tw-inset-ring-shadow: inset 0 0 0 1px var(--tw-inset-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);
  }
  .shadow-initial {
    --tw-shadow-color: initial;
  }
  .inset-shadow-initial {
    --tw-inset-shadow-color: initial;
  }
  .outline-hidden {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .blur-none {
    --tw-blur:  ;
    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,);
  }
  .drop-shadow {
    --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
    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,);
  }
  .drop-shadow-none {
    --tw-drop-shadow:  ;
    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,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    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,);
  }
  .invert {
    --tw-invert: invert(100%);
    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,);
  }
  .sepia {
    --tw-sepia: sepia(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-none {
    --tw-backdrop-blur:  ;
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-grayscale {
    --tw-backdrop-grayscale: grayscale(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-invert {
    --tw-backdrop-invert: invert(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-sepia {
    --tw-backdrop-sepia: sepia(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, 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;
    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;
  }
  .transition-discrete {
    transition-behavior: allow-discrete;
  }
  .transition-normal {
    transition-behavior: normal;
  }
  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }
  .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;
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .will-change-auto {
    will-change: auto;
  }
  .will-change-contents {
    will-change: contents;
  }
  .will-change-scroll {
    will-change: scroll-position;
  }
  .will-change-transform {
    will-change: transform;
  }
  .contain-inline-size {
    --tw-contain-size: inline-size;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-layout {
    --tw-contain-layout: layout;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-paint {
    --tw-contain-paint: paint;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-size {
    --tw-contain-size: size;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-style {
    --tw-contain-style: style;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-content {
    contain: content;
  }
  .contain-none {
    contain: none;
  }
  .contain-strict {
    contain: strict;
  }
  .content-none {
    --tw-content: none;
    content: none;
  }
  .forced-color-adjust-auto {
    forced-color-adjust: auto;
  }
  .forced-color-adjust-none {
    forced-color-adjust: none;
  }
  .outline-dashed {
    --tw-outline-style: dashed;
    outline-style: dashed;
  }
  .outline-dotted {
    --tw-outline-style: dotted;
    outline-style: dotted;
  }
  .outline-double {
    --tw-outline-style: double;
    outline-style: double;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .outline-solid {
    --tw-outline-style: solid;
    outline-style: solid;
  }
  .\[hash\:10\] {
    hash: 10;
  }
  .\[k\:K\] {
    k: K;
  }
  .\[vite\:html\] {
    vite: html;
  }
  .backface-hidden {
    backface-visibility: hidden;
  }
  .backface-visible {
    backface-visibility: visible;
  }
  .divide-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 1;
    }
  }
  .duration-initial {
    --tw-duration: initial;
  }
  .ease-initial {
    --tw-ease: initial;
  }
  .perspective-none {
    perspective: none;
  }
  .perspective-origin-bottom {
    perspective-origin: bottom;
  }
  .perspective-origin-bottom-left {
    perspective-origin: bottom left;
  }
  .perspective-origin-bottom-right {
    perspective-origin: bottom right;
  }
  .perspective-origin-center {
    perspective-origin: center;
  }
  .perspective-origin-left {
    perspective-origin: left;
  }
  .perspective-origin-right {
    perspective-origin: right;
  }
  .perspective-origin-top {
    perspective-origin: top;
  }
  .perspective-origin-top-left {
    perspective-origin: top left;
  }
  .perspective-origin-top-right {
    perspective-origin: top right;
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .transform-3d {
    transform-style: preserve-3d;
  }
  .transform-border {
    transform-box: border-box;
  }
  .transform-content {
    transform-box: content-box;
  }
  .transform-fill {
    transform-box: fill-box;
  }
  .transform-flat {
    transform-style: flat;
  }
  .transform-stroke {
    transform-box: stroke-box;
  }
  .transform-view {
    transform-box: view-box;
  }
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/static/fonts/plus-jakarta-sans-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --color-canvas: #f3f1e9;
  --color-surface: #ffffff;
  --color-surface-muted: #f7f8f6;
  --color-surface-hover: #eef1ee;
  --color-text: #17231e;
  --color-text-muted: #65716c;
  --color-border: #e3e7e4;
  --color-border-strong: #d4dad5;
  --color-control-border: #7a847f;
  --color-primary: #17231e;
  --color-primary-hover: #22332b;
  --color-primary-soft: #f0f5ef;
  --color-primary-soft-strong: #dbe5dd;
  --color-accent: #b9ff39;
  --color-accent-soft: #eaffbb;
  --color-focus: #1d4ed8;
  --color-success: #166534;
  --color-success-surface: #f0fdf4;
  --color-warning: #92400e;
  --color-warning-surface: #fffbeb;
  --color-danger: #991b1b;
  --color-danger-surface: #fef2f2;
  --color-info: #1e40af;
  --color-info-surface: #eff6ff;
  --color-live: #24a36a;
  --color-live-soft: #dff6eb;
  --color-unread: #ef3f58;
  --color-outgoing: #e9ffc1;
  --color-outgoing-border: #cde982;
  --color-whatsapp: #15803d;
  --color-instagram: #c026d3;
  --font-sans: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --text-xs: 0.75rem;
  --text-sm: 0.8125rem;
  --text-base: 0.875rem;
  --text-md: 0.9375rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: 1.75rem;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 999px;
  --shadow-panel: 0 1px 2px rgb(23 35 30 / 5%);
  --shadow-card: 0 1px 2px rgb(23 35 30 / 6%);
  --shadow-card-hover: 0 4px 14px rgb(23 35 30 / 10%);
  --shadow-pop: 0 8px 24px rgb(23 35 30 / 12%);
  --duration-short: 150ms;
  --sidebar-width: 232px;
  --pipeline-column-width: 300px;
  --list-width: 360px;
  --side-panel-width: 300px;
  --stage-slate: #334155;
  --stage-slate-surface: #f1f5f9;
  --stage-blue: #1e40af;
  --stage-blue-surface: #eff6ff;
  --stage-indigo: #3730a3;
  --stage-indigo-surface: #eef2ff;
  --stage-violet: #5b21b6;
  --stage-violet-surface: #f5f3ff;
  --stage-teal: #115e59;
  --stage-teal-surface: #f0fdfa;
  --stage-amber: #92400e;
  --stage-amber-surface: #fffbeb;
  --stage-orange: #9a3412;
  --stage-orange-surface: #fff7ed;
  --stage-pink: #9d174d;
  --stage-pink-surface: #fdf2f8;
  --stage-green: #166534;
  --stage-green-surface: #f0fdf4;
  --stage-red: #991b1b;
  --stage-red-surface: #fef2f2;
}
* {
  box-sizing: border-box;
}
::selection {
  background: var(--color-accent-soft);
  color: var(--color-text);
}
html {
  background: var(--color-canvas);
  caret-color: var(--color-text);
  accent-color: var(--color-primary);
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}
body {
  margin: 0;
  min-width: 320px;
  font-size: var(--text-base);
  line-height: 1.5;
  word-spacing: 0.07em;
  background: var(--color-canvas);
}
h1, h2, h3 {
  color: var(--color-text);
  font-weight: 700;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
h1 {
  font-size: var(--text-xl);
  margin: 0;
}
h2 {
  font-size: var(--text-md);
}
time, [data-total], output {
  font-variant-numeric: tabular-nums;
}
a {
  color: var(--color-text);
}
input, select, textarea, button {
  word-spacing: inherit;
}
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.icon-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}
.icon {
  width: 18px;
  height: 18px;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.eyebrow {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  min-height: 40px;
  padding: 0 var(--space-4);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  font: inherit;
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color var(--duration-short), border-color var(--duration-short), color var(--duration-short);
}
.button .icon {
  width: 16px;
  height: 16px;
}
.button--primary {
  background: var(--color-primary);
  color: #fff;
}
.button--primary:hover {
  background: var(--color-primary-hover);
}
.button--primary .icon {
  color: var(--color-accent);
}
.button--secondary {
  background: var(--color-surface);
  color: var(--color-text);
  border-color: var(--color-border-strong);
}
.button--secondary:hover {
  background: var(--color-surface-hover);
  border-color: var(--color-control-border);
}
.button--danger {
  background: var(--color-danger);
  color: #fff;
}
.button:not(:disabled):active {
  transform: translateY(1px);
}
.button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.icon-button:not(:disabled):active {
  transform: translateY(1px);
}
.button--small {
  min-height: 34px;
  padding: 0 var(--space-3);
  font-size: var(--text-sm);
}
.icon-button {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: none;
  padding: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text-muted);
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--duration-short), color var(--duration-short);
}
.icon-button:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
:is(.button, .icon-button, a, button, summary, select, input, textarea):focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.field {
  display: grid;
  gap: 6px;
  font-size: var(--text-base);
}
.field label {
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text);
}
.field input, .field select, .text-input {
  min-height: 40px;
  padding: 0 var(--space-3);
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  color: var(--color-text);
  background: var(--color-surface);
  font: inherit;
  font-size: var(--text-base);
}
.field input:focus-visible, .field select:focus-visible, .text-input:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
  border-color: var(--color-focus);
}
.field__help {
  color: var(--color-text-muted);
  margin: 0;
  font-size: var(--text-sm);
}
.field__error {
  color: var(--color-danger);
  margin: 0;
  font-size: var(--text-sm);
}
.alert {
  margin: var(--space-3) 0;
  padding: 10px var(--space-3);
  border-radius: var(--radius-md);
  border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
  font-size: var(--text-sm);
}
.alert p {
  margin: 0;
}
.alert--info {
  color: var(--color-info);
  background: var(--color-info-surface);
}
.alert--success {
  color: var(--color-success);
  background: var(--color-success-surface);
}
.alert--warning {
  color: var(--color-warning);
  background: var(--color-warning-surface);
}
.alert--danger {
  color: var(--color-danger);
  background: var(--color-danger-surface);
}
.badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  background: var(--color-surface-hover);
  color: var(--color-text-muted);
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}
.badge--info {
  color: var(--color-info);
  background: var(--color-info-surface);
}
.badge--success {
  color: var(--color-success);
  background: var(--color-success-surface);
}
.badge--warning {
  color: var(--color-warning);
  background: var(--color-warning-surface);
}
.badge--danger {
  color: var(--color-danger);
  background: var(--color-danger-surface);
}
.empty-state, .loading {
  margin: var(--space-4);
  padding: var(--space-6) var(--space-4);
  text-align: center;
  border: 1px dashed var(--color-border-strong);
  border-radius: var(--radius-lg);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.empty-state h2 {
  margin: 0 0 4px;
  font-size: var(--text-md);
}
.empty-state p {
  margin: 0;
}
.loading__indicator {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: var(--space-2);
  vertical-align: -2px;
  border: 2px solid var(--color-info);
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 700ms linear infinite;
}
.confirmation {
  margin: var(--space-3) 0;
  padding: var(--space-3) var(--space-4);
  border: 1px solid color-mix(in srgb, var(--color-warning) 40%, transparent);
  border-radius: var(--radius-md);
  background: var(--color-warning-surface);
  color: var(--color-text);
  font-size: var(--text-sm);
}
.confirmation h3 {
  margin: 0 0 4px;
  color: var(--color-warning);
  font-size: var(--text-base);
}
.confirmation p {
  margin: 0 0 4px;
}
.confirmation__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-3);
}
.confirmation:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
}
.category-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: var(--space-2) var(--space-4) var(--space-3);
  border-bottom: 1px solid var(--color-border);
}
.category-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  color: var(--color-text-muted);
  background: var(--color-surface);
  text-decoration: none;
  font-size: var(--text-sm);
  font-weight: 600;
  white-space: nowrap;
  transition: background-color var(--duration-short), color var(--duration-short);
}
.category-tab:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.category-tab--active, .category-tab--active:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
}
.category-tab__count {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 18px;
  padding: 0 5px;
  border-radius: var(--radius-full);
  background: var(--color-surface-hover);
  color: var(--color-text);
  font-size: 11px;
  font-weight: 700;
}
.category-tab--active .category-tab__count {
  background: var(--color-accent);
  color: var(--color-primary);
}
.conversation-select {
  position: absolute;
  left: 14px;
  top: 32px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  z-index: 1;
}
.conversation-select input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--color-primary);
  cursor: pointer;
}
.bulk-bar {
  position: sticky;
  top: 0;
  z-index: 4;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-accent-soft);
}
.bulk-bar[hidden] {
  display: none;
}
.bulk-bar__count {
  width: 100%;
  font-size: var(--text-sm);
  font-weight: 700;
  color: var(--color-text);
  white-space: nowrap;
}
.bulk-bar__select {
  flex: 1;
  min-width: 140px;
  max-width: 240px;
  min-height: 34px;
}
#bulk-result:not(:empty) {
  padding: 0 var(--space-4);
}
.bulk-result__summary {
  margin: var(--space-2) 0;
}
.bulk-result__refused {
  display: grid;
  gap: var(--space-2);
  margin: var(--space-2) 0 0;
  padding: 0;
  list-style: none;
}
.bulk-result__refused-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  color: var(--color-text);
}
.contact-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  min-height: 0;
  overflow-y: auto;
  padding: var(--space-4);
  background: var(--color-surface);
  border-left: 1px solid var(--color-border);
}
.contact-panel__identity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.contact-panel__eyebrow {
  font-size: var(--text-base);
  font-weight: 700;
  color: var(--color-text);
}
.contact-panel__classify-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-2);
}
.contact-panel__classify-field {
  margin: 0;
}
.contact-panel__classify-submit .button {
  width: 100%;
}
.contact-panel__negotiations {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}
.contact-panel__negotiations h3 {
  margin: 0;
  font-size: var(--text-sm);
  font-weight: 700;
}
.contact-panel__negotiations-empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.contact-panel [role="status"] {
  margin: 0;
  color: var(--color-success);
  font-size: var(--text-sm);
  font-weight: 600;
}
.negotiation-list {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.negotiation-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  font-size: var(--text-sm);
}
.negotiation-list__stage {
  font-weight: 600;
  color: var(--color-text);
}
.negotiation-list__stage [aria-hidden] {
  color: var(--color-border-strong);
}
.categories-page__status {
  margin: 0;
}
.categories-create {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--space-3);
  margin: var(--space-4) 0;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
}
.categories-create__field {
  flex: 1;
  min-width: 220px;
  margin: 0;
}
.category-list {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  overflow: hidden;
}
.category-list__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  min-width: 0;
}
.category-list__row:last-child {
  border-bottom: 0;
}
.category-list__info {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
  min-width: 0;
}
.category-list__name {
  font-weight: 600;
  color: var(--color-text);
}
.category-list__rename {
  position: relative;
}
.category-list__rename-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  list-style: none;
  cursor: pointer;
}
.category-list__rename-toggle::-webkit-details-marker {
  display: none;
}
.category-list__rename-toggle:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.category-list__rename[open] .category-list__rename-toggle {
  border-color: var(--color-control-border);
  color: var(--color-text);
}
.category-list__rename form {
  display: flex;
  gap: 6px;
  margin-top: 6px;
}
.category-list__rename-input {
  width: 100%;
  min-width: 0;
  max-width: 18rem;
}
@media (max-width: 640px) {
  .category-list__row {
    grid-template-columns: 1fr;
  }
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition: none !important;
    animation-duration: 0.01ms !important;
  }
}
.app-main.pipeline-main {
  overflow: hidden;
}
.pipeline-board {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  height: 100%;
  min-height: 0;
  padding: var(--space-6) var(--space-8) 0;
}
.pipeline-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-4);
  flex: none;
}
.pipeline-header h1 {
  margin: 0;
  font-size: var(--text-2xl);
  line-height: 1.1;
  letter-spacing: -0.03em;
}
.pipeline-header__lede {
  margin: 6px 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.pipeline-header__lede strong {
  color: var(--color-text);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.pipeline-header__actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.pipeline-toolbar {
  flex: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
}
.pipeline-toolbar .search-field {
  height: 36px;
}
.pipeline-toolbar__search {
  flex: 1 1 220px;
  min-width: 180px;
  max-width: 320px;
}
.pipeline-toolbar__neighborhood {
  flex: 0 1 200px;
  min-width: 150px;
}
.pipeline-toolbar .button {
  min-height: 36px;
}
.toggle-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 36px;
  padding: 0 12px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color var(--duration-short), color var(--duration-short), border-color var(--duration-short);
}
.toggle-chip:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.toggle-chip input {
  width: 15px;
  height: 15px;
  margin: 0;
  accent-color: var(--color-primary);
  cursor: pointer;
}
.toggle-chip:has(input:checked) {
  border-color: var(--color-primary);
  background: var(--color-primary-soft);
  color: var(--color-text);
}
.toggle-chip:has(input:focus-visible) {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.pipeline-stage-picker {
  display: none;
  align-items: center;
  gap: var(--space-2);
  margin-left: auto;
}
.pipeline-stage-picker select {
  height: 36px;
  min-width: 0;
  max-width: 220px;
  padding: 0 8px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
.pipeline-stage-selector {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
}
.pipeline-clear-filters {
  margin: 0;
  text-align: center;
}
.pipeline-clear-filters a {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
}
.pipeline-columns {
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 var(--space-2), #000 calc(100% - var(--space-6)), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 var(--space-2), #000 calc(100% - var(--space-6)), transparent 100%);
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: var(--pipeline-column-width);
  gap: var(--space-3);
  flex: 1 1 auto;
  min-height: 0;
  padding-bottom: var(--space-6);
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  scrollbar-color: var(--color-border-strong) transparent;
}
.pipeline-columns::-webkit-scrollbar {
  height: 10px;
}
.pipeline-columns::-webkit-scrollbar-thumb {
  border: 3px solid transparent;
  border-radius: var(--radius-full);
  background: var(--color-border-strong);
  background-clip: content-box;
}
.pipeline-columns::-webkit-scrollbar-thumb:hover {
  background: var(--color-control-border);
  background-clip: content-box;
}
.pipeline-column {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  border: 1px solid color-mix(in srgb, var(--pipeline-stage-color, var(--color-border)) 22%, var(--color-border));
  border-radius: var(--radius-xl);
  background: color-mix(in srgb, var(--pipeline-stage-color, var(--color-border)) 9%, var(--color-surface));
}
.pipeline-column--slate {
  --pipeline-stage-color: var(--stage-slate);
}
.pipeline-column--blue {
  --pipeline-stage-color: var(--stage-blue);
}
.pipeline-column--indigo {
  --pipeline-stage-color: var(--stage-indigo);
}
.pipeline-column--violet {
  --pipeline-stage-color: var(--stage-violet);
}
.pipeline-column--teal {
  --pipeline-stage-color: var(--stage-teal);
}
.pipeline-column--amber {
  --pipeline-stage-color: var(--stage-amber);
}
.pipeline-column--orange {
  --pipeline-stage-color: var(--stage-orange);
}
.pipeline-column--pink {
  --pipeline-stage-color: var(--stage-pink);
}
.pipeline-column--green {
  --pipeline-stage-color: var(--stage-green);
}
.pipeline-column--red {
  --pipeline-stage-color: var(--stage-red);
}
.pipeline-column__header {
  flex: none;
  display: grid;
  gap: 5px;
  padding: var(--space-4) var(--space-4) var(--space-3);
}
.pipeline-column__progress {
  margin-top: 3px;
}
.pipeline-column__identity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}
.pipeline-column__identity h2 {
  margin: 0;
  min-width: 0;
  font-size: var(--text-base);
}
.pipeline-stage-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--color-text);
  font-weight: 700;
}
.pipeline-stage-chip::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: none;
  border-radius: 50%;
  background: var(--pipeline-stage-color, var(--color-border-strong));
}
.pipeline-stage-chip--slate {
  --pipeline-stage-color: var(--stage-slate);
}
.pipeline-stage-chip--blue {
  --pipeline-stage-color: var(--stage-blue);
}
.pipeline-stage-chip--indigo {
  --pipeline-stage-color: var(--stage-indigo);
}
.pipeline-stage-chip--violet {
  --pipeline-stage-color: var(--stage-violet);
}
.pipeline-stage-chip--teal {
  --pipeline-stage-color: var(--stage-teal);
}
.pipeline-stage-chip--amber {
  --pipeline-stage-color: var(--stage-amber);
}
.pipeline-stage-chip--orange {
  --pipeline-stage-color: var(--stage-orange);
}
.pipeline-stage-chip--pink {
  --pipeline-stage-color: var(--stage-pink);
}
.pipeline-stage-chip--green {
  --pipeline-stage-color: var(--stage-green);
}
.pipeline-stage-chip--red {
  --pipeline-stage-color: var(--stage-red);
}
.pipeline-column__total {
  flex: none;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}
.pipeline-column__count {
  margin: 0;
  color: color-mix(in srgb, var(--pipeline-stage-color, var(--color-text-muted)) 55%, var(--color-text-muted));
  font-size: var(--text-xs);
  font-weight: 600;
}
.pipeline-column__progress {
  height: 3px;
  border-radius: var(--radius-full);
  background: color-mix(in srgb, var(--pipeline-stage-color, var(--color-border)) 18%, transparent);
  overflow: hidden;
}
.pipeline-column__progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--pipeline-stage-color, var(--color-border-strong));
}
.pipeline-column:not(:has(.pipeline-card)) {
  background: color-mix(in srgb, var(--pipeline-stage-color, var(--color-border)) 5%, var(--color-surface));
}
.pipeline-cards {
  display: grid;
  align-content: start;
  gap: var(--space-2);
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 var(--space-3);
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--color-border-strong) transparent;
}
.pipeline-cards::-webkit-scrollbar {
  width: 8px;
}
.pipeline-cards::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: var(--radius-full);
  background: var(--color-border-strong);
  background-clip: content-box;
}
.pipeline-column--drop-target {
  border-color: var(--pipeline-stage-color, var(--color-primary));
  background: color-mix(in srgb, var(--pipeline-stage-color, var(--color-border)) 12%, var(--color-surface));
}
.pipeline-column--drop-target .pipeline-cards {
  outline: 2px dashed color-mix(in srgb, var(--pipeline-stage-color, var(--color-primary)) 45%, transparent);
  outline-offset: 2px;
  border-radius: var(--radius-lg);
}
.pipeline-column__more {
  margin: var(--space-2) var(--space-3) 0;
  border-color: transparent;
  background: transparent;
  color: var(--color-text-muted);
}
.pipeline-column__more:hover {
  border-color: var(--color-border-strong);
  background: var(--color-surface);
  color: var(--color-text);
}
.pipeline-column__add {
  margin: var(--space-2) var(--space-3) var(--space-3);
  padding: 9px var(--space-3);
  border: 1px dashed color-mix(in srgb, var(--pipeline-stage-color, var(--color-border-strong)) 35%, var(--color-border-strong));
  border-radius: var(--radius-lg);
  background: transparent;
  color: color-mix(in srgb, var(--pipeline-stage-color, var(--color-text-muted)) 60%, var(--color-text-muted));
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
  transition: background-color var(--duration-short), color var(--duration-short), border-color var(--duration-short);
}
.pipeline-column__add:hover {
  border-color: var(--pipeline-stage-color, var(--color-control-border));
  background: var(--color-surface);
  color: var(--color-text);
}
.pipeline-card {
  position: relative;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
  cursor: grab;
  transition: box-shadow var(--duration-short), border-color var(--duration-short), transform var(--duration-short);
}
.pipeline-card:hover {
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-card-hover);
}
.pipeline-card:active {
  cursor: grabbing;
}
.pipeline-card:focus-within {
  border-color: var(--color-control-border);
}
.pipeline-card--dragging {
  opacity: 0.45;
  box-shadow: none;
  transform: scale(0.98);
}
.pipeline-card[aria-busy="true"] {
  opacity: 0.6;
  cursor: progress;
}
.pipeline-card__link {
  display: grid;
  gap: 3px;
  padding: var(--space-3) var(--space-3) var(--space-2);
  color: inherit;
  text-decoration: none;
}
.pipeline-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-2);
}
.pipeline-card__head h3 {
  margin: 0;
  min-width: 0;
  font-size: var(--text-base);
  font-weight: 700;
  letter-spacing: -0.01em;
}
.pipeline-card__channels {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 4px;
}
.pipeline-card__where {
  overflow: hidden;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pipeline-card__budget {
  margin-top: 5px;
  color: var(--color-text);
  font-size: var(--text-lg);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
}
.pipeline-card__footer {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0 var(--space-3) var(--space-3);
}
.pipeline-card__avatar {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  flex: none;
  border-radius: 7px;
  background: var(--color-primary-soft-strong);
  color: var(--color-text);
  font-size: 11px;
  font-weight: 700;
}
.pipeline-card__age {
  color: var(--color-text-muted);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
.pipeline-card__move {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  margin-left: auto;
  padding: 0;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--color-text-muted);
  cursor: pointer;
  opacity: 0;
  transition: opacity var(--duration-short), background-color var(--duration-short), color var(--duration-short);
}
.pipeline-card__move .icon {
  width: 15px;
  height: 15px;
}
.pipeline-card:hover .pipeline-card__move, .pipeline-card__move:focus-visible {
  opacity: 1;
}
.pipeline-card__move:hover {
  border-color: var(--color-border);
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.pipeline-card__footer > p[aria-live] {
  margin: 0;
}
.pipeline-dialog {
  max-width: min(420px, calc(100vw - 32px));
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-pop);
}
.pipeline-dialog::backdrop {
  background: rgb(23 35 30 / 35%);
}
.pipeline-dialog h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
}
.pipeline-dialog label {
  display: grid;
  gap: 4px;
  margin-bottom: var(--space-3);
  font-size: var(--text-sm);
  font-weight: 600;
}
.pipeline-dialog select, .pipeline-dialog textarea {
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-base);
  font-weight: 400;
}
.pipeline-dialog textarea {
  min-height: 84px;
  resize: vertical;
}
.pipeline-connection {
  flex: none;
  align-self: flex-start;
  margin: 0 0 var(--space-3);
  padding: 5px var(--space-3);
  border: 1px solid color-mix(in srgb, var(--color-warning) 28%, transparent);
  border-radius: var(--radius-full);
  background: var(--color-warning-surface);
  color: var(--color-warning);
  font-size: var(--text-xs);
  font-weight: 600;
}
.pipeline-connection[hidden] {
  display: none;
}
@media (max-width: 1279px) {
  .pipeline-board {
    padding: var(--space-5) var(--space-5) 0;
  }
}
@media (max-width: 1023px) {
  .app-main.pipeline-main {
    overflow: auto;
  }
  .pipeline-board {
    height: auto;
    padding: var(--space-4) var(--space-4) var(--space-6);
  }
  .pipeline-header {
    flex-direction: column;
    align-items: stretch;
  }
  .pipeline-stage-picker {
    display: flex;
  }
  .pipeline-columns {
    display: block;
    overflow: visible;
    padding-bottom: 0;
  }
  .pipeline-column {
    margin-bottom: var(--space-3);
  }
  .pipeline-cards {
    overflow: visible;
  }
  .pipeline-card {
    cursor: default;
  }
}
@media (max-width: 767px) {
  .pipeline-header h1 {
    font-size: var(--text-xl);
  }
  .pipeline-toolbar__search, .pipeline-toolbar__neighborhood {
    flex-basis: 100%;
    max-width: none;
  }
}
@media (pointer: coarse) {
  .pipeline-card__move {
    width: 36px;
    height: 36px;
    opacity: 1;
  }
  .pipeline-column__add {
    padding-block: 12px;
  }
}
.negotiation-detail {
  max-width: 72rem;
  padding: var(--space-6) var(--space-8) var(--space-12);
}
.negotiation-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-6);
  margin-bottom: var(--space-6);
}
.negotiation-header__identity {
  min-width: 0;
}
.negotiation-header__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.negotiation-header__back:hover {
  color: var(--color-text);
}
.negotiation-header__back .icon {
  width: 15px;
  height: 15px;
}
.negotiation-header h1 {
  margin: 0;
  font-size: var(--text-2xl);
  line-height: 1.15;
  letter-spacing: -0.03em;
}
.negotiation-header__facts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 6px 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.negotiation-header__stage {
  padding: 2px 10px;
  border-radius: var(--radius-full);
  background: var(--color-primary-soft-strong);
  color: var(--color-text);
  font-weight: 700;
}
.negotiation-header__facts a {
  color: var(--color-text);
  font-weight: 600;
}
.negotiation-header__dates {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5);
  margin: var(--space-4) 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.negotiation-header__dates dt {
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.negotiation-header__dates dd {
  margin: 2px 0 0;
  color: var(--color-text);
  font-variant-numeric: tabular-nums;
}
.negotiation-header__aside {
  display: grid;
  justify-items: end;
  gap: var(--space-2);
  flex: none;
}
.negotiation-header__badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}
#negotiation-stage-control form {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
#negotiation-stage-control label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
}
#negotiation-stage-control select {
  min-height: 36px;
  padding: 0 var(--space-2);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
#negotiation-stage-control button {
  min-height: 36px;
  padding: 0 var(--space-3);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  background: var(--color-primary);
  color: #fff;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
#negotiation-stage-control button:hover {
  background: var(--color-primary-hover);
}
.property-groups {
  display: grid;
  gap: var(--space-4);
}
.property-group {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
  overflow: hidden;
}
.property-group__title {
  margin: 0;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface-muted);
  font-size: var(--text-sm);
  letter-spacing: 0.02em;
}
.property-group__fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1px;
  background: var(--color-border);
}
.property-field {
  padding: var(--space-3) var(--space-4);
  background: var(--color-surface);
}
.property-field__display[hidden], .property-field__editor[hidden] {
  display: none;
}
.property-field__display {
  position: relative;
  display: grid;
  gap: 3px;
  padding-right: var(--space-5);
  border-radius: var(--radius-sm);
  cursor: pointer;
}
.property-field__display:hover .property-field__pencil {
  opacity: 1;
}
.property-field__display:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}
.property-field__pencil {
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  color: var(--color-text-muted);
  opacity: 0;
  transition: opacity var(--duration-short);
}
.property-field__pencil .icon {
  width: 14px;
  height: 14px;
}
.property-field__label {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 600;
}
.property-field__value {
  min-height: 1.4rem;
  color: var(--color-text);
  font-size: var(--text-base);
  font-weight: 600;
}
a.property-field__value {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.property-field--empty .property-field__value {
  color: var(--color-text-muted);
  font-weight: 400;
  font-style: italic;
}
.property-field--error {
  background: var(--color-danger-surface);
}
.property-field__editor {
  display: grid;
  gap: var(--space-2);
}
.property-field__editor-label {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 600;
}
.property-field__editor input, .property-field__editor textarea, .property-field__editor select {
  min-height: 38px;
  padding: 8px var(--space-3);
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  color: var(--color-text);
  background: var(--color-surface);
  font: inherit;
  font-size: var(--text-base);
}
.property-field__editor textarea {
  min-height: 6rem;
  resize: vertical;
}
.property-field__editor input:focus-visible, .property-field__editor textarea:focus-visible, .property-field__editor select:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
}
.property-field__buttons {
  display: flex;
  gap: 6px;
}
.property-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  margin: 0 4px 4px 0;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-xs);
  font-weight: 600;
  cursor: pointer;
}
.property-chip:hover {
  border-color: var(--color-control-border);
  background: var(--color-surface-hover);
}
.field__error {
  color: var(--color-danger);
  font-size: var(--text-sm);
}
.field__warning {
  color: var(--color-warning);
  background: var(--color-warning-surface);
  padding: var(--space-2);
  border-radius: var(--radius-sm);
  font-size: var(--text-sm);
}
@media (max-width: 767px) {
  .negotiation-detail {
    padding: var(--space-4) var(--space-4) var(--space-8);
  }
  .negotiation-header {
    flex-direction: column;
  }
  .negotiation-header__aside {
    justify-items: start;
  }
  .negotiation-header h1 {
    font-size: var(--text-xl);
  }
  .property-group__fields {
    grid-template-columns: 1fr;
  }
}
.negotiation-archive {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-6);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.negotiation-archive form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
}
.negotiation-archive .button {
  min-height: 34px;
  padding: 0 var(--space-3);
  font-size: var(--text-sm);
}
.negotiation-archive p {
  margin: 0;
}
.settings-stages .stage-create {
  display: grid;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
}
.settings-stages .stage-create h2 {
  margin: 0;
  font-size: var(--text-md);
}
.settings-stages .stage-create form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--space-4);
}
.stage-create__name {
  flex: 1 1 260px;
  min-width: 200px;
  margin: 0;
}
.stage-create__name input {
  width: 100%;
}
.stage-colors {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  border: 0;
  margin: 0;
  padding: 0;
}
.stage-colors legend {
  padding: 0 0 6px;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 600;
}
.stage-colors--compact {
  gap: 6px;
}
.color-choice {
  position: relative;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: border-color var(--duration-short), background-color var(--duration-short);
}
.color-choice:hover {
  background: var(--color-surface-hover);
}
.color-choice input {
  position: absolute;
  inset: 0;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}
.color-swatch {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px rgb(23 35 30 / 12%);
}
.color-choice:has(input:checked) {
  border-color: var(--color-text);
  background: var(--color-surface-hover);
}
.color-choice:has(input:focus-visible) {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.color-slate {
  background: var(--stage-slate);
}
.color-blue {
  background: var(--stage-blue);
}
.color-indigo {
  background: var(--stage-indigo);
}
.color-violet {
  background: var(--stage-violet);
}
.color-teal {
  background: var(--stage-teal);
}
.color-amber {
  background: var(--stage-amber);
}
.color-orange {
  background: var(--stage-orange);
}
.color-pink {
  background: var(--stage-pink);
}
.color-green {
  background: var(--stage-green);
}
.color-red {
  background: var(--stage-red);
}
.stage-table-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  overflow: hidden;
  box-shadow: var(--shadow-panel);
}
.stage-table {
  width: 100%;
  border-collapse: collapse;
}
.stage-table th {
  padding: 10px var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface-muted);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
  text-transform: uppercase;
}
.stage-table td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  vertical-align: middle;
  text-align: left;
}
.stage-table tr:last-child td {
  border-bottom: 0;
}
.stage-table tr:hover td {
  background: var(--color-surface-muted);
}
.stage-row__name {
  gap: 0;
  margin: 0;
  max-width: 18rem;
}
.stage-row__name input {
  width: 100%;
}
.stage-row__position {
  color: var(--color-text-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.stage-row__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.stage-row__actions form {
  margin: 0;
}
.stage-row__actions .button {
  min-height: 32px;
  padding: 0 10px;
  font-size: var(--text-sm);
}
.stage-row__archive {
  margin-left: var(--space-2);
  color: var(--color-danger);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.stage-row__archive:hover {
  text-decoration: underline;
}
.stage-archived {
  margin-top: var(--space-6);
}
.stage-archived h2 {
  font-size: var(--text-md);
}
.stage-archived span {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
@media (max-width: 900px) {
  .stage-table-card {
    overflow-x: auto;
  }
  .stage-table {
    min-width: 46rem;
  }
}
.settings-options {
  max-width: 1100px;
  margin: 0 auto;
}
.option-list-cards {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.option-list-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  text-decoration: none;
  box-shadow: var(--shadow-panel);
  transition: border-color .15s,box-shadow .15s;
}
.option-list-card:hover {
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-card-hover);
}
.option-list-card strong {
  font-size: var(--text-md);
}
.option-list-card__counts {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
}
.option-list-card__go {
  display: grid;
  place-items: center;
  color: var(--color-text-muted);
}
.option-list-card:hover .option-list-card__go {
  color: var(--color-text);
}
.option-search {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: end;
  margin-bottom: 24px;
  padding: 16px;
  background: var(--color-canvas);
  border-radius: var(--radius-lg);
}
.option-search label {
  grid-column: 1/-1;
  font-weight: 700;
}
.option-search input,.option-create input,.option-row input {
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  font: inherit;
}
.option-create {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 32px;
  padding: 20px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
}
.option-create h2 {
  grid-column: 1/-1;
  margin: 0;
}
.option-create form {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: end;
}
.option-create form label {
  grid-column: 1/-1;
}
.option-create .alert {
  grid-column: 1/-1;
  margin-bottom: 0;
}
.option-list {
  display: grid;
  gap: 8px;
}
.option-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}
.option-row--archived {
  opacity: .78;
  background: var(--color-canvas);
}
.option-row__label {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}
.option-row__label form {
  display: flex;
  gap: 8px;
  min-width: min(100%,420px);
}
.option-row__label input {
  min-width: 0;
  flex: 1;
}
.option-row__label small {
  color: var(--color-text-muted);
}
.option-row__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}
.option-row__actions form {
  margin: 0;
}
.option-row .button {
  min-height: 44px;
  min-width: 44px;
  padding: 6px 10px;
  font-size: .875rem;
}
.archived-options,.option-more {
  margin-top: 24px;
  padding: 16px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-canvas);
}
.archived-options summary,.option-more summary {
  cursor: pointer;
  font-weight: 700;
}
.archived-options .option-list,.option-more .option-list {
  margin-top: 16px;
}
.option-more {
  border-style: dashed;
}
.option-more summary {
  color: var(--color-info);
}
@media (max-width:700px) {
  .option-list-card {
    grid-template-columns: minmax(0,1fr) auto;
  }
  .option-list-card__counts {
    grid-column: 1/-1;
  }
  .option-create {
    display: block;
  }
  .option-create h2 {
    margin-bottom: 12px;
  }
  .option-create form {
    grid-template-columns: 1fr;
  }
  .option-row {
    align-items: stretch;
    flex-direction: column;
  }
  .option-row__label form {
    width: 100%;
  }
  .option-row__actions {
    justify-content: flex-start;
  }
}
.contacts-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}
.contacts-filters .search-field {
  flex: 1 1 240px;
  min-width: 200px;
}
.contacts-filters__select {
  min-height: 36px;
  padding: 0 var(--space-3);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
.contacts-filters__select:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
  border-color: var(--color-focus);
}
.contacts-filters__clear {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.contacts-filters__clear:hover {
  text-decoration: underline;
}
.contacts-table {
  width: 100%;
  border-collapse: collapse;
}
.contacts-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 10px var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface-muted);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
  text-transform: uppercase;
}
.contacts-table td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  vertical-align: middle;
  text-align: left;
}
.contacts-table tbody tr:hover {
  background: var(--color-surface-muted);
}
.contacts-table tbody tr:last-child td {
  border-bottom: 0;
}
.contacts-table__name-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  color: inherit;
  text-decoration: none;
}
.contacts-table__name-link:hover .contacts-table__name, .contacts-table__name-link:focus-visible .contacts-table__name {
  text-decoration: underline;
}
.contacts-table__avatar {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  font-size: var(--text-sm);
}
.contacts-table__name {
  font-weight: 600;
}
.contacts-table__badge--muted {
  color: var(--color-text-muted);
  background: var(--color-surface-muted);
}
.contacts-table__channels {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.contacts-table__contact {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.contacts-table__contact-phone {
  color: var(--color-text);
  font-variant-numeric: tabular-nums;
}
.contacts-table__contact-muted {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.contacts-load-more {
  margin: var(--space-5) 0 0;
  text-align: center;
}
@media (max-width: 720px) {
  .contacts-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .contacts-table, .contacts-table tbody, .contacts-table tr, .contacts-table td {
    display: block;
    width: 100%;
  }
  .contacts-table tr {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-border);
  }
  .contacts-table td {
    padding: 3px var(--space-1);
    border-bottom: 0;
    text-align: left;
  }
  .contacts-table td[data-label]::before {
    display: block;
    margin-bottom: 2px;
    color: var(--color-text-muted);
    font-size: var(--text-xs);
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    content: attr(data-label);
  }
}
.contact-sheet {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  padding: var(--space-6) var(--space-8);
  max-width: 1700px;
}
.contact-sheet--error {
  max-width: 720px;
}
.contact-sheet__header {
  display: flex;
  align-items: center;
  gap: var(--space-4);
}
.contact-sheet__back {
  flex: none;
}
.contact-sheet__avatar {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  flex: none;
  border-radius: 50%;
  background: var(--color-primary-soft-strong);
  color: var(--color-text);
  font-size: var(--text-lg);
  font-weight: 700;
}
.contact-sheet__identity {
  min-width: 0;
}
.contact-sheet__identity h1 {
  margin: 0;
  font-size: var(--text-2xl);
  font-weight: 700;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.contact-sheet__meta {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: 6px 0 0;
}
.contact-sheet__since {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
}
.contact-sheet__layout {
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr) minmax(260px, 320px);
  align-items: start;
  gap: var(--space-5);
}
.contact-sheet__profile, .contact-sheet__activity, .contact-sheet__deals {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  min-width: 0;
}
@media (max-width: 1440px) {
  .contact-sheet__layout {
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
  }
  .contact-sheet__deals {
    grid-column: 1;
    grid-row: 2;
  }
  .contact-sheet__activity {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}
@media (max-width: 1024px) {
  .contact-sheet__layout {
    display: flex;
    flex-direction: column;
  }
}
.contact-sheet__section {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}
.contact-sheet__section h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
  font-weight: 700;
}
.contact-sheet__group-label {
  margin: var(--space-4) 0 var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 700;
}
.contact-sheet__group-label:first-of-type {
  margin-top: 0;
}
.contact-sheet__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.contact-sheet__channel-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.contact-sheet__channel-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
}
.contact-sheet__channel-value {
  color: var(--color-text);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
}
.property-groups--compact {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.property-groups--compact .property-group {
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  overflow: visible;
}
.property-groups--compact .property-group__title {
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.property-groups--compact .property-group__fields {
  gap: 2px;
}
.property-groups--compact .property-field__display {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: var(--space-2);
  padding: 5px var(--space-2);
  border-radius: var(--radius-sm);
}
.property-groups--compact .property-field__label {
  font-size: var(--text-xs);
}
.property-groups--compact .property-field__value {
  font-size: var(--text-sm);
  text-align: right;
  overflow-wrap: anywhere;
}
.contact-sheet__activity-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.contact-sheet__section-title {
  margin: 0;
  font-size: var(--text-md);
  font-weight: 700;
}
.contact-notes {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}
.contact-notes__title {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
  font-size: var(--text-base);
  font-weight: 700;
}
.contact-notes__count {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 18px;
  padding: 0 5px;
  border-radius: var(--radius-full);
  background: var(--color-surface-hover);
  color: var(--color-text-muted);
  font-size: 11px;
}
.contact-notes__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}
.contact-note {
  padding: var(--space-3);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
}
.contact-note__body {
  color: var(--color-text);
  font-size: var(--text-md);
  line-height: 1.6;
}
.contact-note__body > :first-child {
  margin-top: 0;
}
.contact-note__body > :last-child {
  margin-bottom: 0;
}
.contact-note__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-2) 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
}
.contact-note__author {
  font-weight: 600;
  color: var(--color-text);
}
.contact-note__edited {
  font-style: italic;
}
.contact-notes__all {
  margin: var(--space-3) 0 0;
  font-size: var(--text-sm);
}
.contact-notes__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.note-dialog {
  width: min(560px, calc(100vw - 2 * var(--space-5)));
  margin: auto;
  padding: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-pop);
}
.note-dialog::backdrop {
  background: rgb(23 35 30 / 45%);
}
.note-dialog__form {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding: var(--space-5);
}
.note-dialog__title {
  margin: 0;
  font-size: var(--text-lg);
}
.note-dialog__lede {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.note-dialog__body {
  min-height: 150px;
  padding: var(--space-3);
  resize: vertical;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-md);
  line-height: 1.6;
}
.note-dialog__body:focus-visible {
  border-color: var(--color-focus);
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
  background: var(--color-surface);
}
.note-dialog__link {
  margin: 0;
}
.note-dialog__actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.note-dialog__hint {
  margin-right: auto;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.contact-deals__group + .contact-deals__group {
  margin-top: var(--space-4);
}
.contact-deals__label {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.contact-deals__count {
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: var(--radius-full);
  background: var(--color-surface-hover);
  color: var(--color-text);
  font-size: 11px;
  letter-spacing: 0;
}
.contact-deals__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.contact-deals__archived summary {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  cursor: pointer;
}
.contact-deals__archived[open] summary {
  margin-bottom: var(--space-2);
}
.deal-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.deal-card {
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  transition: border-color var(--duration-short), box-shadow var(--duration-short);
}
.deal-card:hover {
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-card);
}
.deal-card__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  text-decoration: none;
}
.deal-card__budget {
  color: var(--color-text);
  font-size: var(--text-md);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.deal-card__wants {
  display: grid;
  gap: 2px;
  margin: var(--space-2) 0 0;
}
.deal-card__wants > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-2);
  min-width: 0;
}
.deal-card__wants dt {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.deal-card__wants dd {
  margin: 0;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: right;
  overflow-wrap: anywhere;
}
.deal-card__unknown {
  margin: var(--space-2) 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-style: italic;
}
.deal-card__flags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: var(--space-2) 0 0;
}
.contact-sheet__link-alert {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.contact-sheet__link-alert .icon {
  flex: none;
  color: var(--color-info);
}
.contact-sheet__link-alert-text {
  flex: 1;
  margin: 0;
}
.contact-sheet__link-action {
  margin: 0;
}
@media (pointer: coarse) {
  .contact-sheet__back {
    width: 44px;
    height: 44px;
  }
  .contact-sheet__channel-item {
    min-height: 44px;
  }
  .property-groups--compact .property-field__display {
    min-height: 44px;
    align-items: center;
  }
}
.notes-page__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-bottom: var(--space-6);
}
.notes-page__header h1 {
  margin: 0;
}
.notes-page__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.notes-page__back:hover {
  color: var(--color-text);
}
.notes-page__back .icon {
  width: 15px;
  height: 15px;
}
.notes-page__content {
  display: grid;
  gap: var(--space-6);
  max-width: 46rem;
}
.notes-page__panel-link {
  margin: 0;
  font-size: var(--text-sm);
}
.note-composer {
  display: grid;
  gap: var(--space-3);
  margin: 0;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
}
.note-composer textarea {
  display: block;
  width: 100%;
  min-height: 96px;
  padding: 10px 12px;
  resize: vertical;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-md);
}
.note-composer textarea:focus-visible {
  border-color: var(--color-control-border);
  background: var(--color-surface);
  box-shadow: 0 0 0 3px rgb(185 255 57 / 30%);
  outline: 0;
}
.note-composer__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}
.note-composer__footer .field__help {
  margin: 0;
  flex: 1 1 auto;
}
.note-composer__count {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.note-list {
  display: grid;
  gap: var(--space-3);
}
.note-card {
  position: relative;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
  transition: box-shadow var(--duration-short);
}
.note-card:hover {
  box-shadow: var(--shadow-card-hover);
}
.note-card--archived {
  box-shadow: none;
}
.note-card__body {
  margin-bottom: var(--space-3);
}
.note-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.note-card__meta time {
  font-variant-numeric: tabular-nums;
}
.note-card__edited {
  margin: 4px 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-style: italic;
}
.note-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  opacity: 0;
  transition: opacity var(--duration-short);
}
.note-card__actions form {
  margin: 0;
}
.note-card:hover .note-card__actions, .note-card:focus-within .note-card__actions {
  opacity: 1;
}
.note-card__footer {
  margin: var(--space-3) 0 0;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}
.note-body {
  max-width: 66ch;
  overflow-wrap: anywhere;
  line-height: 1.6;
}
.note-body p {
  margin: 0 0 var(--space-2);
}
.note-body p:last-child {
  margin-bottom: 0;
}
.note-body ul, .note-body ol {
  margin: 0 0 var(--space-2);
  padding-left: 1.25em;
}
.note-body li {
  margin-bottom: 2px;
}
.note-body blockquote {
  margin: 0 0 var(--space-2);
  padding-left: var(--space-3);
  border-left: 1px solid var(--color-border-strong);
  color: var(--color-text-muted);
}
.note-body code {
  padding: 1px 5px;
  border-radius: 4px;
  background: var(--color-surface-muted);
  font-size: 0.9em;
}
.note-body pre {
  margin: 0 0 var(--space-2);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  overflow-x: auto;
}
.note-body pre code {
  padding: 0;
  background: none;
}
.note-body h4 {
  margin: 0 0 var(--space-1);
  font-size: var(--text-base);
}
.note-popover {
  max-width: min(480px, calc(100vw - var(--space-8)));
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-pop);
}
.note-popover::backdrop {
  background: rgb(23 35 30 / 35%);
}
.note-popover__title {
  display: block;
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
  font-weight: 700;
  color: var(--color-text);
}
.note-popover__textarea {
  display: block;
  width: 100%;
  min-height: 120px;
  padding: 10px 12px;
  resize: vertical;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-md);
}
.note-popover__textarea:focus-visible {
  border-color: var(--color-control-border);
  background: var(--color-surface);
  box-shadow: 0 0 0 3px rgb(185 255 57 / 30%);
  outline: 0;
}
.note-popover__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--space-3);
}
.note-popover--versions {
  display: grid;
  gap: var(--space-3);
  max-height: min(70vh, 520px);
  overflow-y: auto;
}
.note-popover__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.note-version {
  padding-bottom: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}
.note-version:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.note-version__meta {
  margin: 0 0 4px;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.note-version__meta time {
  font-variant-numeric: tabular-nums;
}
.note-version__number {
  font-weight: 700;
  color: var(--color-text);
}
.note-version__body {
  margin: 0;
  overflow-wrap: anywhere;
}
.note-versions-panel {
  max-width: min(480px, calc(100vw - var(--space-8)));
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-pop);
}
.note-versions-panel::backdrop {
  background: rgb(23 35 30 / 35%);
}
.note-versions-panel__title {
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
}
.note-versions-panel__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.notes-archived {
  margin-top: var(--space-2);
}
.notes-archived summary {
  padding: var(--space-2) 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  list-style: none;
  cursor: pointer;
}
.notes-archived summary::-webkit-details-marker {
  display: none;
}
.notes-archived[open] summary, .notes-archived summary:hover {
  color: var(--color-text);
}
.notes-archived .note-list {
  margin-top: var(--space-3);
}
.notes-panel {
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}
.notes-panel .button {
  width: 100%;
}
@media (pointer: coarse) {
  .note-card__actions {
    opacity: 1;
  }
}
.apartment-detail__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.apartment-detail__back:hover {
  color: var(--color-text);
}
.apartment-detail__back .icon {
  width: 15px;
  height: 15px;
}
.apartment-detail__header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
.apartment-detail__identity {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-width: 0;
}
.apartment-detail__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: none;
  border-radius: var(--radius-md);
  background: var(--color-surface-hover);
  color: var(--color-text-muted);
}
.apartment-detail__identity h1 {
  margin: 0;
  font-size: var(--text-2xl);
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
}
.apartment-detail__properties {
  margin-top: var(--space-6);
}
.apartment-detail__properties h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
}
.apartment-property {
  display: grid;
  gap: 6px;
  padding: var(--space-3) var(--space-4);
  background: var(--color-surface);
}
.apartment-property label {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 600;
}
.apartment-property__row {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.apartment-property__row .text-input {
  flex: 1;
  min-width: 0;
}
.apartment-detail__danger-zone {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}
.apartment-detail__danger-zone form {
  margin: 0;
}
.apartment-detail__archive-action {
  color: var(--color-danger);
}
.apartment-detail__archive-action:hover {
  background: var(--color-danger-surface);
  border-color: var(--color-danger);
}
.apartment-negotiations {
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}
.apartment-negotiations h2 {
  margin: 0 0 var(--space-3);
  font-size: var(--text-md);
}
.apartment-negotiations__list {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.apartment-negotiations__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  font-size: var(--text-sm);
}
.apartment-negotiations__item a {
  font-weight: 600;
  text-decoration: none;
}
.apartment-negotiations__item a:hover {
  text-decoration: underline;
}
.apartment-negotiations__empty {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
@media (pointer: coarse) {
  .apartment-list__toggle {
    min-height: 44px;
  }
}
@media (max-width: 480px) {
  .apartment-list__filters {
    flex-direction: column;
    align-items: stretch;
  }
  .apartment-list__filters .search-field {
    max-width: none;
  }
  .apartment-detail__header {
    flex-direction: column;
  }
  .apartment-link-dialog__create {
    flex-direction: column;
    align-items: stretch;
  }
}
.records-timeline, .records-timeline-slot {
  margin-top: var(--space-6);
}
.records-timeline {
  position: relative;
  max-width: 90ch;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
}
.records-timeline__header h2 {
  margin: 0;
  font-size: var(--text-lg);
}
.records-timeline__filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: var(--space-4);
}
.timeline-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  color: var(--color-text-muted);
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color var(--duration-short), color var(--duration-short);
}
.timeline-chip:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.timeline-chip[aria-pressed="true"], .timeline-chip[aria-pressed="true"]:hover {
  border-color: var(--color-primary);
  background: var(--color-primary);
  color: #fff;
}
.timeline-channel {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.timeline-channel select {
  min-height: 30px;
  padding: 0 8px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
.timeline-chip:focus-visible, .timeline-channel select:focus-visible, .records-timeline__new-items .button:focus-visible, .timeline-item a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.records-timeline__body {
  position: relative;
  margin-top: var(--space-4);
}
.records-timeline__new-items {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
  padding: 6px 6px 6px var(--space-3);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  white-space: nowrap;
  box-shadow: var(--shadow-pop);
  transform: translate(-50%, -50%);
}
.records-timeline__list {
  position: relative;
  display: grid;
  gap: 0;
}
.timeline-date {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: var(--space-3) 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.timeline-date::before, .timeline-date::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--color-border);
}
.timeline-date time {
  font-variant-numeric: tabular-nums;
}
.timeline-item {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 10px;
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--color-border);
}
.timeline-item::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  width: 1px;
  background: var(--color-border);
}
.timeline-item:last-child {
  border-bottom: 0;
}
.timeline-item__icon {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  margin-top: 2px;
  border-radius: 50%;
  background: var(--color-primary-soft-strong);
  color: var(--color-primary);
}
.timeline-item__icon .icon {
  width: 12px;
  height: 12px;
  stroke-width: 2.4;
}
.timeline-item--message_block .timeline-item__icon {
  background: var(--stage-blue-surface);
  color: var(--stage-blue);
}
.timeline-item--note .timeline-item__icon {
  background: var(--stage-amber-surface);
  color: var(--stage-amber);
}
.timeline-item--category_change .timeline-item__icon {
  background: var(--stage-violet-surface);
  color: var(--stage-violet);
}
.timeline-item--negotiation_event .timeline-item__icon {
  background: var(--stage-indigo-surface);
  color: var(--stage-indigo);
}
.timeline-item--stage_change .timeline-item__icon {
  background: var(--stage-teal-surface);
  color: var(--stage-teal);
}
.timeline-item--property_change .timeline-item__icon {
  background: var(--stage-green-surface);
  color: var(--stage-green);
}
.timeline-item--apartment_link .timeline-item__icon {
  background: var(--stage-orange-surface);
  color: var(--stage-orange);
}
.timeline-item--contact_link .timeline-item__icon {
  background: var(--stage-pink-surface);
  color: var(--stage-pink);
}
.timeline-item__body {
  min-width: 0;
}
.timeline-item__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 5px;
  margin-bottom: 5px;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.timeline-item__label {
  color: var(--color-text);
  font-weight: 700;
}
.timeline-item__time {
  font-variant-numeric: tabular-nums;
}
.timeline-item p {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
}
.timeline-item__preview {
  color: var(--color-text-muted);
}
.timeline-item__note > :first-child {
  margin-top: 0;
}
.timeline-item a {
  display: inline-block;
  margin-top: 8px;
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 700;
}
@media (max-width: 600px) {
  .records-timeline {
    margin-inline: calc(var(--space-3) * -1);
    padding: var(--space-4);
    border-inline: 0;
    border-radius: 0;
  }
  .timeline-channel {
    width: 100%;
    justify-content: space-between;
  }
  .timeline-channel select {
    flex: 1;
  }
  .timeline-chip {
    min-height: 40px;
  }
  .records-timeline__new-items {
    left: var(--space-4);
    right: var(--space-4);
    transform: translateY(-50%);
  }
}
.link-search, .link-compare {
  max-width: 840px;
  margin: 0 auto;
  padding: var(--space-6) var(--space-8);
  overflow-wrap: anywhere;
}
.link-search__lede, .link-compare__lede {
  margin: 4px 0 var(--space-5);
  color: var(--color-text-muted);
}
.link-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.link-back:hover {
  color: var(--color-text);
}
.link-back .icon {
  width: 16px;
  height: 16px;
}
.link-search__form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}
.link-search__field {
  flex: 1 1 320px;
  min-width: 0;
}
.link-search__results-heading {
  margin: 0 0 var(--space-2);
  font-size: var(--text-md);
}
.link-search__results {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--color-border);
}
.link-search__result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-2);
  border-bottom: 1px solid var(--color-border);
  transition: background-color var(--duration-short);
}
.link-search__result:hover {
  background: var(--color-surface-hover);
}
.link-search__result-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.link-search__result-info strong {
  font-weight: 600;
  color: var(--color-text);
}
.link-search__result-info small {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.link-plan section, .link-plan > fieldset {
  margin: var(--space-6) 0;
}
.link-plan h2 {
  font-size: var(--text-md);
  margin: 0 0 var(--space-2);
}
.link-properties__lede, .link-negotiations__empty {
  margin: 0 0 var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.link-contacts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  border: 0;
  padding: 0;
  margin: 0 0 var(--space-6);
}
.link-contacts legend {
  grid-column: 1 / -1;
  padding: 0 0 var(--space-2);
  font-weight: 700;
}
.link-contact-card {
  display: flex;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  cursor: pointer;
  transition: border-color var(--duration-short), background-color var(--duration-short);
}
.link-contact-card:hover {
  border-color: var(--color-control-border);
}
.link-contact-card:has(input:focus-visible) {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.link-contact-card:has(input:checked) {
  border-color: var(--color-primary);
  background: var(--color-primary-soft);
}
.link-contact-card input {
  margin-top: 3px;
  flex: none;
}
.link-contact-card__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.link-contact-card__body small {
  color: var(--color-text-muted);
}
.link-contact-card__hint {
  margin-top: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
}
.link-contact-card:has(input:checked) .link-contact-card__hint {
  color: var(--color-primary);
}
.link-property {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  margin: 0 0 var(--space-3);
}
.link-property legend {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0 0 var(--space-2);
  font-weight: 700;
}
.link-property__option {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: border-color var(--duration-short), background-color var(--duration-short);
}
.link-property__option:hover {
  background: var(--color-surface-hover);
}
.link-property__option:has(input:checked) {
  border-color: var(--color-primary);
  background: var(--color-primary-soft);
}
.link-property__option:has(input:focus-visible) {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.link-property__option input {
  margin-top: 3px;
  flex: none;
}
.link-property__option small {
  display: block;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.link-property--error {
  border-color: var(--color-danger);
  background: var(--color-danger-surface);
}
.link-property--error .link-property__option {
  background: var(--color-surface);
}
.link-equal-properties {
  margin-top: var(--space-4);
  color: var(--color-text-muted);
}
.link-equal-properties summary {
  cursor: pointer;
  font-weight: 600;
  font-size: var(--text-sm);
}
.link-equal-properties p {
  margin: var(--space-2) 0 0;
  font-size: var(--text-sm);
}
.link-category__field, .link-negotiation__field {
  max-width: 22rem;
  margin: 0 0 var(--space-3);
}
.link-negotiation {
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  margin: 0 0 var(--space-3);
}
.link-negotiation legend {
  font-weight: 700;
  padding: 0 0 var(--space-2);
}
.link-kept {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-2);
  font-size: var(--text-sm);
}
.link-kept__label {
  color: var(--color-text-muted);
  font-weight: 600;
}
.link-kept__option {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.link-plan__submit {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  margin-top: var(--space-6);
}
.link-plan__submit .button {
  min-width: 12rem;
}
.link-plan__submit-hint {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
dialog#link-summary.link-summary {
  max-width: 34rem;
  width: calc(100% - var(--space-8));
  border: 0;
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-pop);
}
dialog#link-summary.link-summary::backdrop {
  background: rgb(23 35 30 / 45%);
}
.link-summary__lede {
  margin: var(--space-2) 0 var(--space-4);
}
.link-summary__notice {
  margin: 0 0 var(--space-4);
}
.link-summary__pairs {
  margin: var(--space-2) 0 var(--space-4);
  padding-left: 1.2em;
}
.dialog-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-2);
}
@media (max-width: 1023px) {
  .link-contacts, .link-property {
    grid-template-columns: 1fr;
  }
  .link-property legend {
    grid-column: auto;
  }
}
@media (max-width: 480px) {
  .link-search, .link-compare {
    padding: var(--space-4);
  }
  .link-search__form {
    align-items: stretch;
  }
  .link-search__form .button {
    width: 100%;
  }
  .link-search__result {
    flex-direction: column;
    align-items: stretch;
  }
  .link-search__result .button {
    width: 100%;
  }
  .link-plan__submit .button {
    width: 100%;
  }
}
@media (pointer: coarse) {
  .link-contact-card, .link-property__option, .link-kept__option {
    min-height: 44px;
  }
}
.property-catalog .category-tabs {
  margin-bottom: var(--space-5);
}
.property-catalog__groups {
  display: grid;
  gap: var(--space-4);
  margin: 0 0 var(--space-6);
}
.property-group-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
  overflow: hidden;
}
.property-group-card__title {
  margin: 0;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface-muted);
  font-size: var(--text-md);
}
.property-group-card .empty-state {
  margin: 0;
  border: 0;
  border-radius: 0;
}
.property-rows {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
}
.property-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
}
.property-row:last-child {
  border-bottom: 0;
}
.property-row__label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  color: var(--color-text);
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.property-row__manage {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration: none;
}
.property-row__manage:hover {
  text-decoration: underline;
}
.property-row__manage .icon {
  width: 15px;
  height: 15px;
}
.property-catalog__create {
  margin-top: var(--space-6);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
}
.property-catalog__create h2 {
  margin: 0 0 var(--space-4);
  font-size: var(--text-md);
}
.property-catalog-form {
  display: grid;
  gap: var(--space-4);
  max-width: 32rem;
}
.property-catalog-form .field textarea {
  min-height: 6rem;
  padding: 8px var(--space-3);
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-md);
  color: var(--color-text);
  background: var(--color-surface);
  font: inherit;
  font-size: var(--text-base);
  resize: vertical;
}
.property-catalog-form .field textarea:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
  border-color: var(--color-focus);
}
.property-catalog-form [data-property-settings][hidden] {
  display: none;
}
.property-catalog-form__note {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.property-catalog-form > .button {
  justify-self: start;
}
@media (max-width: 700px) {
  .property-row {
    align-items: flex-start;
  }
  .property-row__manage {
    margin-left: 0;
  }
}
@media (pointer: coarse) {
  .property-catalog .category-tab, .property-catalog .property-row__manage, .property-catalog-form .button {
    min-height: 44px;
  }
}
.settings-card-page .settings-card-layout {
  display: grid;
  grid-template-columns: minmax(0, 26rem) minmax(0, 22rem);
  align-items: start;
  gap: var(--space-6);
}
.settings-card-page .settings-card-form {
  display: grid;
  gap: var(--space-4);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  box-shadow: var(--shadow-panel);
}
.settings-card-page .settings-card-form__hint {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.settings-card-page .settings-card-form__actions {
  display: flex;
  justify-content: flex-end;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}
.settings-card-page select {
  max-width: 100%;
}
.settings-card-preview {
  position: sticky;
  top: var(--space-6);
  display: grid;
  gap: var(--space-3);
  align-content: start;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface-muted);
}
.settings-card-preview h2 {
  margin: 0;
  font-size: var(--text-md);
}
.settings-card-preview__hint {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.settings-card-preview__card {
  cursor: default;
}
.settings-card-preview__card:hover {
  border-color: var(--color-border);
  box-shadow: var(--shadow-card);
}
.pipeline-card-extra-properties {
  display: grid;
  gap: 0.25rem;
  margin: 0.5rem 0;
}
.pipeline-card-extra-properties div {
  display: flex;
  gap: 0.25rem;
  min-width: 0;
}
.pipeline-card-extra-properties dt {
  font-weight: 600;
}
.pipeline-card-extra-properties dd {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 900px) {
  .settings-card-page .settings-card-layout {
    grid-template-columns: 1fr;
  }
  .settings-card-preview {
    position: static;
    order: -1;
  }
}
.tasks-ui {
  display: grid;
  gap: .75rem;
}
.tasks-ui form {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}
.tasks-ui [data-task-row] {
  display: flex;
  gap: .5rem;
  align-items: center;
}
.automations-ui {
  max-width: 56rem;
  margin: 2rem auto;
}
.automations-ui [role="alert"] {
  color: var(--color-danger, #a11);
}
.app-frame {
  display: grid;
  grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
  height: 100vh;
  height: 100dvh;
}
.app-main {
  min-width: 0;
  min-height: 0;
  height: 100vh;
  height: 100dvh;
  overflow: auto;
}
.app-sidebar {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  min-height: 0;
  padding: var(--space-4) var(--space-3);
  overflow-y: auto;
  background: var(--color-surface-muted);
  border-right: 1px solid var(--color-border);
}
.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 2px 6px;
  color: var(--color-text);
  text-decoration: none;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.brand-mark {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: none;
  border-radius: 50% 50% 50% 8px;
  background: var(--color-primary);
  color: var(--color-accent);
  font-size: 16px;
  font-weight: 900;
}
.sidebar-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 6px;
  padding: 0 10px;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.primary-nav, .queue-nav {
  display: grid;
  gap: 2px;
}
.nav-link {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 0 10px;
  border-radius: var(--radius-md);
  color: #334155;
  text-decoration: none;
  font-size: var(--text-base);
  font-weight: 600;
  transition: background-color var(--duration-short), color var(--duration-short);
}
.nav-link .icon {
  color: var(--color-text-muted);
}
.nav-link:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.nav-link--active, .nav-link--active:hover {
  background: var(--color-primary);
  color: #fff;
}
.nav-link--active .icon {
  color: var(--color-accent);
}
.nav-link--active-soft, .nav-link--active-soft:hover {
  background: var(--color-primary-soft-strong);
  color: var(--color-text);
}
.nav-link--active-soft .icon {
  color: var(--color-text);
}
.queue-count {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 20px;
  padding: 0 6px;
  border-radius: var(--radius-full);
  background: var(--color-surface-hover);
  color: var(--color-text);
  font-size: 11px;
  letter-spacing: 0;
}
.sidebar-user {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding: var(--space-3) var(--space-2) var(--space-1);
  border-top: 1px solid var(--color-border);
}
.operator-avatar {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: none;
  border-radius: 50%;
  background: var(--color-primary-soft-strong);
  color: var(--color-text);
  font-weight: 700;
}
.sidebar-user__name {
  min-width: 0;
  flex: 1;
  font-size: var(--text-sm);
}
.sidebar-user__name strong, .sidebar-user__name small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-user__name small {
  color: var(--color-success);
  font-size: var(--text-xs);
  font-weight: 600;
}
.session-action {
  margin: 0;
}
.session-action button {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-text-muted);
  cursor: pointer;
}
.session-action button:hover {
  background: var(--color-surface-hover);
  color: var(--color-danger);
}
.app-shell, .catalog {
  max-width: 1200px;
  padding: var(--space-6) var(--space-8);
}
.page-header, .app-shell__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
.page-header h1, .app-shell__header h1, .catalog h1 {
  margin: 2px 0 0;
  font-size: var(--text-xl);
  font-weight: 700;
  line-height: 1.25;
}
.page-header__lede, .section-lede {
  margin: 4px 0 0;
  color: var(--color-text-muted);
}
.app-shell__header > a:not(.button) {
  font-weight: 600;
  text-decoration: none;
}
.app-shell > h2, .app-shell > section > h2 {
  font-size: var(--text-md);
  margin: var(--space-6) 0 var(--space-2);
}
.app-shell > section ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.app-shell > section li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: 10px var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}
.workspace-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--space-3);
}
.workspace-card {
  display: grid;
  gap: 4px;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  text-decoration: none;
  transition: border-color var(--duration-short), box-shadow var(--duration-short);
}
.workspace-card:hover {
  border-color: var(--color-primary-soft-strong);
  box-shadow: var(--shadow-pop);
}
.workspace-card__icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-bottom: var(--space-2);
  border-radius: var(--radius-md);
  background: var(--color-surface-hover);
  color: var(--color-text-muted);
}
.workspace-card--accent {
  background: var(--color-accent);
  border-color: var(--color-accent);
}
.workspace-card--accent:hover {
  border-color: var(--color-primary);
}
.workspace-card--accent > span:last-child {
  color: #3b4741;
}
.workspace-card--accent .workspace-card__icon {
  background: var(--color-primary);
  color: var(--color-accent);
}
.workspace-card strong {
  font-size: var(--text-md);
}
.workspace-card > span:last-child {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.catalog section {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-6);
}
.catalog h2 {
  margin: 0;
  font-size: var(--text-md);
}
.auth-layout {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  max-width: 1040px;
  min-height: 600px;
  margin: 7vh auto;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  background: var(--color-surface);
  box-shadow: var(--shadow-pop);
}
.auth-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-3);
  padding: 56px;
  background-color: var(--color-primary);
  background-image: linear-gradient(rgb(255 255 255 / 4%) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 4%) 1px, transparent 1px);
  background-size: 32px 32px;
  color: #fff;
}
.auth-intro .brand-mark {
  background: var(--color-accent);
  color: var(--color-primary);
}
.auth-intro .eyebrow {
  color: #cbd5df;
  margin-top: var(--space-4);
}
.auth-intro h1 {
  margin: 0;
  color: #fff;
  font-size: 40px;
  line-height: 1.1;
  letter-spacing: -0.03em;
}
.auth-intro p:last-child {
  margin: 0;
  max-width: 36ch;
  color: #cbd5df;
  font-size: var(--text-md);
}
.auth-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 56px;
}
.auth-card h2 {
  margin: 4px 0;
  font-size: var(--text-xl);
}
.auth-card > p:not(.eyebrow) {
  margin: 0;
  color: var(--color-text-muted);
}
.auth-card form {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-6);
}
.auth-card .field input {
  min-height: 44px;
  font-size: 1rem;
}
.auth-card .button {
  min-height: 44px;
}
.app-main.inbox-main {
  overflow: hidden;
}
.inbox-workspace, .chat-workspace {
  height: 100%;
  min-height: 0;
  background: var(--color-surface);
}
.inbox-workspace > .page-header {
  padding: var(--space-6) var(--space-8) 0;
}
.inbox-workspace > .alert {
  margin: 0 var(--space-8);
}
.inbox-layout {
  display: grid;
  grid-template-columns: var(--list-width) minmax(0, 1fr);
  height: 100%;
  min-height: 0;
}
.conversation-pane {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  border-right: 1px solid var(--color-border);
  background: var(--color-surface);
}
.conversation-pane__header {
  flex: none;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-4) var(--space-3);
}
.conversation-pane__header h1 {
  margin: 2px 0 0;
  font-size: var(--text-lg);
  font-weight: 700;
  line-height: 1.3;
}
.conversation-pane__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 2px 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.live-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--color-live);
  box-shadow: 0 0 0 3px var(--color-live-soft);
}
.conversation-pane__header-actions {
  display: flex;
  gap: 6px;
}
.inbox-filters {
  flex: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 124px 36px;
  gap: 6px;
  padding: 0 var(--space-4) var(--space-2);
}
.search-field {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 36px;
  padding: 0 10px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface-muted);
  color: var(--color-text-muted);
}
.search-field .icon {
  width: 16px;
  height: 16px;
}
.search-field:focus-within {
  border-color: var(--color-control-border);
  background: var(--color-surface);
  box-shadow: 0 0 0 3px rgb(185 255 57 / 25%);
}
.search-field input {
  width: 100%;
  min-width: 0;
  height: 32px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
.search-field:has(input:focus-visible) {
  outline: 2px solid var(--color-focus);
  outline-offset: 1px;
}
.search-field input:focus-visible {
  outline: 0;
}
.inbox-filters select {
  height: 36px;
  min-width: 0;
  padding: 0 6px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-sm);
}
.icon-button--search {
  border: 0;
  background: var(--color-primary);
  color: var(--color-accent);
}
.icon-button--search:hover {
  background: var(--color-primary-hover);
  color: var(--color-accent);
}
.icon-button--search .icon {
  width: 16px;
  height: 16px;
}
#inbox-poller {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}
.inbox-connection {
  margin: var(--space-2) var(--space-4);
}
.conversation-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.conversation-list__item {
  position: relative;
  border-bottom: 1px solid var(--color-border);
}
.conversation-list__item:hover {
  background: var(--color-surface-muted);
}
.conversation-card {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 10px var(--space-4) 10px 40px;
  color: inherit;
  text-decoration: none;
}
.conversation-avatar {
  position: relative;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 12px;
  background: linear-gradient(145deg, #e0eadf, #cbd9cd);
  color: #22332a;
  font-size: var(--text-md);
  font-weight: 800;
}
.unread-indicator {
  position: absolute;
  right: -1px;
  top: -1px;
  width: 11px;
  height: 11px;
  border: 2px solid var(--color-surface);
  border-radius: 50%;
  background: var(--color-unread);
}
.conversation-card__body {
  display: block;
  flex: 1;
  min-width: 0;
}
.conversation-card__heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-2);
}
.conversation-card__heading strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--text-base);
  font-weight: 600;
}
.conversation-card:has(.unread-indicator) .conversation-card__heading strong {
  font-weight: 800;
}
.conversation-card__heading time {
  flex: none;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.conversation-card__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  padding-right: 26px;
}
.channel-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 600;
}
.channel-chip .icon {
  width: 13px;
  height: 13px;
}
.channel-chip--whatsapp .icon {
  color: var(--color-whatsapp);
}
.channel-chip--instagram .icon {
  color: var(--color-instagram);
}
.status-pill {
  padding: 1px 7px;
  border-radius: var(--radius-full);
  background: #eef2ef;
  color: #53615a;
  font-size: 11px;
  font-weight: 600;
}
.status-pill--resolved {
  background: #e6e9e7;
  color: #4f5b55;
}
.conversation-card--resolved {
  opacity: 0.7;
}
.conversation-card--active, .conversation-list__item:has(.conversation-card--active) {
  background: var(--color-primary-soft);
}
.conversation-card--active {
  box-shadow: inset 3px 0 var(--color-accent);
}
.conversation-rename summary {
  position: absolute;
  right: 10px;
  top: 34px;
  display: grid;
  opacity: 0;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: var(--radius-sm);
  color: var(--color-text-muted);
  list-style: none;
  cursor: pointer;
}
.conversation-rename summary::-webkit-details-marker {
  display: none;
}
.conversation-list__item:hover .conversation-rename summary, .conversation-rename summary:focus-visible, .conversation-rename[open] summary {
  opacity: 1;
}
.conversation-rename summary:hover, .conversation-rename[open] summary {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.conversation-rename summary .icon {
  width: 14px;
  height: 14px;
}
.conversation-rename summary span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.conversation-rename form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
  margin: 0 var(--space-4) 10px 40px;
  padding: 10px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}
.conversation-rename form > div {
  display: flex;
  gap: 6px;
  min-width: 0;
}
.conversation-rename input {
  flex: 1;
  min-width: 0;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--color-control-border);
  border-radius: var(--radius-sm);
  font: inherit;
  font-size: var(--text-sm);
  color: var(--color-text);
}
.conversation-rename button {
  height: 32px;
  padding: 0 10px;
  border: 0;
  border-radius: var(--radius-sm);
  background: var(--color-primary);
  color: #fff;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
.conversation-preview {
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 0;
  padding: var(--space-8);
  background: radial-gradient(circle at 50% 44%, #f8faef 0, #fff 42%);
  text-align: center;
}
.conversation-preview__empty {
  max-width: 380px;
}
.conversation-preview__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.conversation-preview__visual {
  position: relative;
  width: 190px;
  height: 126px;
  margin-bottom: var(--space-6);
}
.conversation-preview__visual span {
  position: absolute;
  display: block;
  width: 120px;
  height: 68px;
  border: 1px solid var(--color-primary);
  border-radius: 18px 18px 18px 5px;
  background: #fff;
  box-shadow: 0 12px 35px rgb(19 31 25 / 10%);
}
.conversation-preview__visual span:nth-child(1) {
  left: 0;
  top: 0;
  transform: rotate(-7deg);
}
.conversation-preview__visual span:nth-child(2) {
  right: 0;
  top: 28px;
  background: var(--color-accent);
  transform: rotate(6deg);
}
.conversation-preview__visual span:nth-child(3) {
  left: 30px;
  bottom: 0;
  width: 70px;
  height: 8px;
  border: 0;
  border-radius: 8px;
  background: var(--color-primary);
}
.conversation-preview__empty h2 {
  margin: 6px 0 8px;
  font-size: 26px;
  letter-spacing: -0.03em;
}
.conversation-preview__empty p:not(.eyebrow) {
  margin: 0;
  color: var(--color-text-muted);
  line-height: 1.6;
}
.preview-shortcuts {
  display: flex;
  justify-content: center;
  gap: var(--space-4);
  margin-top: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.preview-shortcuts kbd {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  margin-right: 2px;
  border: 1px solid var(--color-border-strong);
  border-bottom-width: 2px;
  border-radius: 4px;
  background: var(--color-surface);
  font: inherit;
  color: var(--color-text);
}
.conversation-preview--active {
  display: block;
  padding: 0;
  text-align: left;
  overflow: hidden;
}
.conversation-preview--active > .conversation-detail {
  width: 100%;
}
.conversation-preview[aria-busy="true"] {
  cursor: progress;
  opacity: 0.7;
}
.conversation-detail {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--side-panel-width);
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas: "header side" "stream side" "composer side";
  height: 100%;
  min-height: 0;
  background: #f4f6f3;
}
.conversation-detail:not(:has(> .contact-panel)) {
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas: "header" "stream" "composer";
}
.chat-header {
  grid-area: header;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  padding: 10px var(--space-4);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface);
}
.conversation-detail > .contact-panel {
  grid-area: side;
}
.conversation-detail > .message-stream, .conversation-detail > .empty-state, .conversation-detail > .alert {
  grid-area: stream;
}
.conversation-detail > .alert {
  align-self: start;
  margin: var(--space-4);
}
.conversation-detail > .message-composer {
  grid-area: composer;
}
.conversation-detail__back {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: none;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  color: var(--color-text-muted);
  text-decoration: none;
}
.conversation-detail__back:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.conversation-avatar--header {
  width: 36px;
  height: 36px;
  flex-basis: 36px;
}
.chat-header > div {
  min-width: 0;
}
.chat-header h1 {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--text-md);
  font-weight: 700;
}
.chat-header p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.conversation-toolbar {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}
.conversation-toolbar form {
  margin: 0;
}
.conversation-toolbar > p, .conversation-toolbar > .alert {
  margin: 0;
  font-size: var(--text-xs);
}
.message-stream {
  min-height: 0;
  padding: var(--space-5) var(--space-6);
  overflow-y: auto;
  background-image: radial-gradient(#d9ded9 1px, transparent 1px);
  background-size: 24px 24px;
}
.message-date {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 auto var(--space-4);
  max-width: 820px;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.message-date::before, .message-date::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--color-border);
}
.message-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 820px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.message {
  max-width: min(75%, 560px);
  padding: 8px 12px;
  border: 1px solid var(--color-border);
  border-radius: 14px 14px 14px 4px;
  background: var(--color-surface);
  font-size: var(--text-md);
}
.message--outgoing {
  align-self: flex-end;
  border-color: var(--color-outgoing-border);
  border-radius: 14px 14px 4px 14px;
  background: var(--color-outgoing);
}
.message p {
  margin: 0;
  line-height: 1.5;
}
.message time {
  display: block;
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 11px;
  text-align: right;
}
.message--pending {
  opacity: 0.8;
}
.message--pending small {
  display: block;
  margin-top: 4px;
  font-size: 11px;
}
.attachment-state {
  margin-top: 6px !important;
  font-size: var(--text-sm);
}
.message-composer {
  margin: 0;
  padding: var(--space-2) var(--space-4) var(--space-3);
  border-top: 1px solid var(--color-border);
  background: var(--color-surface);
}
.message-composer textarea {
  display: block;
  width: 100%;
  min-height: 44px;
  max-height: 160px;
  padding: 10px 12px;
  resize: vertical;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  outline: 0;
  background: var(--color-surface-muted);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-md);
}
.message-composer textarea:focus-visible {
  border-color: var(--color-control-border);
  background: var(--color-surface);
  box-shadow: 0 0 0 3px rgb(185 255 57 / 30%);
  outline: 0;
}
.composer-actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
}
.attachment-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 10px;
  border-radius: var(--radius-md);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
.attachment-button:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.attachment-button .icon {
  width: 16px;
  height: 16px;
}
.send-status {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.send-status p {
  margin: 0;
}
.composer-hint {
  margin-left: auto;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.composer-actions button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 14px;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--color-primary);
  color: #fff;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
.composer-actions button:hover {
  background: var(--color-primary-hover);
}
.composer-actions button .icon {
  width: 15px;
  height: 15px;
  color: var(--color-accent);
}
.message-composer > p {
  margin: 4px 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}
.message-composer > p:empty {
  display: none;
}
.chat-workspace > .conversation-detail, .chat-workspace {
  height: 100%;
}
.chat-workspace > .inbox-connection, .chat-workspace > .inbox-loading {
  position: absolute;
  z-index: 5;
}
@media (max-width: 1439px) {
  :root {
    --list-width: 330px;
    --side-panel-width: 272px;
  }
}
@media (max-width: 1279px) {
  :root {
    --sidebar-width: 68px;
    --list-width: 320px;
    --side-panel-width: 260px;
  }
  .inbox-filters {
    grid-template-columns: minmax(0, 1fr) 108px 36px;
  }
  .app-sidebar {
    align-items: center;
    padding-inline: var(--space-2);
  }
  .brand__name, .sidebar-label, .nav-link > span, .sidebar-user__name {
    display: none;
  }
  .nav-link {
    justify-content: center;
    width: 44px;
    min-height: 44px;
    padding: 0;
  }
  .sidebar-user {
    flex-direction: column;
    padding-inline: 0;
  }
}
@media (max-width: 1099px) {
  .inbox-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .conversation-preview {
    display: none;
  }
  .conversation-preview.conversation-preview--active {
    display: block;
    position: fixed;
    inset: 0 0 0 var(--sidebar-width);
    z-index: 15;
  }
}
@media (max-width: 767px) {
  :root {
    --sidebar-width: 0px;
  }
  .conversation-detail, .conversation-detail:not(:has(> .contact-panel)) {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
  }
  .conversation-detail > .contact-panel {
    flex: none;
    overflow: visible;
    border-left: 0;
    border-bottom: 1px solid var(--color-border);
  }
  .conversation-detail > .message-stream {
    flex: 1 0 auto;
    min-height: 280px;
    overflow: visible;
  }
  .conversation-detail > .message-composer {
    position: sticky;
    bottom: 0;
  }
  .app-frame {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr);
  }
  .app-main {
    height: auto;
    min-height: 0;
  }
  .app-sidebar {
    flex-direction: row;
    align-items: center;
    gap: var(--space-2);
    padding: 8px var(--space-3);
    overflow: visible;
    border-right: 0;
    border-bottom: 1px solid var(--color-border);
  }
  .brand {
    padding-inline: 0;
  }
  .app-sidebar .queue-nav {
    display: none;
  }
  .primary-nav {
    display: flex;
    gap: 2px;
    margin-left: auto;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .primary-nav::-webkit-scrollbar {
    display: none;
  }
  .primary-nav .nav-link {
    flex: none;
  }
  .nav-link {
    width: 40px;
    min-height: 40px;
  }
  .sidebar-user {
    flex-direction: row;
    margin: 0;
    padding: 0 0 0 var(--space-2);
    border-top: 0;
    border-left: 1px solid var(--color-border);
  }
  .sidebar-user .operator-avatar {
    display: none;
  }
  .conversation-preview.conversation-preview--active {
    inset: 0;
  }
  .app-shell, .catalog {
    padding: var(--space-4);
  }
  .page-header, .app-shell__header {
    flex-direction: column;
    align-items: flex-start;
  }
  .auth-layout {
    display: block;
    margin: 0;
    min-height: 100vh;
    border: 0;
    border-radius: 0;
  }
  .auth-intro, .auth-card {
    padding: var(--space-8) var(--space-5);
  }
  .auth-intro h1 {
    font-size: 30px;
  }
  .message-stream {
    padding: var(--space-4) var(--space-3);
  }
  .message {
    max-width: 88%;
  }
  .composer-hint {
    display: none;
  }
  .message-composer textarea {
    font-size: 1rem;
  }
  .conversation-select input {
    width: 20px;
    height: 20px;
  }
}
@media (pointer: coarse) {
  .conversation-rename summary {
    opacity: 1;
  }
  .icon-button, .conversation-detail__back {
    width: 44px;
    height: 44px;
  }
  .button, .composer-actions button, .attachment-button {
    min-height: 44px;
  }
  .category-tab {
    min-height: 36px;
  }
}
@media (max-width: 359px) {
  .brand {
    padding: 0;
  }
  .primary-nav .nav-link {
    width: 36px;
  }
}
.app-shell > .empty-state, .app-shell > .loading {
  margin: var(--space-4) 0 0;
}
:root {
  --color-canvas: #fbfbf9;
  --color-surface: #ffffff;
  --color-surface-muted: #f5f6f3;
  --color-surface-hover: #f1f2ef;
  --color-text: #131a17;
  --color-text-muted: #565e59;
  --color-text-faint: #676f6a;
  --color-border: #e6e8e4;
  --color-border-strong: #ccd1cc;
  --color-control-border: #d7dcd7;
  --color-primary: #131a17;
  --color-primary-hover: #232f2a;
  --color-primary-soft: #f1f2ef;
  --color-primary-soft-strong: #e3e7e2;
  --color-accent: #b9ff39;
  --color-accent-soft: #e9ffc0;
  --color-accent-ink: #37471a;
  --color-focus: #2c6be8;
  --color-live: #1f9459;
  --color-live-soft: #d9f1e4;
  --color-unread: #e23d4e;
  --color-danger: #9c2b22;
  --color-whatsapp: #1e7c45;
  --color-outgoing: #e9ffc0;
  --color-outgoing-border: #d3f293;
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-xl: 24px;
  --shadow-panel: 0 1px 2px rgb(19 26 23 / 4%), 0 14px 30px -22px rgb(19 26 23 / 50%);
  --shadow-card: 0 1px 2px rgb(19 26 23 / 4%), 0 10px 24px -18px rgb(19 26 23 / 50%);
  --shadow-card-hover: 0 2px 6px rgb(19 26 23 / 7%), 0 22px 44px -22px rgb(19 26 23 / 55%);
  --shadow-pop: 0 2px 6px rgb(19 26 23 / 7%), 0 22px 44px -22px rgb(19 26 23 / 55%);
  --sb-bg: #151f1b;
  --sb-ink: #b6c0ba;
  --sb-ink-strong: #ffffff;
  --sb-label: #8e9b94;
  --sb-icon: #93a099;
  --sb-hover: rgb(255 255 255 / 7%);
  --sb-rule: rgb(255 255 255 / 10%);
  --sb-live: #8fe0ac;
  --display-size: 52px;
  --display-track: -0.04em;
  --page-pad-y: 40px;
  --page-pad-x: 44px;
  --group-gap: 18px;
  --group-pad: 24px;
  --prop-px: 14px;
}
::selection {
  background: var(--color-accent);
  color: var(--color-text);
}
* {
  scrollbar-width: thin;
  scrollbar-color: #d2d6d1 transparent;
}
.app-sidebar {
  gap: 20px;
  padding: 24px 16px;
  background: var(--sb-bg);
  border-right: 0;
  color: var(--sb-ink);
}
.app-sidebar__top {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 2px 6px;
}
.app-sidebar__top .brand {
  flex: 1;
  min-width: 0;
  padding: 0;
}
.brand {
  color: #fff;
}
.brand__name {
  overflow: hidden;
  white-space: nowrap;
}
.brand-mark {
  width: 32px;
  height: 32px;
  background: var(--color-accent);
  color: var(--color-text);
  font-size: 15px;
  font-weight: 800;
}
.sidebar-toggle {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: none;
  padding: 0;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--sb-icon);
  cursor: pointer;
  transition: background-color .16s, color .16s;
}
.sidebar-toggle:hover {
  background: var(--sb-hover);
  color: var(--sb-ink-strong);
}
.sidebar-toggle .icon {
  width: 17px;
  height: 17px;
  transition: transform .22s cubic-bezier(.2, .8, .3, 1);
}
.sidebar-label {
  margin: 0 0 8px;
  padding: 0 10px;
  color: var(--sb-label);
  font-size: 11px;
  letter-spacing: .1em;
}
.sidebar-label--spaced {
  margin-top: 18px;
}
.primary-nav {
  gap: 4px;
}
.nav-link {
  gap: 11px;
  min-height: 44px;
  padding: 0 14px;
  border-radius: 999px;
  color: var(--sb-ink);
  font-weight: 550;
}
.nav-link .icon {
  color: var(--sb-icon);
}
.nav-link:hover {
  background: var(--sb-hover);
  color: var(--sb-ink-strong);
}
.nav-link--active, .nav-link--active:hover {
  background: var(--color-accent);
  color: var(--color-text);
  font-weight: 700;
}
.nav-link--active .icon {
  color: var(--color-text);
}
.nav-link__label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}
.nav-dot {
  width: 7px;
  height: 7px;
  flex: none;
  border-radius: 50%;
  background: var(--color-unread);
}
.nav-count {
  display: grid;
  place-items: center;
  flex: none;
  min-width: 21px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--sb-hover);
  color: var(--sb-ink-strong);
  font-size: 11px;
  font-weight: 700;
}
.nav-link--active .nav-count {
  background: rgb(19 26 23 / 14%);
  color: var(--color-text);
}
.sidebar-tail {
  display: grid;
  gap: 10px;
  margin-top: auto;
}
.sidebar-tail ~ .sidebar-user {
  margin-top: 0;
}
.sidebar-user {
  padding: 14px 8px 4px;
  border-top: 1px solid var(--sb-rule);
}
.operator-avatar {
  width: 32px;
  height: 32px;
  background: #e3e7e2;
  color: #3c4641;
  font-size: 13px;
}
.sidebar-user__name strong {
  color: var(--sb-ink-strong);
  font-weight: 600;
}
.sidebar-user__name small {
  color: var(--sb-live);
}
.session-action button {
  width: 32px;
  height: 32px;
  color: var(--sb-icon);
}
.session-action button:hover {
  background: var(--sb-hover);
  color: #ff8f86;
}
.app-frame--rail {
  grid-template-columns: 76px minmax(0, 1fr);
}
.app-frame--rail .app-sidebar {
  padding-inline: 12px;
}
.app-frame--rail .app-sidebar__top {
  flex-direction: column;
  gap: 12px;
  padding: 0;
}
.app-frame--rail :is(.brand__name, .nav-link__label, .sidebar-label, .sidebar-user__name, .nav-count, .session-action) {
  display: none;
}
.app-frame--rail .nav-link {
  position: relative;
  justify-content: center;
  gap: 0;
  padding: 0;
}
.app-frame--rail .nav-dot {
  position: absolute;
  top: 9px;
  right: 13px;
  box-shadow: 0 0 0 2px var(--sb-bg);
}
.app-frame--rail .sidebar-toggle .icon {
  transform: rotate(180deg);
}
.app-frame--rail .sidebar-user {
  justify-content: center;
  gap: 0;
}
@media (min-width: 1280px) {
  :root {
    --sidebar-width: 248px;
  }
}
@media (min-width: 768px) and (max-width: 1279px) {
  :root {
    --sidebar-width: 76px;
  }
  .app-frame, .app-frame--rail {
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
  }
  .app-sidebar {
    padding-inline: 12px;
  }
  .app-sidebar__top {
    flex-direction: column;
    gap: 12px;
    padding: 0;
  }
  .app-sidebar :is(.brand__name, .nav-link__label, .sidebar-label, .sidebar-user__name, .nav-count, .session-action, .sidebar-toggle) {
    display: none;
  }
  .app-sidebar .nav-link {
    position: relative;
    justify-content: center;
    gap: 0;
    padding: 0;
  }
  .app-sidebar .nav-dot {
    position: absolute;
    top: 9px;
    right: 13px;
    box-shadow: 0 0 0 2px var(--sb-bg);
  }
  .app-sidebar .sidebar-user {
    justify-content: center;
    gap: 0;
  }
}
.button {
  min-height: 44px;
  padding: 0 22px;
  border-radius: 999px;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: -.005em;
  transition: background-color .16s, border-color .16s, transform .16s, box-shadow .16s;
}
.button--primary {
  background: var(--color-primary);
  color: #fff;
  box-shadow: 0 2px 4px rgb(19 26 23 / 12%), 0 14px 30px -18px rgb(19 26 23 / 80%);
}
.button--primary:hover {
  background: var(--color-primary-hover);
  transform: translateY(-1px);
}
.button--secondary {
  background: #fff;
  border-color: #dde1dc;
}
.button--secondary:hover {
  background: var(--color-surface-hover);
  border-color: var(--color-border-strong);
}
.button--small {
  min-height: 34px;
  padding: 0 14px;
  font-size: 12.5px;
}
.icon-button {
  border-radius: 999px;
  border-color: #dde1dc;
}
.field label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-muted);
}
.field input, .field select, .text-input {
  min-height: 46px;
  padding: 0 16px;
  border-color: var(--color-control-border);
  border-radius: 999px;
  font-size: 13.5px;
}
.field textarea {
  padding: 12px 16px;
  border: 1px solid var(--color-control-border);
  border-radius: 18px;
  font: inherit;
  font-size: 13.5px;
}
:is(.field input, .field select, .field textarea, .text-input):focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  border-color: var(--color-focus);
  box-shadow: 0 0 0 3px rgb(44 107 232 / 16%);
}
.search-field {
  min-height: 44px;
  padding: 0 16px;
  border-color: var(--color-control-border);
  border-radius: 999px;
  background: #fff;
}
.search-field:focus-within {
  border-color: var(--color-focus);
  box-shadow: 0 0 0 3px rgb(44 107 232 / 16%);
}
.badge {
  padding: 2px 9px;
  border-radius: 999px;
  background: #eff1ee;
  color: #57605b;
  font-size: 11.5px;
  font-weight: 700;
}
.alert {
  border-radius: var(--radius-md);
  padding: 12px 16px;
}
.empty-state, .loading {
  border-radius: var(--radius-lg);
}
.app-shell, .catalog {
  max-width: 1180px;
  padding: var(--page-pad-y) var(--page-pad-x) 56px;
}
.page-header, .app-shell__header {
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 26px;
}
.page-header h1, .app-shell__header h1, .catalog h1 {
  margin: 0;
  font-size: var(--display-size);
  font-weight: 600;
  letter-spacing: var(--display-track);
  line-height: 1.05;
}
.page-header__lede, .section-lede {
  margin-top: 10px;
  color: var(--color-text-muted);
  font-size: 14px;
}
.page-header__lede strong {
  color: var(--color-text);
  font-weight: 700;
}
.page-header__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-bottom: 4px;
}
.group {
  container-type: inline-size;
  display: grid;
  gap: 3px;
  padding: var(--group-pad);
  border: 1px solid #e9ebe7;
  border-radius: var(--radius-xl);
  background: #fff;
  box-shadow: var(--shadow-panel);
}
.group__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}
.group h2 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -.02em;
}
.group__fill {
  color: var(--color-text-faint);
  font-size: 12px;
  font-weight: 600;
}
.two-col {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
  gap: var(--group-gap);
  align-items: start;
}
.stack {
  display: grid;
  gap: var(--group-gap);
  align-content: start;
}
.settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--group-gap);
  align-items: start;
}
.setting {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 62px;
  padding: 0 var(--prop-px);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  color: inherit;
  text-decoration: none;
  transition: background-color .16s, border-color .16s;
}
.setting:hover {
  background: #f5f6f3;
  border-color: #e9ebe7;
}
.setting__icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  background: var(--color-surface-hover);
  color: var(--color-text-muted);
}
.setting strong {
  display: block;
  font-size: 13.5px;
  font-weight: 650;
}
.setting small {
  display: block;
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.setting__go {
  color: var(--color-text-faint);
}
.setting__go .icon {
  width: 16px;
  height: 16px;
}
.task {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 60px;
  padding: 8px var(--prop-px);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  transition: background-color .16s, border-color .16s;
}
.task:hover {
  background: #f5f6f3;
  border-color: #e9ebe7;
}
.task__check {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1.6px solid var(--color-border-strong);
  border-radius: 7px;
  background: #fff;
  color: transparent;
  cursor: pointer;
}
.task__check:hover {
  border-color: var(--color-text);
  color: var(--color-text-faint);
}
.task__check .icon {
  width: 14px;
  height: 14px;
}
.task--done .task__check {
  background: var(--color-text);
  border-color: var(--color-text);
  color: #fff;
  cursor: default;
}
.task__title {
  font-size: 14px;
  font-weight: 650;
  letter-spacing: -.01em;
  color: var(--color-text);
  text-decoration: none;
}
a.task__title:hover {
  text-decoration: underline;
}
.task--done .task__title {
  color: var(--color-text-faint);
  text-decoration: line-through;
}
.task__meta {
  margin-top: 3px;
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.task__side {
  display: flex;
  align-items: center;
  gap: 10px;
}
.task__when {
  color: var(--color-text-faint);
  font-size: 12.5px;
  font-weight: 600;
  white-space: nowrap;
}
.task--late .task__when {
  color: var(--color-danger);
}
.task__more {
  position: relative;
}
.task__more > summary {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  color: var(--color-text-faint);
  list-style: none;
  cursor: pointer;
}
.task__more > summary::-webkit-details-marker {
  display: none;
}
.task__more > summary:hover, .task__more[open] > summary {
  background: var(--color-surface-hover);
  color: var(--color-text);
}
.task__more-panel {
  position: absolute;
  right: 0;
  top: 36px;
  z-index: 6;
  display: grid;
  gap: 10px;
  width: 280px;
  padding: 16px;
  border: 1px solid #e9ebe7;
  border-radius: var(--radius-lg);
  background: #fff;
  box-shadow: var(--shadow-pop);
}
.task-empty {
  padding: 14px var(--prop-px);
  color: var(--color-text-muted);
  font-size: 13.5px;
}
.notice {
  display: grid;
  gap: 6px;
  padding: 15px 16px;
  border-radius: var(--radius-md);
  background: var(--color-surface-hover);
  color: inherit;
  text-decoration: none;
  transition: background-color .16s;
}
a.notice:hover {
  background: #e9ebe6;
}
.notice--pinned {
  background: var(--color-accent-soft);
}
a.notice--pinned:hover {
  background: #ddf7a8;
}
.notice__who {
  color: var(--color-text-muted);
  font-size: 12px;
  font-weight: 600;
}
.notice__who--late {
  color: var(--color-danger);
}
.notice p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.55;
}
.modal {
  margin: auto;
  width: min(640px, calc(100vw - 32px));
  max-height: calc(100dvh - 48px);
  padding: 0;
  border: 0;
  border-radius: var(--radius-xl);
  background: #fff;
  color: var(--color-text);
  box-shadow: 0 30px 80px -30px rgb(19 26 23 / 60%);
}
.modal::backdrop {
  background: rgb(19 26 23 / 42%);
  backdrop-filter: blur(2px);
}
.modal__body {
  display: grid;
  gap: 18px;
  padding: 28px;
}
.modal__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.modal__head h2 {
  margin: 0;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -.03em;
}
.modal__head p {
  margin: 4px 0 0;
  color: var(--color-text-muted);
  font-size: 13.5px;
}
.modal__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 12px;
  align-items: end;
}
.modal__form .field--wide {
  grid-column: 1 / -1;
}
.modal__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  grid-column: 1 / -1;
}
@media (max-width: 1100px) {
  .two-col, .settings-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 767px) {
  :root {
    --display-size: 34px;
    --page-pad-y: 24px;
    --page-pad-x: 16px;
  }
  .app-sidebar {
    padding: 8px 12px;
  }
  .app-sidebar__top {
    padding: 0;
  }
  .sidebar-toggle, .sidebar-label, .sidebar-tail .nav-link__label {
    display: none;
  }
  .sidebar-tail {
    margin: 0;
  }
  .modal__form {
    grid-template-columns: minmax(0, 1fr);
  }
}
.pipeline-board {
  gap: 18px;
  padding: var(--page-pad-y) var(--page-pad-x) 0;
}
.pipeline-header h1 {
  font-size: var(--display-size);
  font-weight: 600;
  letter-spacing: var(--display-track);
  line-height: 1.05;
}
.pipeline-header__lede {
  margin-top: 10px;
  font-size: 14px;
}
.pipeline-toolbar {
  gap: 8px;
  padding: 10px;
  border-color: var(--color-border);
  border-radius: 22px;
  box-shadow: none;
}
.pipeline-toolbar .search-field, .toggle-chip, .pipeline-toolbar .button {
  height: 44px;
  min-height: 44px;
}
.toggle-chip {
  padding: 0 16px;
  border-color: #dde1dc;
  font-weight: 600;
}
.toggle-chip:has(input:checked) {
  border-color: var(--color-text);
  background: var(--color-text);
  color: #fff;
}
.pipeline-columns {
  gap: 16px;
  padding-bottom: var(--page-pad-y);
}
.pipeline-column {
  padding: 14px;
  border: 1px solid #e9ebe7;
  border-radius: 24px;
  background: #f2f3f0;
}
.pipeline-column:not(:has(.pipeline-card)) {
  background: #f2f3f0;
}
.pipeline-column:has(.pipeline-column__total) {
  border-color: #dde1dc;
  background: #fff;
  box-shadow: 0 1px 2px rgb(19 26 23 / 4%), 0 18px 38px -26px rgb(19 26 23 / 55%);
}
.pipeline-column:has(.pipeline-column__total) .pipeline-column__progress span {
  background: var(--color-accent);
}
.pipeline-column__header {
  gap: 10px;
  padding: 4px 4px 14px;
}
.pipeline-stage-chip {
  gap: 7px;
  color: var(--pipeline-stage-color, var(--color-text));
  font-size: 11.5px;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.pipeline-stage-chip::before {
  width: 7px;
  height: 7px;
}
.pipeline-column__total {
  font-size: 16px;
  letter-spacing: -.02em;
}
.pipeline-column:has(.pipeline-column__total) .pipeline-column__total {
  font-size: 18px;
}
.pipeline-column__count {
  color: var(--color-text-muted);
  font-size: 12.5px;
  font-weight: 500;
}
.pipeline-column__progress {
  height: 4px;
  background: #e1e4e0;
}
.pipeline-cards {
  gap: 10px;
  padding: 0 2px 2px 0;
}
.pipeline-card {
  border-color: #e9ebe7;
  border-radius: 20px;
  box-shadow: var(--shadow-card);
  transition: box-shadow .18s cubic-bezier(.2, .8, .3, 1), transform .18s cubic-bezier(.2, .8, .3, 1), border-color .18s;
}
.pipeline-card:hover {
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-2px);
}
.pipeline-card__link {
  gap: 9px;
  padding: 16px 16px 12px;
}
.pipeline-card__head h3 {
  font-size: 14.5px;
  font-weight: 650;
  letter-spacing: -.015em;
}
.pipeline-card__where {
  font-size: 12.5px;
}
.pipeline-card__budget {
  margin: 0;
  font-size: 24px;
  letter-spacing: -.03em;
}
.pipeline-card__properties {
  display: grid;
  gap: 5px;
  margin: 0;
}
.pipeline-card__properties > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 12.5px;
}
.pipeline-card__properties dt {
  color: var(--color-text-faint);
}
.pipeline-card__properties dd {
  margin: 0;
  min-width: 0;
  overflow: hidden;
  color: var(--color-text-muted);
  font-weight: 600;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pipeline-card__footer {
  gap: 8px;
  margin: 0 16px;
  padding: 10px 0 12px;
  border-top: 1px solid #eff1ee;
}
.pipeline-card__avatar {
  border-radius: 50%;
  background: #e3e7e2;
  color: #3c4641;
  font-size: 10.5px;
}
.pipeline-card__age {
  color: var(--color-text-faint);
  font-size: 12px;
}
.pipeline-card__channels {
  margin-left: auto;
}
.pipeline-card__channels + .pipeline-card__move, .pipeline-card__channels ~ * .pipeline-card__move {
  margin-left: 4px;
}
.pipeline-column__add {
  min-height: 40px;
  margin: 10px 0 0;
  border: 1px dashed #cfd5cf;
  border-radius: 20px;
  background: transparent;
  font-weight: 600;
}
.pipeline-column__add:hover {
  border-color: var(--color-text-muted);
  background: var(--color-surface-hover);
}
.pipeline-dialog {
  border: 0;
  border-radius: var(--radius-xl);
  padding: 28px;
  box-shadow: 0 30px 80px -30px rgb(19 26 23 / 60%);
}
.pipeline-dialog select, .pipeline-dialog textarea {
  border-radius: 16px;
}
@media (min-width: 1440px) {
  :root {
    --list-width: 372px;
    --side-panel-width: 300px;
  }
}
.conversation-pane__header {
  padding: 22px 18px 12px;
}
.conversation-pane__header h1 {
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -.025em;
}
.conversation-pane__meta {
  margin-top: 5px;
  font-size: 12.5px;
}
.inbox-filters {
  grid-template-columns: minmax(0, 1fr) 132px 44px;
  gap: 7px;
  padding: 0 18px 12px;
}
.inbox-filters select {
  height: 44px;
  padding: 0 12px;
  border-color: var(--color-control-border);
  border-radius: 999px;
}
.icon-button--search {
  width: 44px;
  height: 44px;
}
.category-tabs {
  gap: 7px;
  padding: 4px 18px 14px;
  border-bottom: 0;
}
.category-tab {
  min-height: 32px;
  padding: 0 14px;
  border-color: #dde1dc;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
}
.category-tab--active, .category-tab--active:hover {
  background: var(--color-text);
  border-color: var(--color-text);
}
.category-tab__count {
  background: transparent;
  color: inherit;
  opacity: .65;
  font-size: 12px;
}
.category-tab--active .category-tab__count {
  background: transparent;
  color: #fff;
  opacity: .75;
}
.conversation-list {
  padding: 0 10px;
}
.conversation-list__item {
  margin-bottom: 2px;
  border-bottom: 0;
  border-radius: 16px;
}
.conversation-list__item:hover {
  background: var(--color-surface-hover);
}
.conversation-card {
  min-height: 72px;
  padding: 12px 12px 12px 40px;
}
.conversation-avatar {
  border-radius: 14px;
  background: #e3e7e2;
  color: #3c4641;
  font-size: 14px;
  font-weight: 700;
}
.conversation-card__heading strong {
  font-size: 14px;
  font-weight: 650;
}
.conversation-card__heading time {
  color: var(--color-text-faint);
}
.conversation-card--active, .conversation-list__item:has(.conversation-card--active) {
  background: var(--color-surface-hover);
  box-shadow: none;
}
.conversation-select {
  left: 14px;
  top: 36px;
  opacity: 0;
  transition: opacity .16s;
}
.conversation-list__item:hover .conversation-select, .conversation-select:has(input:checked), .conversation-select:has(input:focus-visible) {
  opacity: 1;
}
.status-pill {
  background: #eff1ee;
  color: #57605b;
  font-weight: 700;
}
.conversation-preview {
  background: var(--color-canvas);
}
.conversation-detail {
  background: var(--color-canvas);
}
.chat-header {
  min-height: 72px;
  padding: 14px 22px;
}
.chat-header h1 {
  font-size: 16px;
  font-weight: 650;
  letter-spacing: -.02em;
}
.message-stream {
  padding: 24px 22px;
  background-image: none;
}
.message {
  padding: 11px 15px;
  border-color: #e9ebe7;
  border-radius: 22px 22px 22px 6px;
  box-shadow: 0 1px 2px rgb(19 26 23 / 4%);
  font-size: 13.5px;
}
.message--outgoing {
  border-color: var(--color-outgoing-border);
  border-radius: 22px 22px 6px 22px;
  background: var(--color-outgoing);
}
.message-date {
  color: var(--color-text-faint);
}
.message-composer {
  padding: 14px 22px 18px;
}
.message-composer textarea {
  min-height: 78px;
  padding: 13px 16px;
  border-color: var(--color-control-border);
  border-radius: 24px;
  background: #fff;
}
.message-composer textarea:focus-visible {
  border-color: var(--color-focus);
  box-shadow: 0 0 0 3px rgb(44 107 232 / 16%);
}
.composer-actions button {
  min-height: 44px;
  padding: 0 22px;
  border-radius: 999px;
}
.attachment-button {
  border-radius: 999px;
}
.contact-panel {
  gap: 16px;
  padding: 20px 18px;
}
.negotiation-list__item {
  border-radius: 16px;
  background: #fff;
}
.conversation-detail__back {
  border-radius: 999px;
}
.contact-panel__classify-row {
  grid-template-columns: minmax(0, 1fr);
}
@media (max-width: 1279px) {
  .composer-hint {
    display: none;
  }
}
.tasks-section {
  gap: 8px;
}
.tasks-section .button .icon, .modal .button .icon {
  width: 15px;
  height: 15px;
}
.tasks-summary {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 13.5px;
}
.tasks-summary strong {
  color: var(--color-text);
}
.tasks-section__open {
  justify-self: start;
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-text);
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.modal__list {
  display: grid;
  gap: 3px;
  padding-top: 18px;
  border-top: 1px solid var(--color-border);
}
.modal__list h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}
.modal .task__more-panel {
  width: 300px;
}
.modal .task__more-panel form {
  display: grid;
  gap: 10px;
}
.field__optional {
  margin-left: 4px;
  color: var(--color-text-faint);
  font-weight: 500;
}
.page-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 16px;
  color: var(--color-text-muted);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}
.page-back:hover {
  color: var(--color-text);
}
.page-back .icon {
  width: 16px;
  height: 16px;
}
.automations-ui {
  display: grid;
  gap: var(--group-gap);
  max-width: 1000px;
  margin: 0;
}
.automations-ui > .page-back {
  margin-bottom: -6px;
  justify-self: start;
}
.automations-ui > .app-shell__header {
  margin-bottom: 8px;
}
.flow-row .flow-row__actions {
  display: flex;
  gap: 6px;
}
.flow-editor {
  display: grid;
  gap: var(--group-gap);
}
.flow-editor__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.flow-editor__grid .field--wide {
  grid-column: 1 / -1;
}
.flow-editor:has(#flow-trigger option[value="stage_entered"]:checked) [data-trigger-field]:not([data-trigger-field="stage_entered"]), .flow-editor:has(#flow-trigger option[value="category_entered"]:checked) [data-trigger-field]:not([data-trigger-field="category_entered"]), .flow-editor:has(#flow-trigger option[value="message_received"]:checked) [data-trigger-field], .flow-editor:has(#flow-trigger option[value="stalled"]:checked) [data-trigger-field]:not([data-trigger-field="stalled"]) {
  display: none;
}
.flow-steps {
  display: grid;
  gap: 10px;
}
.flow-step {
  display: grid;
  grid-template-columns: 170px 130px minmax(0, 1fr);
  gap: 12px;
  align-items: end;
  margin: 0;
  padding: 16px;
  border: 1px solid #e9ebe7;
  border-radius: var(--radius-lg);
  background: var(--color-surface-muted);
}
.flow-step legend {
  padding: 0 6px;
  color: var(--color-text-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.flow-steps__add {
  justify-self: start;
  margin-top: 8px;
}
.flow-step__actions {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: -6px 0 -4px;
}
.flow-step__remove {
  color: var(--color-text-muted);
}
.flow-step__remove:hover {
  color: var(--color-danger, #b42318);
}
.flow-step__removed-note, .flow-step__restore {
  display: none;
}
.flow-step--removed {
  border-style: dashed;
  background: transparent;
}
.flow-step--removed legend {
  text-decoration: line-through;
}
.flow-step--removed > .field {
  opacity: .45;
  pointer-events: none;
}
.flow-step--removed .flow-step__remove {
  display: none;
}
.flow-step--removed .flow-step__removed-note {
  display: inline;
  margin-right: auto;
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.flow-step--removed .flow-step__restore {
  display: inline-flex;
}
.form-bar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  padding-top: 4px;
}
.form-bar--flush {
  padding: 0;
}
.field input[readonly], .field select:disabled, .field input:disabled {
  background: var(--color-surface-muted);
  color: var(--color-text-muted);
}
@media (max-width: 767px) {
  .flow-editor__grid, .flow-step {
    grid-template-columns: minmax(0, 1fr);
  }
}
.negotiation-detail {
  display: grid;
  gap: var(--group-gap);
  max-width: 1180px;
  padding: var(--page-pad-y) var(--page-pad-x) 56px;
}
.negotiation-header {
  margin: 0;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--color-border);
}
.negotiation-header__back {
  margin-bottom: 16px;
  font-size: 13px;
}
.negotiation-header__name {
  display: flex;
  align-items: center;
  gap: 18px;
}
.negotiation-header__avatar, .contact-sheet__avatar {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  flex: none;
  border-radius: 14px;
  background: #e3e7e2;
  color: #3c4641;
  font-size: 19px;
  font-weight: 700;
}
.negotiation-header h1, .contact-sheet__identity h1 {
  font-size: var(--display-size);
  font-weight: 600;
  letter-spacing: var(--display-track);
  line-height: 1.05;
}
.negotiation-header__facts {
  margin: 10px 0 0 82px;
  gap: 8px;
}
.negotiation-header__stage {
  padding: 2px 10px;
  background: var(--color-accent-soft);
  color: var(--color-accent-ink);
  font-size: 12px;
}
.negotiation-header__dates {
  gap: 34px;
  margin: 18px 0 0 82px;
}
.negotiation-header__dates dt {
  color: var(--color-text-faint);
  font-size: 11px;
  letter-spacing: .08em;
}
.negotiation-header__dates dd {
  margin-top: 3px;
  font-size: 13.5px;
  font-weight: 600;
}
#negotiation-stage-control select {
  min-height: 44px;
  padding: 0 16px;
  border-color: var(--color-control-border);
  border-radius: 999px;
}
#negotiation-stage-control button {
  min-height: 44px;
  padding: 0 22px;
  border-radius: 999px;
}
.property-groups {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr));
  gap: var(--group-gap);
  align-items: start;
}
.property-group {
  container-type: inline-size;
  display: grid;
  gap: 3px;
  padding: var(--group-pad);
  border: 1px solid #e9ebe7;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-panel);
  overflow: visible;
}
.property-group__title {
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -.02em;
  text-transform: none;
  color: var(--color-text);
}
.property-group__fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 2px;
  background: none;
}
.property-field {
  container-type: inline-size;
  width: 100%;
  padding: 0;
  background: none;
}
.property-groups--compact {
  align-items: stretch;
}
.property-groups--compact .property-group {
  padding: 0;
  gap: 2px;
  border: 0;
  box-shadow: none;
}
.property-groups--compact .property-group__title {
  margin: 10px 0 4px;
  color: var(--color-text-muted);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.property-groups--compact .property-field__display {
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 0 30px 0 12px;
}
.property-groups--compact .property-field__value {
  text-align: right;
}
.property-field__display {
  grid-template-columns: minmax(0, 172px) minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 48px;
  padding: 0 36px 0 14px;
  border: 1px solid transparent;
  border-radius: 14px;
  transition: background-color .16s, border-color .16s;
}
.property-field__display:hover {
  background: #f5f6f3;
  border-color: #e9ebe7;
}
.property-field__pencil {
  right: 12px;
}
.property-field__label {
  color: var(--color-text-muted);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
}
.property-field__value {
  min-height: 0;
  font-size: 13.5px;
  font-weight: 650;
  letter-spacing: -.01em;
  overflow-wrap: anywhere;
}
.property-field--empty .property-field__value {
  color: var(--color-text-faint);
  font-size: 12.5px;
  font-style: normal;
  font-weight: 500;
}
.property-field__source {
  grid-column: 2;
  color: var(--color-text-faint);
  font-size: 12px;
}
.property-field__editor {
  padding: 12px 14px;
  border-radius: 16px;
  background: #f5f6f3;
}
.property-field__editor input, .property-field__editor select {
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
}
.property-field__editor textarea {
  border-radius: 16px;
}
.property-field--error .property-field__display {
  background: var(--color-danger-surface);
}
@container (max-width: 400px) {
  .property-field__display {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    padding-block: 9px;
  }
  .property-field__source {
    grid-column: 1;
  }
}
.apartment-links__list {
  display: grid;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.apartment-links__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
}
.apartment-links__item:hover {
  background: #f5f6f3;
}
.apartment-links__item a {
  font-weight: 650;
  text-decoration: none;
}
.negotiation-archive {
  margin: 0;
}
.records-timeline {
  max-width: none;
  padding: var(--group-pad);
  border-color: #e9ebe7;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-panel);
}
.records-timeline__header h2 {
  font-size: 16px;
  font-weight: 700;
}
.timeline-chip {
  min-height: 32px;
  padding: 0 14px;
  border-color: #dde1dc;
  font-size: 13px;
  font-weight: 600;
}
.timeline-chip[aria-pressed="true"], .timeline-chip[aria-pressed="true"]:hover {
  border-color: var(--color-text);
  background: var(--color-text);
}
.timeline-channel select {
  min-height: 32px;
  border-radius: 999px;
  padding: 0 12px;
}
.timeline-item__icon {
  width: 28px;
  height: 28px;
  margin-top: 0;
  border: 1px solid var(--color-border);
  background: #fff;
  color: var(--color-text-muted);
}
.timeline-item {
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 14px;
  border-bottom: 0;
  padding: 11px 0;
}
.timeline-item::before {
  left: 13px;
}
.contact-sheet__section {
  padding: var(--group-pad);
  border-color: #e9ebe7;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-panel);
}
.contact-sheet__section h2, .contact-sheet__section-title {
  font-size: 16px;
}
.settings-card-page {
  display: grid;
  gap: var(--group-gap);
  max-width: 720px;
}
.settings-card-page > .page-back {
  justify-self: start;
  margin-bottom: -6px;
}
.settings-card-page > .app-shell__header {
  margin-bottom: 0;
}
.reply-window-form {
  grid-template-columns: minmax(0, 220px) auto;
  justify-content: start;
  align-items: end;
  gap: 12px;
}
.reply-window-form .field {
  margin: 0;
}
.app-shell, .negotiation-detail, .contact-sheet, .settings-card-page {
  margin-inline: auto;
}
.apartment-gallery {
  max-width: 1240px;
}
.filterbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  padding: 10px;
  border: 1px solid #e9ebe7;
  border-radius: var(--radius-xl);
  background: #fff;
  box-shadow: var(--shadow-panel);
}
.filterbar .search-field {
  flex: 1;
  min-width: 240px;
}
.select-pill {
  position: relative;
  display: inline-flex;
}
.select-pill select {
  height: 44px;
  padding: 0 36px 0 16px;
  border: 1px solid #dde1dc;
  border-radius: 999px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2357605b' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;
  color: var(--color-text);
  font: inherit;
  font-size: 13.5px;
  font-weight: 600;
  appearance: none;
  cursor: pointer;
}
.select-pill select:hover {
  border-color: var(--color-border-strong);
}
.select-pill select:focus-visible {
  outline: 0;
  border-color: var(--color-focus);
  box-shadow: 0 0 0 3px rgb(44 107 232 / 16%);
}
.select-pill--small select {
  height: 36px;
  font-size: 13px;
}
.filterbar .toggle-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 44px;
  border: 1px solid #dde1dc;
  border-radius: 999px;
  font-size: 13.5px;
  cursor: pointer;
}
.filterbar .toggle-chip input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 0 14px;
  border: 1px solid #dde1dc;
  border-radius: 999px;
  background: #fff;
  color: var(--color-text);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}
.pill .icon {
  width: 13px;
  height: 13px;
}
.pill--on {
  border-color: var(--color-text);
  background: var(--color-text);
  color: #fff;
}
.pill:hover {
  border-color: var(--color-border-strong);
}
.pill--on:hover {
  background: #2a3530;
}
.result-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 26px 0 14px;
}
.result-head p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 13.5px;
}
.result-head strong {
  color: var(--color-text);
  font-weight: 700;
}
.result-head form {
  margin: 0;
}
.apt-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--group-gap, 18px);
}
.apt-card {
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  border: 1px solid #e9ebe7;
  border-radius: 24px;
  background: #fff;
  box-shadow: var(--shadow-card);
  color: inherit;
  text-decoration: none;
  transition: box-shadow .18s cubic-bezier(.2, .8, .3, 1), transform .18s cubic-bezier(.2, .8, .3, 1);
}
.apt-card:hover {
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-2px);
}
.apt-card:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}
.apt-card--archived {
  opacity: .7;
}
.apt-card__shot {
  position: relative;
  height: 180px;
  background: #eceee9;
}
.apt-card__shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.apt-card__noshot {
  display: grid;
  place-items: center;
  height: 100%;
  color: #a3aca6;
}
.apt-card__noshot .icon {
  width: 34px;
  height: 34px;
}
.apt-card__code, .apt-card__count, .apt-card__flag {
  position: absolute;
  top: 12px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .02em;
}
.apt-card__code {
  left: 12px;
  background: rgb(19 26 23 / 82%);
  color: #fff;
}
.apt-card__count {
  right: 12px;
  background: rgb(255 255 255 / 92%);
  color: var(--color-text);
  font-weight: 600;
}
.apt-card__flag {
  left: 12px;
  top: auto;
  bottom: 12px;
  background: var(--color-accent);
  color: var(--color-text);
}
.apt-card__body {
  display: grid;
  align-content: start;
  gap: 9px;
  padding: 16px;
}
.apt-card__price {
  font-size: 21px;
  font-weight: 700;
  letter-spacing: -.03em;
}
.apt-card__price small {
  display: block;
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 0;
}
.apt-card__where {
  font-size: 13.5px;
  font-weight: 600;
}
.apt-card__specs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.spec {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: #f0f2ee;
  color: #4b544f;
  font-size: 12px;
  font-weight: 600;
}
.apt-card__foot {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-top: 1px solid #eef0ec;
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.apt-card__open {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  color: var(--color-text);
  font-weight: 600;
}
.apt-card__open .icon {
  width: 14px;
  height: 14px;
  transition: transform .16s;
}
.apt-card:hover .apt-card__open .icon {
  transform: translateX(2px);
}
.apt-pager {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 28px 0 8px;
}
.apartment-link-dialog {
  width: min(720px, calc(100vw - 32px));
}
.apartment-link-dialog .modal__body {
  max-height: calc(100dvh - 48px);
  overflow: auto;
}
.apartment-link-dialog__search {
  width: 100%;
}
.apartment-link-dialog__results {
  min-height: 120px;
}
.link-results {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.link-result {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 8px 10px 8px 8px;
  border: 1px solid #eceee9;
  border-radius: 18px;
  background: #fff;
}
.link-result:hover {
  border-color: #d8ddd7;
  background: #fafbf8;
}
.link-result form {
  margin: 0;
}
.link-result__shot {
  display: grid;
  place-items: center;
  width: 76px;
  height: 58px;
  overflow: hidden;
  border-radius: 12px;
  background: #eceee9;
  color: #a3aca6;
}
.link-result__shot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.link-result__body {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.link-result__top {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.link-result__top strong {
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
.link-result__price {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.02em;
}
.link-result__where {
  overflow: hidden;
  font-size: 13.5px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.link-result__specs {
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.link-results__more {
  margin: 10px 2px 0;
  color: var(--color-text-muted);
  font-size: 12.5px;
}
.apartment-link-dialog__new {
  padding-top: 14px;
  border-top: 1px solid var(--color-border);
}
.apartment-link-dialog__new summary {
  color: var(--color-text-muted);
  font-size: 13.5px;
  font-weight: 600;
  cursor: pointer;
}
.apartment-link-dialog__create {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  margin-top: 12px;
}
.apartment-link-dialog__create .field {
  flex: 1;
  margin: 0;
}
@media (max-width: 767px) {
  .link-result {
    grid-template-columns: 60px minmax(0, 1fr);
  }
  .link-result form {
    grid-column: 1 / -1;
  }
  .link-result__shot {
    width: 60px;
    height: 48px;
  }
}
.option-menu {
  display: grid;
  gap: 2px;
  max-height: 240px;
  margin-top: 6px;
  overflow-y: auto;
}
.option-menu:empty {
  display: none;
}
.option-menu {
  padding: 6px;
  border: 1px solid #e3e6e1;
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow-pop);
}
.option-menu > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 38px;
  padding: 0 12px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--color-text);
  font: inherit;
  font-size: 13.5px;
  text-align: left;
  cursor: pointer;
}
.option-menu > button:hover, .option-menu > button[aria-selected="true"] {
  background: #f1f3ef;
}
.option-menu > button.is-chosen {
  font-weight: 700;
}
.option-menu > button.is-chosen::after {
  content: "✓";
  color: var(--color-text);
}
.negotiation-header__contact {
  color: inherit;
  text-decoration: none;
}
.negotiation-header__contact:hover {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.modal[data-mode="new"] .modal__list, .modal[data-mode="list"] .modal__form, .modal[data-mode="list"] .alert--success {
  display: none;
}
.modal[data-mode="new"] .modal__title--list, .modal[data-mode="list"] .modal__title--new {
  display: none;
}
.modal[data-mode="list"] .modal__list {
  padding-top: 0;
  border-top: 0;
}
.modal__list .group__head {
  align-items: center;
}
.modal__list-new {
  margin-left: 12px;
}
.link-button {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}
[data-option-picker] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
[data-option-picker] .property-field__editor-label {
  flex-basis: 100%;
  order: -1;
}
[data-option-picker] [data-option-input] {
  flex: 1 1 100%;
  min-width: 0;
}
[data-option-picker] .option-menu {
  flex-basis: 100%;
}
[data-option-picker] .property-chip {
  margin: 0;
}
@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-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;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
  initial-value: rotateX(0);
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
  initial-value: rotateY(0);
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
  initial-value: rotateZ(0);
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
  initial-value: skewX(0);
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
  initial-value: skewY(0);
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  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-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-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-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-size {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-layout {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-paint {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-style {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
