/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme {
  :root, :host {
    --tw-color-red-500: oklch(63.7% 0.237 25.331);
    --tw-color-gray-200: oklch(92.8% 0.006 264.531);
    --tw-color-black: #000;
    --tw-color-white: #fff;
    --tw-spacing: 0.25rem;
    --tw-text-xs: var(--type-ramp-minus-2-font-size);
    --tw-text-xs--line-height: calc(1 / 0.75);
    --tw-text-lg: var(--type-ramp-plus-1-font-size);
    --tw-text-lg--line-height: calc(1.75 / 1.125);
    --tw-text-xl: var(--type-ramp-plus-2-font-size);
    --tw-text-xl--line-height: calc(1.75 / 1.25);
    --tw-text-2xl: var(--type-ramp-plus-3-font-size);
    --tw-text-2xl--line-height: calc(2 / 1.5);
    --tw-font-weight-normal: 400;
    --tw-font-weight-semibold: 600;
    --tw-font-weight-bold: 700;
    --tw-radius-md: 0.375rem;
    --tw-radius-lg: 0.5rem;
    --tw-radius-xl: 0.75rem;
    --tw-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --tw-default-transition-duration: 150ms;
    --tw-default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  }
}
@layer utilities {
  .tw\:col-span-7 {
    grid-column: span 7 / span 7;
  }
  .tw\:row-span-2 {
    grid-row: span 2 / span 2;
  }
  .tw\:m-0 {
    margin: calc(var(--tw-spacing) * 0);
  }
  .tw\:mb-0 {
    margin-bottom: calc(var(--tw-spacing) * 0);
  }
  .tw\:mb-1 {
    margin-bottom: calc(var(--tw-spacing) * 1);
  }
  .tw\:mb-2 {
    margin-bottom: calc(var(--tw-spacing) * 2);
  }
  .tw\:mb-4 {
    margin-bottom: calc(var(--tw-spacing) * 4);
  }
  .tw\:ml-2 {
    margin-left: calc(var(--tw-spacing) * 2);
  }
  .tw\:ml-auto {
    margin-left: auto;
  }
  .tw\:flex {
    display: flex;
  }
  .tw\:grid {
    display: grid;
  }
  .tw\:h-full {
    height: 100%;
  }
  .tw\:max-h-\[400px\] {
    max-height: 400px;
  }
  .tw\:min-h-\[300px\] {
    min-height: 300px;
  }
  .tw\:w-full {
    width: 100%;
  }
  .tw\:max-w-full {
    max-width: 100%;
  }
  .tw\:min-w-0 {
    min-width: calc(var(--tw-spacing) * 0);
  }
  .tw\:cursor-pointer {
    cursor: pointer;
  }
  .tw\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .tw\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tw\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .tw\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .tw\:flex-col {
    flex-direction: column;
  }
  .tw\:flex-row {
    flex-direction: row;
  }
  .tw\:flex-wrap {
    flex-wrap: wrap;
  }
  .tw\:items-baseline {
    align-items: baseline;
  }
  .tw\:items-center {
    align-items: center;
  }
  .tw\:items-stretch {
    align-items: stretch;
  }
  .tw\:justify-between {
    justify-content: space-between;
  }
  .tw\:justify-center {
    justify-content: center;
  }
  .tw\:justify-end {
    justify-content: flex-end;
  }
  .tw\:justify-start {
    justify-content: flex-start;
  }
  .tw\:gap-1 {
    gap: calc(var(--tw-spacing) * 1);
  }
  .tw\:gap-2 {
    gap: calc(var(--tw-spacing) * 2);
  }
  .tw\:gap-3 {
    gap: calc(var(--tw-spacing) * 3);
  }
  .tw\:gap-4 {
    gap: calc(var(--tw-spacing) * 4);
  }
  .tw\:gap-6 {
    gap: calc(var(--tw-spacing) * 6);
  }
  .tw\:gap-y-2 {
    row-gap: calc(var(--tw-spacing) * 2);
  }
  .tw\:overflow-auto {
    overflow: auto;
  }
  .tw\:overflow-hidden {
    overflow: hidden;
  }
  .tw\:overflow-x-auto {
    overflow-x: auto;
  }
  .tw\:rounded-lg {
    border-radius: var(--tw-radius-lg);
  }
  .tw\:rounded-md {
    border-radius: var(--tw-radius-md);
  }
  .tw\:rounded-xl {
    border-radius: var(--tw-radius-xl);
  }
  .tw\:rounded-t-xl {
    border-top-left-radius: var(--tw-radius-xl);
    border-top-right-radius: var(--tw-radius-xl);
  }
  .tw\:rounded-l-xl {
    border-top-left-radius: var(--tw-radius-xl);
    border-bottom-left-radius: var(--tw-radius-xl);
  }
  .tw\:border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .tw\:border-1 {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .tw\:border-\[\#E5E7EB\] {
    border-color: #E5E7EB;
  }
  .tw\:border-gray-200 {
    border-color: var(--tw-color-gray-200);
  }
  .tw\:border-transparent {
    border-color: transparent;
  }
  .tw\:bg-\(--one-background\) {
    background-color: var(--one-background);
  }
  .tw\:bg-\[\#E8F6FC\] {
    background-color: #E8F6FC;
  }
  .tw\:bg-\[\#FFFFFF\] {
    background-color: #FFFFFF;
  }
  .tw\:bg-\[\#e8f6fc\] {
    background-color: #e8f6fc;
  }
  .tw\:p-2 {
    padding: calc(var(--tw-spacing) * 2);
  }
  .tw\:p-4 {
    padding: calc(var(--tw-spacing) * 4);
  }
  .tw\:p-6 {
    padding: calc(var(--tw-spacing) * 6);
  }
  .tw\:text-2xl {
    font-size: var(--tw-text-2xl);
    line-height: var(--tw-leading, var(--tw-text-2xl--line-height));
  }
  .tw\:text-lg {
    font-size: var(--tw-text-lg);
    line-height: var(--tw-leading, var(--tw-text-lg--line-height));
  }
  .tw\:text-xl {
    font-size: var(--tw-text-xl);
    line-height: var(--tw-leading, var(--tw-text-xl--line-height));
  }
  .tw\:text-xs {
    font-size: var(--tw-text-xs);
    line-height: var(--tw-leading, var(--tw-text-xs--line-height));
  }
  .tw\:font-bold {
    --tw-font-weight: var(--tw-font-weight-bold);
    font-weight: var(--tw-font-weight-bold);
  }
  .tw\:font-normal {
    --tw-font-weight: var(--tw-font-weight-normal);
    font-weight: var(--tw-font-weight-normal);
  }
  .tw\:font-semibold {
    --tw-font-weight: var(--tw-font-weight-semibold);
    font-weight: var(--tw-font-weight-semibold);
  }
  .tw\:text-\[\#3BAFDA\] {
    color: #3BAFDA;
  }
  .tw\:text-\[\#3bafda\] {
    color: #3bafda;
  }
  .tw\:text-red-500 {
    color: var(--tw-color-red-500);
  }
  .tw\:text-white {
    color: var(--tw-color-white);
  }
  .tw\:shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px 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);
  }
  .tw\:shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px 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);
  }
  .tw\:transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--tw-default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--tw-default-transition-duration));
  }
  .tw\:duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .tw\:ease-in-out {
    --tw-ease: var(--tw-ease-in-out);
    transition-timing-function: var(--tw-ease-in-out);
  }
  .tw\:group-hover\:text-black {
    &:is(:where(.tw\:group):hover *) {
      @media (hover: hover) {
        color: var(--tw-color-black);
      }
    }
  }
  .tw\:hover\:bg-\(--one-hover\) {
    &:hover {
      @media (hover: hover) {
        background-color: var(--one-hover);
      }
    }
  }
  .tw\:hover\:bg-\[\#F9FAFB\] {
    &:hover {
      @media (hover: hover) {
        background-color: #F9FAFB;
      }
    }
  }
  .tw\:hover\:bg-\[\#dcfce7\] {
    &:hover {
      @media (hover: hover) {
        background-color: #dcfce7;
      }
    }
  }
  .tw\:hover\:text-\[\#1e7d41\] {
    &:hover {
      @media (hover: hover) {
        color: #1e7d41;
      }
    }
  }
  .tw\:md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .tw\:md\:col-span-5 {
    @media (width >= 48rem) {
      grid-column: span 5 / span 5;
    }
  }
  .tw\:md\:row-span-3 {
    @media (width >= 48rem) {
      grid-row: span 3 / span 3;
    }
  }
  .tw\:md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .tw\:lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .tw\:xl\:col-span-1 {
    @media (width >= 80rem) {
      grid-column: span 1 / span 1;
    }
  }
  .tw\:xl\:col-span-2 {
    @media (width >= 80rem) {
      grid-column: span 2 / span 2;
    }
  }
  .tw\:xl\:col-span-3 {
    @media (width >= 80rem) {
      grid-column: span 3 / span 3;
    }
  }
  .tw\:xl\:col-span-4 {
    @media (width >= 80rem) {
      grid-column: span 4 / span 4;
    }
  }
  .tw\:xl\:col-span-6 {
    @media (width >= 80rem) {
      grid-column: span 6 / span 6;
    }
  }
  .tw\:xl\:row-span-2 {
    @media (width >= 80rem) {
      grid-row: span 2 / span 2;
    }
  }
}
html:root {
  --assistant-lilac: #b283ff;
  --assistant-lilac-hover: #9b6ae8;
  --assistant-teal: #3bafda;
  --assistant-ink: #111111;
  --assistant-muted: #6b7280;
  --assistant-border: #e5e7eb;
  --assistant-bg: #f9fafb;
  --accent-base-color: #222222;
  --accent-fill-rest: #444444;
  --accent-fill-hover: #666666;
  --accent-fill-active: #888888;
  --accent-fill-focus: #000000;
  --accent-stroke-control-rest: #444444;
  --accent-stroke-control-hover: #666666;
  --accent-stroke-control-active: #888888;
  --accent-stroke-control-focus: #000000;
  --neutral-fill-stealth-rest: #ffffff;
  --neutral-foreground-rest: #444444;
  --neutral-foreground-hover: #666666;
  --neutral-foreground-active: #888888;
  --neutral-foreground-focus: #000000;
  --neutral-foreground-hint: #000000;
  --accent-foreground-rest: #444444;
  --accent-foreground-hover: #666666;
  --accent-foreground-active: #888888;
  --accent-foreground-focus: #000000;
}
fluent-switch, fluent-tree-item, fluent-option, fluent-button, fluent-card {
  --accent-base-color: #222222;
  --accent-fill-rest: #444444;
  --accent-fill-hover: #666666;
  --accent-fill-active: #888888;
  --accent-fill-focus: #000000;
  --accent-stroke-control-rest: #444444;
  --accent-stroke-control-hover: #666666;
  --accent-stroke-control-active: #888888;
  --accent-stroke-control-focus: #000000;
  --neutral-fill-stealth-rest: #ffffff;
  --neutral-foreground-rest: #444444;
  --neutral-foreground-hover: #666666;
  --neutral-foreground-active: #888888;
  --neutral-foreground-focus: #000000;
  --neutral-foreground-hint: #000000;
  --accent-foreground-rest: #444444;
  --accent-foreground-hover: #666666;
  --accent-foreground-active: #888888;
  --accent-foreground-focus: #000000;
}
div.layout > div.main > div.body-content {
  overflow-y: hidden;
}
body {
  --body-font: "Segoe UI Variable", "Segoe UI", sans-serif;
  font-family: var(--body-font);
  font-size: var(--type-ramp-base-font-size);
  line-height: var(--type-ramp-base-line-height);
  margin: 0;
}
.main {
  min-height: calc(100dvh - 86px);
  color: var(--neutral-foreground-rest);
  align-items: stretch !important;
}
.doctor-patient-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 1rem;
  align-items: center;
}
.doctor-patient-summary {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.5rem;
  align-items: start;
}
.doctor-patient-summary-left {
  display: flex;
  flex-direction: column;
}
.body-content {
  align-self: stretch;
  height: calc(100dvh - 86px) !important;
  display: flex;
}
.content {
  padding: 0.5rem 1.5rem;
  align-self: stretch !important;
  width: 100%;
}
.manage {
  width: 100dvw;
}
footer {
  background: var(--neutral-layer-4);
  color: var(--neutral-foreground-rest);
  align-items: center;
  padding: 10px 10px;
}
footer a {
  color: var(--neutral-foreground-rest);
  text-decoration: none;
}
footer a:focus {
  outline: 1px dashed;
  outline-offset: 3px;
}
footer a:hover {
  text-decoration: underline;
}
.alert {
  border: 1px dashed var(--accent-fill-rest);
  padding: 5px;
  margin: 10px 0;
}
.alert-danger {
  border: 1px dashed var(--error);
}
.alert-success {
  border: 1px dashed var(--success);
}
.alert-warning {
  border: 1px dashed var(--warning);
}
#blazor-error-ui {
  background: lightyellow;
  bottom: 0;
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  padding: 0.6rem 1.25rem 0.7rem 1.25rem;
  position: fixed;
  width: 100%;
  z-index: 1000;
  margin: 20px 0;
}
#blazor-error-ui .dismiss {
  cursor: pointer;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem;
}
.blazor-error-boundary {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
  padding: 1rem 1rem 1rem 3.7rem;
  color: white;
}
.blazor-error-boundary::before {
  content: "An error has occurred. ";
}
.loading-progress {
  position: relative;
  display: block;
  width: 8rem;
  height: 8rem;
  margin: 20vh auto 1rem auto;
}
.loading-progress circle {
  fill: none;
  stroke: #e0e0e0;
  stroke-width: 0.6rem;
  transform-origin: 50% 50%;
  transform: rotate(-90deg);
}
.loading-progress circle:last-child {
  stroke: #1b6ec2;
  stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
  transition: stroke-dasharray 0.05s ease-in-out;
}
.loading-progress-text {
  position: absolute;
  text-align: center;
  font-weight: bold;
  inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}
.loading-progress-text:after {
  content: var(--blazor-load-percentage-text, "Loading");
}
code {
  color: #c02d76;
}
@media (max-width: 600px) {
  .header-gutters {
    margin: 0.5rem 3rem 0.5rem 1.5rem !important;
  }
  [dir="rtl"] .header-gutters {
    margin: 0.5rem 1.5rem 0.5rem 3rem !important;
  }
  .main {
    flex-direction: column !important;
    row-gap: 0 !important;
  }
  nav.sitenav {
    width: 100%;
    height: 100%;
  }
  #main-menu {
    width: 100% !important;
  }
  #main-menu > div:first-child:is(.expander) {
    display: none;
  }
  .navmenu {
    width: 100%;
  }
  #navmenu-toggle {
    appearance: none;
  }
  #navmenu-toggle ~ nav {
    display: none;
  }
  #navmenu-toggle:checked ~ nav {
    display: block;
  }
  .navmenu-icon {
    cursor: pointer;
    z-index: 10;
    display: block;
    position: absolute;
    top: 15px;
    left: unset;
    right: 20px;
    width: 20px;
    height: 20px;
    border: none;
  }
  [dir="rtl"] .navmenu-icon {
    left: 20px;
    right: unset;
  }
}
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
table td, table th {
  padding: var(--spacingVerticalS) var(--spacingHorizontalM);
  text-align: left;
  vertical-align: middle;
  border-bottom: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);
}
@layer components {
  .app-page {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 18px;
    padding: 10px 4px 22px;
    color: var(--assistant-ink);
  }
  .app-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .app-heading > span {
    color: var(--assistant-teal);
    font-size: 13px;
    font-weight: 700;
  }
  .app-heading h1 {
    margin: 0;
    color: var(--assistant-ink);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
  }
  .app-card {
    border: 1px solid var(--assistant-border);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(17, 17, 17, 0.05);
    overflow: hidden;
  }
  .app-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--assistant-border);
    background: #e8f6fc;
  }
  .search-input {
    padding: 8px 12px;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    font-size: 0.9rem;
    width: 200px;
    max-width: 100%;
  }
  .email-check-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
  }
  .app-state {
    display: flex;
    width: fit-content;
    max-width: 100%;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    color: var(--assistant-muted);
  }
  .app-state p {
    margin: 0;
  }
  .app-state strong {
    color: var(--assistant-ink);
  }
  .app-empty {
    padding: 28px;
    color: var(--assistant-muted);
  }
  .app-empty strong {
    display: block;
    color: var(--assistant-ink);
    margin-bottom: 4px;
  }
  .app-empty p {
    margin: 0;
  }
  .calendar-week {
    display: flex;
    flex-direction: column;
  }
  .calendar-week-header, .calendar-week-row {
    display: grid;
    grid-template-columns: 50px repeat(7, 1fr);
    border-bottom: 1px solid var(--assistant-border);
  }
  .calendar-week-row:last-child {
    border-bottom: none;
  }
  .calendar-week-header {
    font-size: 12px;
    font-weight: 700;
    color: var(--assistant-muted);
    padding: 8px 0;
    background: #e8f6fc;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .calendar-week-header > div {
    padding: 0 10px;
  }
  .calendar-slot-time {
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 600;
    color: var(--assistant-muted);
    white-space: nowrap;
  }
  .calendar-slot {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    font-size: 12px;
    border-left: 1px solid var(--assistant-border);
    overflow: hidden;
  }
  .calendar-slot-available {
    background: #f0f6fb;
    color: var(--assistant-muted);
  }
  .calendar-slot-booked {
    background: #c7e0f4;
    color: #004578;
    font-weight: 600;
  }
  .calendar-slot-pending {
    background: #fefce8;
    color: #854d0e;
    font-weight: 600;
  }
  .calendar-slot-unavailable {
    background: #c8c6c4;
    color: #605e5c;
  }
  .calendar-slot-actions {
    display: flex;
    gap: 4px;
    margin-left: auto;
    flex-shrink: 0;
  }
  .calendar-slot-btn {
    border: none;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
    line-height: 1;
    white-space: nowrap;
  }
  .calendar-slot-btn-accept {
    background: #107c10;
    color: #fff;
  }
  .calendar-slot-btn-accept:hover {
    background: #fecaca;
  }
  .calendar-slot-btn-reject {
    background: #a4262c;
    color: #fff;
  }
  .calendar-slot-btn-reject:hover {
    background: #fecaca;
  }
  .app-list {
    display: flex;
    flex-direction: column;
  }
  .app-list-row {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    gap: 16px;
    align-items: center;
    border: 0;
    border-bottom: 1px solid var(--assistant-border);
    background: #ffffff;
    color: var(--assistant-muted);
    cursor: pointer;
    font: inherit;
    padding: 16px 18px;
    text-align: left;
    transition: background-color 140ms ease, box-shadow 140ms ease;
  }
  .app-list-row:last-child {
    border-bottom: 0;
  }
  .app-list-row:hover {
    background: var(--assistant-bg);
    box-shadow: inset 4px 0 0 var(--assistant-lilac);
  }
  .app-avatar {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: linear-gradient(140deg, var(--assistant-lilac), var(--assistant-teal));
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
  }
  .app-avatar-sm {
    width: 42px;
    height: 42px;
  }
  .app-avatar-md {
    width: 56px;
    height: 56px;
  }
  .app-back-btn {
    border: 0;
    background: transparent;
    color: var(--assistant-teal);
    cursor: pointer;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    padding: 0;
  }
  .app-back-btn:hover {
    text-decoration: underline;
  }
  .app-action {
    color: var(--assistant-lilac);
    font-weight: 700;
    white-space: nowrap;
  }
  .app-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    color: white;
    font-size: 13px;
    font-weight: 700;
    padding: 5px 9px;
  }
  .app-badge-danger {
    background: #EF4444;
  }
  .app-badge-info {
    background: #1b82d6;
  }
  .app-status {
    border-radius: 999px;
    max-width: fit-content;
    background: #f3f4f6;
    color: #4b5563;
    font-size: 13px;
    font-weight: 700;
    padding: 6px 10px;
    white-space: nowrap;
  }
  .app-status.is-active {
    background: #dff3fb;
    color: #0f6f8f;
  }
  .app-status.is-completed {
    background: #dcfce7;
    color: #15803d;
  }
  .app-status.is-pending {
    background: #fef3c7;
    color: #92400e;
  }
  .app-detail-shell {
    display: grid;
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
  }
  .app-profile-header {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 18px 20px;
  }
  .app-profile-header h2 {
    margin: 0;
    color: var(--assistant-ink);
  }
  .app-profile-header p, .app-profile-header > div > span {
    margin: 4px 0 0;
    color: var(--assistant-muted);
  }
  .app-profile-details {
    display: flex;
    flex-direction: column;
  }
  .app-profile-details > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
    border-bottom: 1px solid var(--assistant-border);
    padding: 16px 20px;
  }
  .app-profile-details > div:last-child {
    border-bottom: 0;
  }
  .app-profile-details span {
    color: var(--assistant-muted);
    font-size: 13px;
  }
  .app-profile-details strong {
    color: var(--assistant-ink);
    overflow-wrap: anywhere;
  }
  @media (max-width: 920px) {
    .app-detail-shell {
      grid-template-columns: minmax(0, 1fr);
    }
  }
}
.sidebar {
  display: flex;
  flex-direction: column;
  width: 190px;
  min-width: 190px;
  background: #f2f3f7;
}
.sidebar-brand {
  display: flex;
  justify-content: center;
  padding-block: 20px;
  align-items: center;
  gap: 10px;
  background-color: #b283ff;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
  white-space: nowrap;
  cursor: pointer;
  transition: 0.2s all;
  &:hover {
    background-color: #bfa0ff;
  }
}
.sidebar-brand svg {
  flex-shrink: 0;
}
.sidebar-nav {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 10px 0;
}
.sidebar-badge {
  margin-left: auto;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 9999px;
  background: #ef4444;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sidebar-link {
  display: flex !important;
  align-items: center;
  gap: 10px;
  padding: 11px 20px;
  border-left: 3px solid transparent;
  color: #4b5563;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none !important;
  transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}
.sidebar-link:hover {
  background: rgba(0, 0, 0, 0.045);
  color: var(--assistant-ink);
  border-left-color: rgba(178, 131, 255, 0.4);
}
.sidebar-link.active {
  border-left-color: var(--assistant-lilac);
  background: rgba(178, 131, 255, 0.08);
  color: var(--assistant-ink);
  font-weight: 600;
}
.sidebar-footer {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 0 12px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.sidebar-footer-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  color: #6b7280;
  font-size: 13px;
  cursor: default;
}
.sidebar-footer-dot {
  display: inline-block;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border-radius: 3px;
}
.sidebar-footer-dot-contact {
  background: var(--assistant-lilac);
}
.sidebar-footer-dot-logout {
  background: var(--assistant-teal);
  border-radius: 999px;
}
@media (max-width: 600px) {
  .sidebar {
    width: 100%;
    min-width: 0;
  }
  .sidebar-nav {
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0;
  }
  .sidebar-link {
    flex: 1;
    justify-content: center;
    border-left: 0;
    border-bottom: 3px solid transparent;
    padding: 12px 10px;
  }
  .sidebar-link:hover, .sidebar-link.active {
    border-left-color: transparent;
    border-bottom-color: var(--assistant-lilac);
  }
  .sidebar-footer {
    display: none;
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-duration: initial;
      --tw-ease: initial;
    }
  }
}
