/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties;
@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-100: oklch(93.6% 0.032 17.717);
    --color-slate-200: oklch(92.9% 0.013 255.508);
    --color-slate-300: oklch(86.9% 0.022 252.894);
    --color-slate-900: oklch(20.8% 0.042 265.755);
    --color-slate-950: oklch(12.9% 0.042 264.695);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --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);
    --color-app-bg: #F6F8FC;
    --color-app-panel: #FFFFFF;
    --color-app-surface: #FFFFFF;
    --color-app-surface-raised: #F9FBFE;
    --color-app-surface-soft: #EEF2F7;
    --color-app-surface-row: #FFFFFF;
    --color-app-surface-hover: #F6F8FC;
    --color-app-surface-active: #E9EDFF;
    --color-app-input: #FFFFFF;
    --color-app-input-focus: #FFFFFF;
    --color-app-border: #DDE5EF;
    --color-app-border-soft: #EAF0F7;
    --color-app-border-strong: #C8D2E0;
    --color-app-border-hover: #A5B4FC;
    --color-app-text: #0F172A;
    --color-app-muted: #64748B;
    --color-app-subtle: #94A3B8;
    --color-shell-bg: #111827;
    --color-shell-surface: #182235;
    --color-shell-surface-hover: #202B3F;
    --color-shell-surface-active: #263352;
    --color-shell-border: #243044;
    --color-shell-text: #F8FAFC;
    --color-shell-muted: #A8B3C7;
    --color-shell-subtle: #7D8AA0;
    --color-brand-100: #E9EDFF;
    --color-brand-200: #D6DEFF;
    --color-brand-300: #B8C4FF;
    --color-brand-400: #8EA0FF;
    --color-brand-600: #5147E8;
    --color-brand-700: #4237C8;
    --color-app-primary: #5147E8;
    --color-app-primary-contrast: #FFFFFF;
    --color-app-primary-hover: #4237C8;
    --color-app-primary-soft: #F5F7FF;
    --color-app-primary-text: #4237C8;
    --color-app-success-bg: #D1FADF;
    --color-app-success-text: #05603A;
    --color-app-success-border: #75E0A7;
    --color-app-row-success: #DCFCE7;
    --color-app-row-success-hover: #BBF7D0;
    --color-app-row-success-border: #86EFAC;
    --color-app-warning-bg: #FFFAEB;
    --color-app-warning-text: #B54708;
    --color-app-warning-border: #FEDF89;
    --color-app-row-warning: #FFFBEB;
    --color-app-row-warning-hover: #FEF3C7;
    --color-app-row-warning-border: #FDE68A;
    --color-app-row-warning-text: #92400E;
    --color-app-danger-bg: #FEF3F2;
    --color-app-danger-text: #B42318;
    --color-app-danger-border: #FECDCA;
  }
}
@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: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .fixed {
    position: fixed;
  }
  .static {
    position: static;
  }
  .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;
    }
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .\!table {
    display: table !important;
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .min-h-0 {
    min-height: calc(var(--spacing) * 0);
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .flex-1 {
    flex: 1;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .resize {
    resize: both;
  }
  .columns-3 {
    columns: 3;
  }
  .grid-rows-\[auto_minmax\(0\,1fr\)\] {
    grid-template-rows: auto minmax(0,1fr);
  }
  .flex-col {
    flex-direction: column;
  }
  .items-center {
    align-items: center;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .rounded-\[8px\] {
    border-radius: 8px;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-app-border {
    border-color: var(--color-app-border);
  }
  .border-app-border-soft {
    border-color: var(--color-app-border-soft);
  }
  .border-shell-border {
    border-color: var(--color-shell-border);
  }
  .bg-app-bg {
    background-color: var(--color-app-bg);
  }
  .bg-app-panel {
    background-color: var(--color-app-panel);
  }
  .bg-app-primary {
    background-color: var(--color-app-primary);
  }
  .bg-app-surface {
    background-color: var(--color-app-surface);
  }
  .bg-app-surface-raised {
    background-color: var(--color-app-surface-raised);
  }
  .bg-shell-bg {
    background-color: var(--color-shell-bg);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-app-muted {
    color: var(--color-app-muted);
  }
  .text-app-primary-text {
    color: var(--color-app-primary-text);
  }
  .text-app-success-text {
    color: var(--color-app-success-text);
  }
  .text-app-text {
    color: var(--color-app-text);
  }
  .text-app-warning-text {
    color: var(--color-app-warning-text);
  }
  .text-shell-text {
    color: var(--color-shell-text);
  }
  .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,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-4 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
}
@layer components {
  .table-wrap {
    width: 100%;
    max-width: 100%;
    min-width: calc(var(--spacing) * 0);
    overflow-x: auto;
  }
  .guestlist-workspace {
    display: flex;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .stacked-content-section {
    display: flex;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .stacked-content-section:not([hidden]) + .stacked-content-section:not([hidden]) {
    margin-top: calc(var(--spacing) * 6);
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .guestlist-table-card {
    display: flex;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    overflow: hidden;
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .data-surface {
    overflow: hidden;
  }
  .workspace-tabs-shell {
    display: flex;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .workspace-tabs-shell .page-section-select {
    padding-bottom: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .data-table-statusbar {
    display: flex;
    min-height: calc(var(--spacing) * 12);
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
  }
  .data-table-statusbar strong {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .data-surface-toolbar {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .data-surface-body {
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .data-surface-body.flush {
    padding: calc(var(--spacing) * 0);
  }
  .data-surface > .guestlist-workspace, .data-surface > .stacked-content-section {
    gap: calc(var(--spacing) * 0);
  }
  .data-surface .table-wrap {
    border-radius: 0;
  }
  .horizontal-scroll-card {
    overflow: visible;
  }
  .guestlist-table-card > :first-child {
    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
  }
  .guestlist-table-card > :last-child {
    border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .guestlist-table-card .table-wrap {
    background-color: var(--color-app-panel);
  }
  .guestlist-table-card > .table-wrap:only-child {
    border-radius: 14px;
  }
  .horizontal-scroll-card .table-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
  }
  .data-surface.horizontal-scroll-card .table-wrap {
    border-radius: 0;
  }
  .horizontal-scroll-card:has(.horizontal-scroll-rail[hidden]) .table-wrap {
    border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;
  }
  .horizontal-scroll-card .table-wrap {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .horizontal-scroll-card .table-wrap::-webkit-scrollbar {
    display: none;
  }
  .horizontal-scroll-rail {
    position: sticky;
    bottom: calc(var(--spacing) * 0);
    z-index: 20;
    display: flex;
    height: calc(var(--spacing) * 8);
    cursor: grab;
    align-items: center;
    border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 3);
  }
  .horizontal-scroll-rail.is-floating {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .horizontal-scroll-rail.is-dragging {
    cursor: grabbing;
  }
  .horizontal-scroll-rail[hidden] {
    display: none;
  }
  .horizontal-scroll-rail-track {
    position: relative;
    height: calc(var(--spacing) * 1.5);
    width: 100%;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-surface-soft);
  }
  .horizontal-scroll-rail-thumb {
    position: absolute;
    top: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
    height: 100%;
    min-width: calc(var(--spacing) * 10);
    cursor: grab;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-border-hover);
    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));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-muted);
      }
    }
    &:active {
      cursor: grabbing;
    }
    &:active {
      background-color: var(--color-app-primary);
    }
  }
  .horizontal-scroll-rail.is-dragging .horizontal-scroll-rail-thumb {
    cursor: grabbing;
  }
  .horizontal-scroll-rail:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }
  .table-card-header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 5);
    }
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      align-items: center;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .table-card-header h2 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .table-card-header p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .guestlist-workflow-header {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .guestlist-workflow-tabs {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
  }
  .guestlist-workflow-meta {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .guestlist-workflow-meta strong {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-text);
  }
  .guestlist-workflow-meta > span {
    white-space: nowrap;
  }
  .manage-toolbar {
    position: relative;
  }
  .table-toolbar, .check-in-filter-toolbar {
    position: relative;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    overflow: visible;
  }
  .manage-filter-fields {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    overflow: visible;
    @media (width >= 64rem) {
      flex-direction: row;
    }
    @media (width >= 64rem) {
      align-items: center;
    }
    @media (width >= 64rem) {
      justify-content: space-between;
    }
  }
  .table-toolbar-tools {
    display: flex;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    @media (width >= 64rem) {
      flex: 1;
    }
  }
  .table-toolbar-actions {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      justify-content: flex-end;
    }
    @media (width >= 64rem) {
      width: auto;
    }
  }
  .table-toolbar-tools .table-search-field {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      width: auto;
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 64);
    }
    @media (width >= 40rem) {
      flex: 1;
    }
    @media (width >= 80rem) {
      width: calc(var(--spacing) * 80);
    }
    @media (width >= 80rem) {
      min-width: calc(var(--spacing) * 80);
    }
    @media (width >= 80rem) {
      flex: none;
    }
  }
  .table-toolbar-primary-action, .table-toolbar-primary-action .page-action-menu-trigger {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .table-toolbar-meta {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
    @media (width >= 64rem) {
      margin-left: auto;
    }
    @media (width >= 64rem) {
      width: auto;
    }
    @media (width >= 64rem) {
      justify-content: flex-end;
    }
  }
  .table-toolbar-meta strong {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-text);
  }
  .table-toolbar-meta > span {
    white-space: nowrap;
  }
  .table-search-field {
    position: relative;
    margin-bottom: calc(var(--spacing) * 0);
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 72);
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 72);
    }
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 80);
    }
    @media (width >= 48rem) {
      min-width: calc(var(--spacing) * 80);
    }
  }
  .table-search-field svg {
    pointer-events: none;
    position: absolute;
    top: calc(1 / 2 * 100%);
    left: calc(var(--spacing) * 3.5);
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    color: var(--color-app-muted);
  }
  .table-search-field input {
    height: calc(var(--spacing) * 11);
    width: 100%;
    border-radius: 10px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-block: calc(var(--spacing) * 0);
    padding-right: calc(var(--spacing) * 3);
    padding-left: calc(var(--spacing) * 10);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .check-in-filter-toolbar > select {
    height: calc(var(--spacing) * 11);
    width: calc(var(--spacing) * 44);
    min-width: calc(var(--spacing) * 44);
    padding-block: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .filter-toggle {
    position: relative;
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .filter-toggle-button {
    display: flex;
    height: calc(var(--spacing) * 11);
    width: 100%;
    cursor: pointer;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-inline: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-input-focus);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 36);
    }
  }
  .filter-toggle-button span {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .filter-toggle-button svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .filter-toggle.is-open .filter-toggle-button > svg {
    rotate: 180deg;
  }
  .filter-toggle.has-value .filter-toggle-button {
    border-color: color-mix(in srgb, #5147E8 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 40%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .filter-toggle-panel {
    position: absolute;
    top: calc(100% + 8px);
    right: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
    z-index: 50;
    display: none;
    max-height: 70vh;
    width: 100%;
    gap: calc(var(--spacing) * 2);
    overflow-y: auto;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 2);
    --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-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      left: auto;
    }
    @media (width >= 40rem) {
      width: min(20rem, calc(100vw - 2rem));
    }
  }
  .filter-toggle.is-open .filter-toggle-panel {
    display: grid;
  }
  .columns-toggle-panel {
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 2);
  }
  .columns-toggle-actions {
    display: grid;
    gap: calc(var(--spacing) * 2);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
  }
  .columns-empty-note {
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .multi-filter {
    position: relative;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
  }
  .multi-filter summary {
    display: flex;
    height: calc(var(--spacing) * 11);
    cursor: pointer;
    list-style-type: none;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-inline: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-input-focus);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .multi-filter summary::-webkit-details-marker {
    display: none;
  }
  .multi-filter summary > span {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .multi-filter summary svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .multi-filter[open] summary svg {
    rotate: 180deg;
  }
  .multi-filter.has-value summary {
    border-color: color-mix(in srgb, #5147E8 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 40%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .multi-filter-menu {
    position: static;
    margin-top: calc(var(--spacing) * 2);
    display: grid;
    max-height: calc(var(--spacing) * 64);
    min-width: 100%;
    overflow-y: auto;
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 1.5);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .columns-toggle-menu {
    margin-top: calc(var(--spacing) * 0);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .multi-filter-menu label {
    margin-bottom: calc(var(--spacing) * 0);
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .multi-filter-menu input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .selection-count {
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: var(--color-app-muted);
  }
  .clear-filters, .toolbar-action {
    display: inline-flex;
    height: calc(var(--spacing) * 11);
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 10px;
    padding-inline: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .table-export-action {
    color: color-mix(in srgb, #64748B 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-muted) 85%, transparent);
    }
  }
  .toolbar-action svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .bulk-actions {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    background-color: var(--color-app-surface);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      justify-content: space-between;
    }
  }
  .bulk-actions-main {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .bulk-actions [data-clear-row-selection] {
    align-self: flex-start;
    @media (width >= 40rem) {
      align-self: auto;
    }
  }
  .manage-toolbar.has-selection .manage-filter-fields {
    pointer-events: none;
    visibility: hidden;
  }
  .toolbar-action-danger {
    color: var(--color-app-danger-text);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
  }
  .app-table {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
  }
  .app-table th {
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 3.5);
    text-align: left;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-app-muted);
    text-transform: uppercase;
  }
  .app-table tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border-soft);
  }
  .app-table td {
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
    vertical-align: middle;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .app-table tbody tr {
    cursor: default;
    background-color: var(--color-app-panel);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-panel);
      }
    }
  }
  .app-table tbody tr.guest-row-complete {
    background-color: var(--color-app-row-success);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-row-success-hover);
      }
    }
  }
  .app-table tbody tr.guest-row-complete td {
    border-color: var(--color-app-row-success-border);
  }
  .app-table tbody tr.guest-row-partial {
    background-color: var(--color-app-row-warning);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-row-warning-hover);
      }
    }
  }
  .app-table tbody tr.guest-row-partial td {
    border-color: var(--color-app-row-warning-border);
  }
  .app-table tbody tr:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  .app-table tbody tr:focus-visible td {
    background-color: var(--color-app-surface-active);
  }
  .app-table tbody tr:focus-visible td:first-child {
    box-shadow: inset 3px 0 0 var(--color-app-primary);
  }
  .app-table tbody tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table tbody tr:last-child td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table tbody tr[data-last-visible-row] {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table tbody tr[data-last-visible-row] td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table tbody tr[data-table-row]:has(+ tr[data-table-empty][hidden]) {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table tbody tr[data-table-row]:has(+ tr[data-table-empty][hidden]) td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .guest-row td:last-child, .app-table th:last-child {
    text-align: right;
  }
  .app-table-compact td {
    padding-block: calc(var(--spacing) * 3);
  }
  .check-in-data-surface {
    overflow: hidden;
  }
  .check-in-filter-fields {
    @media (width >= 64rem) {
      align-items: center;
    }
  }
  .check-in-results {
    min-width: calc(var(--spacing) * 0);
    background-color: var(--color-app-surface);
  }
  .check-in-list {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 2.5);
    }
  }
  .check-in-guest-row {
    display: grid;
    cursor: pointer;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        --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);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 80%, transparent) var(--tw-shadow-alpha), transparent);
        }
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,1fr) auto;
    }
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 3.5);
    }
  }
  .check-in-guest-row.is-sync-pending {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-ring-color: color-mix(in srgb, #5147E8 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 15%, transparent);
    }
  }
  .check-in-guest-row.guest-row-complete {
    border-color: var(--color-app-row-success-border);
    background-color: var(--color-app-row-success);
    opacity: 60%;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-row-success-hover);
      }
    }
  }
  .check-in-guest-row.guest-row-partial {
    border-color: var(--color-app-row-warning-border);
    background-color: var(--color-app-row-warning);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-row-warning-hover);
      }
    }
  }
  .check-in-guest {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 0);
  }
  .check-in-guest-topline {
    min-width: calc(var(--spacing) * 0);
  }
  .check-in-guest-name-main {
    display: inline-flex;
    max-width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: nowrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .check-in-guest-topline .guest-row-name {
    max-width: 100%;
    min-width: calc(var(--spacing) * 0);
    flex-shrink: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .check-in-plus-one {
    flex-shrink: 0;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
  }
  .check-in-guest-name-main .category-pill {
    flex-shrink: 0;
  }
  .check-in-guest-mobile-type {
    display: none;
  }
  .check-in-guest-meta {
    display: none;
  }
  .check-in-status-cell {
    display: none;
    justify-content: flex-end;
    @media (width >= 40rem) {
      display: flex;
    }
  }
  .check-in-status-cell .status-pill {
    min-width: calc(var(--spacing) * 28);
    justify-content: center;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    white-space: nowrap;
  }
  .check-in-list .table-empty-row {
    cursor: default;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-app-surface);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface);
      }
    }
  }
  .check-in-list .table-empty-state {
    min-height: calc(var(--spacing) * 72);
  }
  .management-list-card {
    overflow: visible;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .management-list {
    display: grid;
    gap: calc(var(--spacing) * 2);
  }
  .management-row {
    display: grid;
    gap: calc(var(--spacing) * 4);
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,1fr) auto;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .management-row-main {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 2);
  }
  .management-row-title {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .management-row-title strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .management-row-subtitle {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .management-row-meta {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .management-row-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    @media (width >= 40rem) {
      justify-content: flex-end;
    }
  }
  .public-submission-row {
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .management-empty {
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
  }
  .access-page-content {
    display: grid;
    gap: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .workspace-tabs-shell + .access-page-content {
    margin-top: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 5);
    }
  }
  .access-section-panel {
    display: grid;
    gap: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .access-section-header {
    padding: calc(var(--spacing) * 0);
  }
  .section-info-card {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0,1fr);
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
    overflow: hidden;
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 4);
    padding-left: calc(var(--spacing) * 5);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .section-info-card::before {
    content: "";
    position: absolute;
    inset-block: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
    width: calc(var(--spacing) * 1);
    background-color: var(--color-app-primary);
  }
  .section-info-icon {
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, #5147E8 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 20%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, #E9EDFF 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-brand-100) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
    }
  }
  .section-info-icon svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .section-info-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .section-info-card p {
    margin-top: calc(var(--spacing) * 1);
    max-width: var(--container-3xl);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .object-card-grid {
    display: grid;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .object-card {
    position: relative;
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 4);
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .object-card-header {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: flex-start;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
  }
  .object-card-title {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .object-card-title strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .object-card-title .status-pill {
    width: fit-content;
    flex-shrink: 0;
  }
  .object-card-meta {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .object-card-info-list {
    display: grid;
    gap: calc(var(--spacing) * 3);
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 0);
    padding-block: calc(var(--spacing) * 1);
  }
  .object-card-info-row {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    justify-items: start;
    gap: calc(var(--spacing) * 1);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,1fr) auto;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .object-card-info-row-wrap {
    @media (width >= 40rem) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .object-card-info-row > span, .object-card-info-stack > span {
    flex-shrink: 0;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-app-muted);
    text-transform: uppercase;
  }
  .object-card-info-row strong {
    justify-self: flex-start;
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      justify-self: flex-end;
    }
    @media (width >= 40rem) {
      text-align: right;
    }
  }
  .object-card-info-row .allowance-summary {
    justify-content: flex-start;
  }
  .object-card-type-list {
    max-width: 100%;
    justify-content: flex-start;
    gap: calc(var(--spacing) * 1.5);
  }
  .object-card-info-stack {
    display: grid;
    gap: calc(var(--spacing) * 2);
  }
  .object-card-actions-row {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: calc(var(--spacing) * 2);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border);
    padding-top: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      display: flex;
    }
    @media (width >= 40rem) {
      flex-wrap: wrap;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .object-card-copy-action, .object-card-open-action {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    @media (width >= 40rem) {
      height: calc(var(--spacing) * 9);
    }
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .object-card-open-action {
    background-color: var(--color-app-panel);
    color: var(--color-app-text);
  }
  .object-card-copy-action svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .object-card-open-action svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .object-card-more-actions .row-action-trigger {
    opacity: 100%;
  }
  .pin-reveal-inline {
    height: auto;
    min-width: calc(var(--spacing) * 0);
    justify-content: flex-end;
    border-radius: 0;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 0);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: transparent;
      }
    }
  }
  .pin-reveal-inline .pin-reveal-value, .pin-reveal-inline .pin-reveal-button {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .settings-category-row, .settings-object-row {
    grid-template-columns: minmax(0,1fr) 4.75rem;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 3);
  }
  .settings-category-row .management-row-actions, .settings-object-row .management-row-actions {
    min-width: 4.75rem;
    justify-content: flex-end;
  }
  .settings-page-content {
    gap: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .settings-section-panel {
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .settings-object-main {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }
  .settings-object-copy {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .settings-object-copy strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .settings-object-swatch {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    background: var(--category-color);
  }
  .settings-field-icon {
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-active);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .settings-field-title {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .settings-field-title strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .settings-field-chips {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
  }
  .settings-meta-pill {
    display: inline-flex;
    align-items: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .settings-row-note {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .role-assignment-row {
    @media (width >= 40rem) {
      grid-template-columns: minmax(16rem,0.7fr) minmax(0,1.3fr) auto;
    }
  }
  .role-checkbox-list {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 2);
  }
  .role-checkbox-list label {
    margin-bottom: calc(var(--spacing) * 0);
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 30%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .role-checkbox-list input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .role-checkbox-list label:has(input:checked) {
    border-color: color-mix(in srgb, #5147E8 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 40%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .role-permission-summary {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .roles-content-stack {
    display: grid;
    gap: calc(var(--spacing) * 8);
  }
  .role-template-grid {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .role-template-row {
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 4);
  }
  .role-template-card {
    display: grid;
    min-height: calc(var(--spacing) * 32);
    grid-template-columns: minmax(0,1fr) auto;
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
    padding: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .role-template-card .management-row-actions {
    align-self: flex-start;
  }
  .role-row-meta {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .role-module-summary {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .role-module-summary span, .role-chip-list span {
    display: inline-flex;
    max-width: 100%;
    align-items: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .user-role-row, .event-user-role-row {
    @media (width >= 40rem) {
      grid-template-columns: minmax(13rem,0.75fr) minmax(0,1fr) auto;
    }
  }
  .role-chip-list {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
  }
  .role-chip-list span:first-child:last-child {
    color: var(--color-app-muted);
  }
  .event-role-actions {
    gap: calc(var(--spacing) * 2);
  }
  .event-role-actions form {
    margin: calc(var(--spacing) * 0);
  }
  .event-role-actions .btn {
    min-height: calc(var(--spacing) * 8);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .permission-module-list {
    display: grid;
    gap: calc(var(--spacing) * 6);
  }
  .permission-module-group {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .permission-module-group h4 {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .permission-checkbox-grid {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .private-links-table {
    min-width: 860px;
    table-layout: fixed;
    @media (width >= 40rem) {
      min-width: 920px;
    }
  }
  .private-links-table .submission-link-name-column {
    width: 13rem;
  }
  .private-links-table .submission-link-usage-column {
    width: 18rem;
  }
  .private-links-table .submission-link-actions-column {
    width: 9.5rem;
  }
  .private-links-table .check-in-link-types-column {
    width: 16rem;
  }
  .private-links-table .check-in-link-actions-column {
    width: 16rem;
  }
  .private-links-table tbody tr {
    cursor: default;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface);
      }
    }
  }
  .private-links-table td {
    min-width: calc(var(--spacing) * 0);
  }
  .private-links-table th:last-child, .private-links-table td:last-child {
    text-align: right;
  }
  .allowance-summary {
    display: flex;
    min-width: 13rem;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
  }
  .submission-link-usage {
    display: grid;
    max-width: calc(var(--spacing) * 56);
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .submission-link-usage strong {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .submission-link-progress {
    height: calc(var(--spacing) * 1.5);
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-surface-active);
  }
  .submission-link-progress span {
    display: block;
    height: 100%;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-primary);
  }
  .submission-link-actions-cell {
    white-space: nowrap;
  }
  .check-in-link-actions-cell {
    padding-left: calc(var(--spacing) * 4);
  }
  .submission-link-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 1);
  }
  .submission-link-icon-action {
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: transparent;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .submission-link-icon-action svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .submission-link-icon-copy {
    color: var(--color-app-muted);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .submission-link-icon-copy.is-copied {
    background-color: var(--color-app-success-bg);
    color: var(--color-app-success-text);
  }
  .submission-link-icon-copy.is-copy-error {
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
  }
  .submission-link-icon-delete {
    border-color: transparent;
    background-color: transparent;
    color: color-mix(in srgb, #B42318 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-danger-text) 80%, transparent);
    }
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #FECDCA 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-app-danger-border) 70%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FECDCA 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 50%, transparent);
      }
    }
  }
  .table-empty-row {
    cursor: default;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-app-surface);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface);
      }
    }
  }
  .table-empty-row td {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 0);
  }
  .table-empty-state {
    display: flex;
    min-height: calc(var(--spacing) * 72);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 12);
    text-align: center;
  }
  .table-empty-state strong {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .table-empty-state p {
    margin-top: calc(var(--spacing) * 2);
    max-width: var(--container-md);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .table-empty-state .btn {
    margin-top: calc(var(--spacing) * 5);
  }
  .app-table-editable tbody tr {
    cursor: default;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-row);
      }
    }
  }
  .app-table-editable input:not([type="checkbox"]), .app-table-editable select {
    min-width: calc(var(--spacing) * 32);
    background-color: var(--color-app-surface);
  }
  .app-table-editable th:first-child, .app-table-editable td:first-child {
    width: calc(var(--spacing) * 10);
    padding-right: calc(var(--spacing) * 0);
  }
  .app-table-editable th:last-child, .app-table-editable td:last-child {
    width: calc(var(--spacing) * 24);
    text-align: right;
  }
  .app-table-spreadsheet {
    width: var(--guest-table-width, max-content);
    min-width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    --tw-border-spacing-x: calc(var(--spacing) * 0);
    --tw-border-spacing-y: calc(var(--spacing) * 0);
    border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
  }
  .app-table-spreadsheet col[hidden] {
    display: none;
    width: 0 !important;
  }
  .app-table-spreadsheet .guest-table-select-column {
    width: 3rem;
  }
  .app-table-spreadsheet .guest-table-name-column {
    width: var(--guest-table-name-width, 21rem);
  }
  .app-table-spreadsheet .guest-table-email-column {
    width: 15rem;
  }
  .app-table-spreadsheet .guest-table-type-column {
    width: 12rem;
  }
  .app-table-spreadsheet .guest-table-guests-column {
    width: 7rem;
  }
  .app-table-spreadsheet .guest-table-custom-column {
    width: 12rem;
  }
  .app-table-spreadsheet .guest-table-created-column {
    width: 11rem;
  }
  .app-table-spreadsheet .guest-table-source-column {
    width: 14rem;
  }
  .app-table-spreadsheet .guest-table-checked-at-column {
    width: 12rem;
  }
  .app-table-spreadsheet .guest-table-checked-by-column {
    width: 14rem;
  }
  .app-table-spreadsheet .guest-table-status-column {
    width: 10rem;
  }
  .app-table-spreadsheet .guest-table-actions-column {
    width: 4rem;
  }
  .app-table-spreadsheet th {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    text-align: left;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-app-muted);
    text-transform: uppercase;
    &:last-child {
      border-right-style: var(--tw-border-style);
      border-right-width: 0px;
    }
  }
  .table-sort {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    text-align: left;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    white-space: nowrap;
    color: var(--color-app-muted);
    text-transform: uppercase;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .table-sort span {
    visibility: hidden;
    display: flex;
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    opacity: 0%;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .table-sort svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .table-sort.is-active {
    color: var(--color-app-text);
  }
  .table-sort.is-active span {
    visibility: visible;
    opacity: 100%;
  }
  .table-sort[data-sort-direction="asc"] span {
    rotate: 180deg;
  }
  .app-table-spreadsheet td {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    &:last-child {
      border-right-style: var(--tw-border-style);
      border-right-width: 0px;
    }
  }
  .app-table-spreadsheet tbody tr {
    cursor: default;
    background-color: transparent;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: transparent;
      }
    }
  }
  .app-table-spreadsheet tbody tr:not([data-table-empty]):hover td {
    background-color: var(--color-app-surface-hover);
  }
  .app-table-spreadsheet tbody tr:not([data-table-empty]) td:hover {
    background-color: var(--color-app-surface-active);
  }
  .app-table-spreadsheet [data-table-empty] td {
    background-color: var(--color-app-surface);
  }
  .app-table-spreadsheet input:not([type="checkbox"]), .app-table-spreadsheet select {
    height: calc(var(--spacing) * 11);
    min-width: calc(var(--spacing) * 32);
    border-radius: 0;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:focus {
      background-color: var(--color-app-surface);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: var(--color-app-primary);
    }
    &:focus {
      --tw-ring-inset: inset;
    }
  }
  .app-table-spreadsheet td[data-column-key="guests"] input[type="number"] {
    width: 100%;
    max-width: 100%;
    min-width: calc(var(--spacing) * 0);
  }
  .spreadsheet-readonly {
    display: flex;
    height: calc(var(--spacing) * 11);
    align-items: center;
    padding-inline: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    white-space: nowrap;
    color: var(--color-app-muted);
  }
  .spreadsheet-placeholder {
    color: color-mix(in srgb, #64748B 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-muted) 70%, transparent);
    }
  }
  .app-table-spreadsheet tbody tr:last-child td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table-spreadsheet tbody tr[data-last-visible-row] td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table-spreadsheet tbody tr[data-table-row]:has(+ tr[data-table-empty][hidden]) td {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .app-table-spreadsheet input[type="checkbox"] {
    margin-inline: auto;
    display: block;
    cursor: pointer;
  }
  .app-table-spreadsheet [data-select-all-cell] {
    cursor: pointer;
  }
  .app-table-spreadsheet [data-row-select-cell] {
    cursor: pointer;
  }
  .app-table-spreadsheet th:first-child, .app-table-spreadsheet td:first-child {
    width: calc(var(--spacing) * 12);
    text-align: center;
    vertical-align: middle;
  }
  .app-table-spreadsheet-no-select th:first-child, .app-table-spreadsheet-no-select td:first-child {
    width: auto;
    text-align: left;
  }
  .app-table-spreadsheet th:last-child, .app-table-spreadsheet td:last-child {
    width: calc(var(--spacing) * 40);
    padding-inline: calc(var(--spacing) * 3);
    text-align: left;
  }
  .app-table-spreadsheet td.status-cell {
    padding-inline: calc(var(--spacing) * 3);
    white-space: nowrap;
  }
  .app-table-spreadsheet td.status-cell .status-pill {
    white-space: nowrap;
  }
  .spreadsheet-add-row-button {
    display: flex;
    height: calc(var(--spacing) * 11);
    width: 100%;
    cursor: pointer;
    align-items: center;
    padding-inline: calc(var(--spacing) * 3);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-primary-text);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-primary-soft);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-app-primary);
    }
    &:focus-visible {
      --tw-ring-inset: inset;
    }
  }
  .public-submission-table .spreadsheet-readonly.guest-row-name {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-text);
  }
  .checked-status-editor {
    display: inline-flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
  }
  .checked-status-chip {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    border-radius: 999px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .checked-status-editor.is-complete .checked-status-chip {
    border-color: color-mix(in srgb, #75E0A7 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-success-border) 40%, transparent);
    }
    background-color: var(--color-app-success-bg);
    color: var(--color-app-success-text);
  }
  .checked-status-editor.is-partial .checked-status-chip {
    border-color: color-mix(in srgb, #FEDF89 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-warning-border) 50%, transparent);
    }
    background-color: var(--color-app-warning-bg);
    color: var(--color-app-warning-text);
  }
  .checked-status-input-wrap {
    display: inline-flex;
    height: calc(var(--spacing) * 8);
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in oklab, var(--color-app-primary) 40%, transparent);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
    --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));
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-app-primary) 10%, transparent) var(--tw-shadow-alpha), transparent);
    --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
  }
  .app-table-spreadsheet .checked-status-input-wrap input {
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 9);
    min-width: calc(var(--spacing) * 9);
    border-radius: 7px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 1);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    --tw-outline-style: none;
    outline-style: none;
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-surface);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .app-table-spreadsheet .checked-status-input-wrap input::-webkit-outer-spin-button, .app-table-spreadsheet .checked-status-input-wrap input::-webkit-inner-spin-button {
    margin: calc(var(--spacing) * 0);
    appearance: none;
  }
  .app-table-spreadsheet .checked-status-input-wrap input[type="number"] {
    -moz-appearance: textfield;
  }
  .checked-status-input-wrap span {
    white-space: nowrap;
  }
  .app-table-spreadsheet th.row-actions-cell, .app-table-spreadsheet td.row-actions-cell, .app-table-spreadsheet th:last-child, .app-table-spreadsheet td:last-child {
    width: calc(var(--spacing) * 14);
    min-width: calc(var(--spacing) * 14);
    padding-inline: calc(var(--spacing) * 2);
    text-align: center;
  }
  .row-actions-cell {
    position: relative;
  }
  .row-delete-button {
    margin-inline: auto;
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: color-mix(in srgb, #B42318 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-danger-text) 75%, transparent);
    }
    opacity: 0%;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      opacity: 100%;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #FECDCA 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 30%, transparent);
      }
    }
  }
  .app-table-spreadsheet tbody tr:hover .row-delete-button {
    opacity: 100%;
  }
  .row-delete-button svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .row-action-menu {
    position: relative;
    display: inline-flex;
  }
  .row-action-menu summary {
    list-style-type: none;
  }
  .row-action-menu summary::-webkit-details-marker {
    display: none;
  }
  .row-action-trigger {
    margin-inline: auto;
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--color-app-muted);
    opacity: 0%;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      opacity: 100%;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .app-table-spreadsheet .row-action-trigger {
    opacity: 100%;
  }
  .row-action-menu[open] .row-action-trigger, .app-table-spreadsheet tbody tr:hover .row-action-trigger {
    opacity: 100%;
  }
  .row-action-trigger svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .row-action-menu-panel {
    position: absolute;
    top: calc(100% + 0.375rem);
    right: calc(var(--spacing) * 0);
    z-index: 50;
    display: grid;
    min-width: calc(var(--spacing) * 44);
    gap: calc(var(--spacing) * 1);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 1.5);
    text-align: left;
    --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-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .row-action-menu-panel button {
    display: flex;
    width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .row-action-menu-panel button svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .row-action-menu-panel button.is-danger {
    color: var(--color-app-danger-text);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
  }
  .row-action-menu-panel form {
    margin: calc(var(--spacing) * 0);
  }
  .app-table tbody tr.table-empty-row, .app-table-spreadsheet tbody tr.table-empty-row {
    cursor: default;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-app-surface);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface);
      }
    }
  }
  .app-table tbody tr.table-empty-row td, .app-table-spreadsheet tbody tr.table-empty-row td {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 0);
  }
  .app-table-admin {
    min-width: 760px;
    table-layout: fixed;
  }
  .app-table-admin tbody tr {
    cursor: default;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface);
      }
    }
  }
  .app-table-admin td {
    color: var(--color-app-text);
  }
  .app-table-admin th:last-child, .app-table-admin td:last-child {
    width: calc(var(--spacing) * 24);
    text-align: right;
  }
  .admin-table-toolbar {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      flex-wrap: wrap;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 4);
    }
    @media (width >= 64rem) {
      flex-wrap: nowrap;
    }
  }
  .admin-table-toolbar .table-search-field {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 80);
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 80);
    }
  }
  .admin-table-toolbar .table-toolbar-meta {
    @media (width >= 40rem) {
      margin-left: auto;
    }
    @media (width >= 40rem) {
      width: auto;
    }
    @media (width >= 40rem) {
      justify-content: flex-end;
    }
  }
  .btn-table-action {
    min-height: calc(var(--spacing) * 8);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .table-person-cell {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .table-person-cell > div, .table-copy-cell {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
  }
  .table-person-cell strong, .table-copy-cell strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .table-person-cell span:not(.settings-field-icon), .table-copy-cell span {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .roles-users-table {
    min-width: 840px;
  }
  .roles-users-table th:nth-child(1) {
    width: 30%;
  }
  .roles-users-table th:nth-child(2) {
    width: 42%;
  }
  .roles-users-table th:nth-child(3) {
    width: 14%;
  }
  .team-users-table {
    min-width: 1020px;
  }
  .team-users-table th:nth-child(1) {
    width: 28%;
  }
  .team-users-table th:nth-child(2) {
    width: 20%;
  }
  .team-users-table th:nth-child(3) {
    width: 34%;
  }
  .team-users-table th:nth-child(4) {
    width: 10%;
  }
  .team-users-table th:nth-child(5), .team-users-table td:nth-child(5) {
    width: calc(var(--spacing) * 24);
    text-align: right;
  }
  .team-person-cell .team-avatar {
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .team-dashboard-cell, .team-access-cell {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
  }
  .team-dashboard-cell strong, .team-access-cell strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .team-dashboard-cell span, .team-access-cell p {
    min-width: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .team-access-chip-list {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .team-access-empty {
    border-color: var(--color-app-warning-border);
    background-color: var(--color-app-warning-bg);
    color: var(--color-app-warning-text);
  }
  .activity-table td {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .activity-table th {
    padding-block: calc(var(--spacing) * 3);
  }
  .activity-table .team-dashboard-cell {
    gap: calc(var(--spacing) * 0.5);
  }
  .role-templates-table {
    min-width: 720px;
  }
  .role-templates-table th:nth-child(1) {
    width: 62%;
  }
  .role-templates-table th:nth-child(2) {
    width: 22%;
  }
  .event-team-table {
    min-width: 840px;
  }
  .event-team-table th:nth-child(1) {
    width: 30%;
  }
  .event-team-table th:nth-child(2) {
    width: 40%;
  }
  .event-team-table th:nth-child(3) {
    width: 16%;
  }
  .settings-admin-table {
    min-width: 560px;
  }
  .settings-admin-table th {
    padding-block: calc(var(--spacing) * 3);
  }
  .settings-admin-table td {
    padding-block: calc(var(--spacing) * 3);
  }
  .settings-types-table th:nth-child(1) {
    width: 84%;
  }
  .settings-fields-table th:nth-child(1) {
    width: 84%;
  }
  .settings-admin-table th:last-child, .settings-admin-table td:last-child {
    width: calc(var(--spacing) * 28);
  }
  .private-links-table th:last-child, .private-links-table td:last-child {
    text-align: right;
  }
  .private-links-table .submission-link-actions-column, .private-links-table .check-in-link-actions-column {
    width: 11rem;
  }
  .roles-advanced-section {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .roles-advanced-section summary {
    display: flex;
    cursor: pointer;
    list-style-type: none;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-row);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .roles-advanced-section summary::-webkit-details-marker {
    display: none;
  }
  .roles-advanced-section summary span {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
  }
  .roles-advanced-section summary strong {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .roles-advanced-section summary small {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .roles-advanced-section summary svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .roles-advanced-section[open] summary svg {
    rotate: 180deg;
    color: var(--color-app-text);
  }
  @media (pointer: coarse) {
    .row-delete-button {
      opacity: 100%;
    }
  }
  .app-table-spreadsheet [data-inline-field][aria-invalid="true"] {
    border-color: var(--color-app-danger-border);
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
    &:focus {
      border-color: var(--color-app-danger-border);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FECDCA 25%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 25%, transparent);
      }
    }
  }
  .sync-status {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-success-text);
  }
  .sync-status::before {
    content: "";
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-success-text);
  }
  .sync-status[data-sync-state="updating"] {
    color: var(--color-app-row-warning-text);
  }
  .sync-status[data-sync-state="updating"]::before {
    background-color: var(--color-app-row-warning-text);
  }
  .sync-status[data-sync-state="error"], .sync-status[data-sync-state="offline"] {
    color: var(--color-app-danger-text);
  }
  .sync-status[data-sync-state="error"]::before, .sync-status[data-sync-state="offline"]::before {
    background-color: var(--color-app-danger-text);
  }
}
@keyframes drawer-slide-in {
  from {
    opacity: 0.98;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes drawer-slide-out {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0.98;
    transform: translateX(100%);
  }
}
@keyframes drawer-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes drawer-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@layer base {
  :root {
    color-scheme: light;
    --app-content-max-width: 100rem;
    --color-app-bg: #F6F8FC;
    --color-app-panel: #FFFFFF;
    --color-app-surface: #FFFFFF;
    --color-app-surface-raised: #F9FBFE;
    --color-app-surface-soft: #EEF2F7;
    --color-app-surface-row: #FFFFFF;
    --color-app-surface-hover: #F6F8FC;
    --color-app-surface-active: #E9EDFF;
    --color-app-input: #FFFFFF;
    --color-app-input-focus: #FFFFFF;
    --color-app-border: #DDE5EF;
    --color-app-border-soft: #EAF0F7;
    --color-app-border-strong: #C8D2E0;
    --color-app-border-hover: #A5B4FC;
    --color-app-text: #0F172A;
    --color-app-muted: #64748B;
    --color-app-subtle: #94A3B8;
    --color-shell-bg: #111827;
    --color-shell-surface: #182235;
    --color-shell-surface-hover: #202B3F;
    --color-shell-surface-active: #263352;
    --color-shell-border: #243044;
    --color-shell-text: #F8FAFC;
    --color-shell-muted: #A8B3C7;
    --color-shell-subtle: #7D8AA0;
    --color-brand-50: #F5F7FF;
    --color-brand-100: #E9EDFF;
    --color-brand-200: #D6DEFF;
    --color-brand-300: #B8C4FF;
    --color-brand-400: #8EA0FF;
    --color-brand-500: #6672F7;
    --color-brand-600: #5147E8;
    --color-brand-700: #4237C8;
    --color-brand-800: #352D9E;
    --color-brand-900: #312A7B;
    --color-app-primary: #5147E8;
    --color-app-primary-contrast: #FFFFFF;
    --color-app-primary-hover: #4237C8;
    --color-app-primary-soft: #F5F7FF;
    --color-app-primary-text: #4237C8;
    --color-app-success-bg: #D1FADF;
    --color-app-success-text: #05603A;
    --color-app-success-border: #75E0A7;
    --color-app-row-success: #DCFCE7;
    --color-app-row-success-hover: #BBF7D0;
    --color-app-row-success-border: #86EFAC;
    --color-app-warning-bg: #FFFAEB;
    --color-app-warning-text: #B54708;
    --color-app-warning-border: #FEDF89;
    --color-app-row-warning: #FFFBEB;
    --color-app-row-warning-hover: #FEF3C7;
    --color-app-row-warning-border: #FDE68A;
    --color-app-row-warning-text: #92400E;
    --color-app-danger-bg: #FEF3F2;
    --color-app-danger-text: #B42318;
    --color-app-danger-border: #FECDCA;
    --app-scrollbar: #CBD5E1;
    --app-scrollbar-hover: #8EA0FF;
    --app-modal-header-bg: var(--color-app-panel);
    --app-brand-gradient: linear-gradient(135deg, var(--color-brand-600), var(--color-brand-700));
  }
  @font-face {
    font-family: "DM Sans";
    src: url("/static/fonts/dm-sans/dm-sans-latin-400-normal.a220a32881ae.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "DM Sans";
    src: url("/static/fonts/dm-sans/dm-sans-latin-500-normal.aa952242481d.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "DM Sans";
    src: url("/static/fonts/dm-sans/dm-sans-latin-600-normal.c64569e0302e.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "DM Sans";
    src: url("/static/fonts/dm-sans/dm-sans-latin-700-normal.9508ec8af518.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
  }
  body {
    font-family: "DM Sans", ui-sans-serif, system-ui, sans-serif;
    background-color: var(--color-app-bg);
    color: var(--color-app-text);
  }
  html, body {
    max-width: 100%;
    overflow-x: clip;
  }
  [hidden] {
    display: none !important;
  }
  label {
    margin-bottom: calc(var(--spacing) * 1);
    display: block;
  }
  button {
    cursor: pointer;
  }
  button, input, select, textarea {
    font: inherit;
  }
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea {
    width: 100%;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    --tw-outline-style: none;
    outline-style: none;
    &::placeholder {
      color: var(--color-app-subtle);
    }
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  select {
    appearance: none;
    padding-right: calc(var(--spacing) * 10);
    background-image: linear-gradient(45deg, transparent 50%, var(--color-app-muted) 50%), linear-gradient(135deg, var(--color-app-muted) 50%, transparent 50%);
    background-position: calc(100% - 18px) calc(50% + 1px), calc(100% - 13px) calc(50% + 1px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
  }
  option {
    background-color: var(--color-white);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
  }
  input[type="date"]::-webkit-calendar-picker-indicator, input[type="time"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    filter: none;
    opacity: 0.65;
    pointer-events: none;
  }
  input[type="color"] {
    height: calc(var(--spacing) * 11);
    width: calc(var(--spacing) * 20);
    cursor: pointer;
    border-radius: 8px;
    padding: calc(var(--spacing) * 1);
  }
}
@layer components {
  .app-main {
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    overflow-y: auto;
    background-color: var(--color-app-bg);
  }
  .app-main-container {
    width: 100%;
    max-width: var(--app-content-max-width);
    margin-inline: auto;
  }
  .event-workspace-shell {
    display: grid;
    height: 100dvh;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    grid-template-rows: auto minmax(0,1fr);
    overflow: hidden;
  }
  .dashboard-shell {
    display: grid;
    height: 100dvh;
    min-height: 100dvh;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    overflow: hidden;
    @media (width >= 64rem) {
      grid-template-columns: 17.5rem minmax(0,1fr);
    }
  }
  .dashboard-content-shell {
    display: grid;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    grid-template-rows: auto minmax(0,1fr);
    @media (width >= 64rem) {
      grid-template-rows: minmax(0,1fr);
    }
  }
  .event-content-region {
    position: relative;
    height: 100%;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    background-color: var(--color-app-bg);
  }
  .event-content-grid {
    display: grid;
    height: 100%;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    grid-template-columns: repeat(1, minmax(0, 1fr));
    align-items: stretch;
    overflow: hidden;
    @media (width >= 64rem) {
      grid-template-columns: auto minmax(0,1fr);
    }
  }
  .event-main {
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .event-main-inner {
    margin-inline: auto;
    display: grid;
    min-height: 100%;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    align-content: flex-start;
    gap: calc(var(--spacing) * 4);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 8);
    }
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 8);
    }
    max-width: var(--app-content-max-width);
    overflow-x: clip;
  }
  .main-user-menu {
    position: relative;
  }
  .main-user-menu summary {
    list-style-type: none;
  }
  .main-user-menu summary::-webkit-details-marker {
    display: none;
  }
  .main-user-trigger {
    display: flex;
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      border-color: var(--color-app-border-hover);
    }
    &:focus-visible {
      background-color: var(--color-app-surface-hover);
    }
  }
  .main-user-popover {
    position: absolute;
    top: calc(var(--spacing) * 14);
    right: calc(var(--spacing) * 0);
    z-index: 30;
    display: grid;
    min-width: calc(var(--spacing) * 44);
    gap: calc(var(--spacing) * 3);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 3);
    --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-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 48rem) {
      top: auto;
    }
    @media (width >= 48rem) {
      right: auto;
    }
    @media (width >= 48rem) {
      bottom: calc(var(--spacing) * 14);
    }
    @media (width >= 48rem) {
      left: calc(var(--spacing) * 0);
    }
  }
  .main-user-popover p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .main-user-popover button {
    width: 100%;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .dashboard-sidebar, .event-sidebar {
    display: none;
    height: 100dvh;
    max-height: 100dvh;
    min-height: 100dvh;
    width: 17.5rem;
    flex-shrink: 0;
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
    align-self: stretch;
    overflow-y: auto;
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-color: var(--color-shell-border);
    background-color: var(--color-shell-bg);
    padding: calc(var(--spacing) * 4);
    --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-shadow-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-950) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 64rem) {
      display: flex;
    }
  }
  .app-sidebar {
    gap: calc(var(--spacing) * 5);
  }
  .app-sidebar-workspace-head {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .app-sidebar-brand {
    display: flex;
    min-height: calc(var(--spacing) * 10);
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 10px;
    padding-inline: calc(var(--spacing) * 2);
    color: var(--color-shell-text);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
  }
  .app-sidebar-brand svg {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    color: var(--color-brand-300);
  }
  .app-sidebar-brand span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .app-sidebar-event-card {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 12px;
    background-color: var(--color-shell-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 3);
    --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));
    --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);
    --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    --tw-ring-inset: inset;
  }
  .app-sidebar-event-card-link {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-ring-color: color-mix(in srgb, #fff 15%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--color-white) 15%, transparent);
        }
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #B8C4FF 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-brand-300) 50%, transparent);
      }
    }
  }
  .app-sidebar-event-main {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-template-columns: auto minmax(0,1fr);
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }
  .app-sidebar-event-icon {
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background-color: var(--color-shell-surface-active);
    color: var(--color-brand-200);
    --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);
    --tw-ring-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
    --tw-ring-inset: inset;
  }
  .app-sidebar-event-icon svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .app-sidebar-event-copy {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 0.5);
  }
  .app-sidebar-event-card strong, .app-sidebar-event-card span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .app-sidebar-event-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-text);
  }
  .app-sidebar-event-card span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-shell-muted);
  }
  .app-sidebar-event-switch {
    display: inline-flex;
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .app-sidebar-event-card-link:hover .app-sidebar-event-switch, .app-sidebar-event-card-link:focus-visible .app-sidebar-event-switch {
    background-color: var(--color-shell-surface-active);
    color: var(--color-shell-text);
  }
  .app-sidebar-event-switch svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .app-sidebar-nav {
    display: grid;
    gap: calc(var(--spacing) * 6);
  }
  .app-sidebar-section {
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .app-sidebar-section h2 {
    padding-inline: calc(var(--spacing) * 2);
    padding-bottom: calc(var(--spacing) * 1);
    font-size: 0.68rem;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-shell-subtle);
    text-transform: uppercase;
  }
  .app-sidebar-event-nav {
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .app-sidebar-module-static {
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .app-sidebar-link {
    display: grid;
    min-height: calc(var(--spacing) * 10);
    grid-template-columns: auto minmax(0,1fr);
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 10px;
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
    &:focus-visible {
      color: var(--color-shell-text);
    }
  }
  .app-sidebar-link.has-subnav {
    grid-template-columns: auto minmax(0,1fr) auto;
  }
  .app-sidebar-link.is-active {
    background-color: var(--color-brand-600);
    color: var(--color-white);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-950) 15%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .app-sidebar-link.is-module-active {
    color: var(--color-shell-text);
  }
  .app-sidebar-icon, .app-sidebar-link > svg {
    display: inline-flex;
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    align-items: center;
    justify-content: center;
    color: currentcolor;
  }
  .app-sidebar-subnav-chevron {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: currentcolor;
    opacity: 70%;
  }
  .app-sidebar-icon svg, .app-sidebar-link > svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .app-sidebar-module summary {
    list-style-type: none;
  }
  .app-sidebar-module summary::-webkit-details-marker {
    display: none;
  }
  .app-sidebar-module-trigger {
    cursor: pointer;
    grid-template-columns: auto minmax(0,1fr) auto;
  }
  .app-sidebar-chevron {
    display: inline-flex;
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    align-items: center;
    justify-content: center;
    color: currentcolor;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .app-sidebar-chevron svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .app-sidebar-module[open] .app-sidebar-chevron {
    rotate: 180deg;
  }
  .app-sidebar-subnav {
    margin-top: calc(var(--spacing) * 0.5);
    display: grid;
    gap: calc(var(--spacing) * 1);
    padding-left: calc(var(--spacing) * 7);
  }
  .app-sidebar-subnav a {
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
    &:focus-visible {
      color: var(--color-shell-text);
    }
  }
  .app-sidebar-subnav a.is-active {
    background-color: var(--color-brand-600);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-white);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-950) 15%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .app-sidebar-footer {
    margin-top: auto;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-shell-border);
    padding-top: calc(var(--spacing) * 4);
  }
  .app-sidebar-footer .main-user-menu {
    width: 100%;
  }
  .app-sidebar-footer .main-user-trigger {
    min-height: calc(var(--spacing) * 11);
    width: 100%;
    justify-content: flex-start;
    gap: calc(var(--spacing) * 3);
    border-radius: 10px;
    border-color: transparent;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 2);
    color: var(--color-shell-text);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        border-color: transparent;
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:focus-visible {
      border-color: transparent;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
  }
  .app-sidebar-footer .main-user-popover {
    top: auto;
    right: auto;
    bottom: calc(var(--spacing) * 14);
    left: calc(var(--spacing) * 0);
  }
  .main-user-avatar {
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-primary);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-white);
  }
  .main-user-copy {
    display: none;
    min-width: calc(var(--spacing) * 0);
  }
  .main-user-name {
    display: block;
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .main-user-meta {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-shell-muted);
  }
  .app-sidebar-footer .main-user-copy {
    display: grid;
    text-align: left;
  }
  .app-sidebar-footer .main-user-name {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-text);
  }
  .dashboard-topbar {
    height: 68px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 0);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
    @media (width >= 64rem) {
      display: none;
    }
  }
  .dashboard-topbar-main {
    display: flex;
    height: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .dashboard-topbar-brand {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .dashboard-topbar-brand > svg {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
    flex-shrink: 0;
    color: var(--color-app-primary-text);
  }
  .dashboard-topbar-brand div {
    min-width: calc(var(--spacing) * 0);
  }
  .dashboard-topbar-brand h1 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .dashboard-topbar-brand p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .event-topbar {
    min-width: calc(var(--spacing) * 0);
    overflow-x: hidden;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 0);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
    @media (width >= 64rem) {
      display: none;
    }
  }
  .event-topbar-main {
    margin-inline: auto;
    display: flex;
    height: 68px;
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .event-topbar h1 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .event-topbar p {
    margin-top: calc(var(--spacing) * 0.5);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
    @media (width >= 40rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .event-topbar-context {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .event-topbar-context > span {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .event-topbar-context-mobile {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .event-topbar-context-desktop {
    display: none;
    @media (width >= 64rem) {
      display: flex;
    }
  }
  .event-topbar-module {
    display: inline-flex;
    min-width: calc(var(--spacing) * 0);
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .event-topbar-module svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    color: var(--color-app-primary-text);
  }
  .event-topbar-divider {
    color: var(--color-app-subtle);
  }
  .event-mobile-workspace-menu {
    position: relative;
    margin-left: auto;
    flex-shrink: 0;
    @media (width >= 64rem) {
      display: none;
    }
  }
  .event-mobile-workspace-menu > summary {
    display: flex;
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
    cursor: pointer;
    list-style-type: none;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .event-mobile-workspace-menu > summary::-webkit-details-marker {
    display: none;
  }
  .event-mobile-workspace-menu > summary svg {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .event-mobile-workspace-panel {
    position: fixed;
    top: calc(var(--spacing) * 0);
    right: calc(var(--spacing) * 0);
    bottom: calc(var(--spacing) * 0);
    z-index: 50;
    display: flex;
    width: min(88vw, 22rem);
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
    overflow-y: auto;
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-shell-border);
    background-color: var(--color-shell-bg);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 0);
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 25%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
    animation: drawer-slide-in 140ms ease-out both;
  }
  .event-mobile-workspace-backdrop {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    z-index: 40;
    display: none;
    cursor: default;
    background-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-900) 35%, transparent);
    }
  }
  .event-mobile-workspace-menu[open] .event-mobile-workspace-backdrop {
    display: block;
    animation: drawer-fade-in 140ms ease-out both;
  }
  .event-mobile-workspace-menu.is-closing .event-mobile-workspace-panel {
    animation: drawer-slide-out 120ms ease-in both;
  }
  .event-mobile-workspace-menu.is-closing .event-mobile-workspace-backdrop {
    animation: drawer-fade-out 120ms ease-in both;
  }
  .event-mobile-workspace-brand {
    display: flex;
    height: 68px;
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-shell-border);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-text);
  }
  .event-mobile-workspace-brand div {
    display: grid;
    min-width: calc(var(--spacing) * 0);
  }
  .event-mobile-workspace-brand span, .event-mobile-workspace-brand small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .event-mobile-workspace-brand small {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-shell-muted);
  }
  .event-mobile-workspace-brand svg {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
    color: var(--color-brand-300);
  }
  .event-mobile-workspace-event-card {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 12px;
    background-color: var(--color-shell-surface);
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 3);
    color: var(--color-shell-text);
    --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));
    --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);
    --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    --tw-ring-inset: inset;
  }
  .event-mobile-workspace-panel .event-mobile-workspace-event-card-link {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 3);
    color: var(--color-shell-text);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-ring-color: color-mix(in srgb, #fff 15%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--color-white) 15%, transparent);
        }
      }
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #B8C4FF 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-brand-300) 50%, transparent);
      }
    }
  }
  .event-mobile-workspace-event-main {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-template-columns: auto minmax(0,1fr);
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }
  .event-mobile-workspace-event-icon {
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background-color: var(--color-shell-surface-active);
    color: var(--color-brand-200);
    --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);
    --tw-ring-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
    --tw-ring-inset: inset;
  }
  .event-mobile-workspace-event-icon svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .event-mobile-workspace-event-card strong, .event-mobile-workspace-event-card span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .event-mobile-workspace-event-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .event-mobile-workspace-event-card span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-shell-muted);
  }
  .event-mobile-workspace-event-switch {
    display: inline-flex;
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .event-mobile-workspace-event-card-link:hover .event-mobile-workspace-event-switch, .event-mobile-workspace-event-card-link:focus-visible .event-mobile-workspace-event-switch {
    background-color: var(--color-shell-surface-active);
    color: var(--color-shell-text);
  }
  .event-mobile-workspace-event-switch svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .event-mobile-workspace-close {
    margin-left: auto;
    display: flex;
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-shell-border);
    background-color: var(--color-shell-surface);
    padding: calc(var(--spacing) * 0);
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #8EA0FF 45%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-brand-400) 45%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
  }
  .event-mobile-workspace-close svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: currentcolor;
  }
  .event-mobile-workspace-panel section {
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .event-mobile-workspace-panel section:last-child {
    margin-top: auto;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-shell-border);
    padding-top: calc(var(--spacing) * 4);
  }
  .event-mobile-workspace-panel h2 {
    padding-inline: calc(var(--spacing) * 3);
    padding-bottom: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-shell-subtle);
    text-transform: uppercase;
  }
  .event-mobile-workspace-panel p {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-text);
  }
  .event-mobile-workspace-panel a, .event-mobile-workspace-panel button {
    display: flex;
    width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 10px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-shell-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      background-color: var(--color-shell-surface-hover);
    }
    &:focus-visible {
      color: var(--color-shell-text);
    }
  }
  .event-mobile-workspace-panel a.is-active {
    background-color: var(--color-shell-surface-active);
    color: var(--color-shell-text);
  }
  .event-mobile-workspace-panel a svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .event-mobile-workspace-panel form {
    margin: calc(var(--spacing) * 0);
  }
  .event-mobile-workspace-panel button {
    color: color-mix(in srgb, #B42318 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-danger-text) 85%, transparent);
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
  }
  .event-mobile-workspace-panel .event-mobile-workspace-close {
    margin-left: auto;
    height: calc(var(--spacing) * 9);
    width: calc(var(--spacing) * 9);
    justify-content: center;
    padding: calc(var(--spacing) * 0);
    color: var(--color-shell-muted);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shell-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-shell-text);
      }
    }
  }
  .event-mobile-tabs {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
    overflow-x: auto;
  }
  .event-mobile-tabs a {
    height: calc(var(--spacing) * 9);
    flex-shrink: 0;
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .event-mobile-tabs a.is-active {
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .event-mobile-subnav {
    min-width: calc(var(--spacing) * 0);
    overflow-x: hidden;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-block: calc(var(--spacing) * 2);
    @media (width >= 64rem) {
      display: none;
    }
  }
  .event-mobile-subnav .event-mobile-tabs {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(0,1fr));
    gap: calc(var(--spacing) * 1);
    overflow: visible;
  }
  .event-mobile-subnav .event-mobile-tabs a {
    display: flex;
    height: calc(var(--spacing) * 10);
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .btn {
    display: inline-flex;
    min-height: calc(var(--spacing) * 10);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      opacity: 55%;
    }
  }
  .btn-primary {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-primary);
    background-color: var(--color-app-primary);
    color: var(--color-app-primary-contrast);
    --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);
    --tw-shadow-color: color-mix(in srgb, #5147E8 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-brand-600) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-primary-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-primary-hover);
      }
    }
  }
  .btn-primary:hover {
    background-image: none;
  }
  .btn-secondary {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .btn-danger {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-danger-border);
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(93.6% 0.032 17.717) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-red-100) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #B42318 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-app-danger-text) 30%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-red-100);
      }
    }
  }
  .btn-ghost-primary {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, #5147E8 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 20%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #5147E8 35%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-app-primary) 35%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-active);
      }
    }
  }
  .offline-page {
    min-height: 100vh;
    background-color: var(--color-app-bg);
    color: var(--color-app-text);
  }
  .offline-shell {
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 8);
  }
  .offline-card {
    width: 100%;
    max-width: var(--container-lg);
    border-radius: 18px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 8);
    --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-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .offline-status-dot {
    margin-bottom: calc(var(--spacing) * 6);
    display: inline-flex;
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-warning-text);
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(8px + 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);
    --tw-ring-color: var(--color-app-warning-bg);
  }
  .offline-kicker {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    color: var(--color-app-primary-text);
    text-transform: uppercase;
  }
  .offline-card h1 {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
  }
  .offline-card p:not(.offline-kicker) {
    margin-top: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: calc(var(--spacing) * 7);
    line-height: calc(var(--spacing) * 7);
    color: var(--color-app-muted);
  }
  .offline-actions {
    margin-top: calc(var(--spacing) * 8);
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .offline-navigation-notice {
    position: fixed;
    bottom: calc(var(--spacing) * 5);
    left: calc(1 / 2 * 100%);
    z-index: 80;
    display: grid;
    width: calc(100% - 2rem);
    max-width: var(--container-md);
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    grid-template-columns: minmax(0,1fr) auto;
    column-gap: calc(var(--spacing) * 4);
    row-gap: calc(var(--spacing) * 1);
    border-radius: 14px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-warning-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 4);
    color: var(--color-app-text);
    --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-shadow-color: color-mix(in srgb, oklch(86.9% 0.022 252.894) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-300) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .offline-navigation-notice strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .offline-navigation-notice p {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .offline-navigation-notice button {
    grid-row: span 2 / span 2;
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-leading: 1;
    line-height: 1;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .brand-accent {
    background-image: var(--app-brand-gradient);
  }
  .icon-btn {
    display: inline-flex;
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .icon-btn-danger {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, #FECDCA 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-danger-border) 40%, transparent);
    }
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-danger-border);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
  }
  .form-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .form-action-group {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .form-stack {
    display: grid;
    gap: calc(var(--spacing) * 4);
  }
  .chip {
    display: inline-flex;
    align-items: center;
    border-radius: 5px;
    background-color: var(--color-app-border);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
  }
  .chip-subtle {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border-strong);
    background-color: var(--color-app-surface);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .status-pill {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .status-pill-success {
    border-color: color-mix(in srgb, #75E0A7 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-success-border) 40%, transparent);
    }
    background-color: var(--color-app-success-bg);
    color: var(--color-app-success-text);
  }
  .status-pill-warning {
    border-color: color-mix(in srgb, #FEDF89 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-warning-border) 50%, transparent);
    }
    background-color: var(--color-app-warning-bg);
    color: var(--color-app-warning-text);
  }
  .status-pill-danger {
    border-color: color-mix(in srgb, #FECDCA 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-danger-border) 50%, transparent);
    }
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
  }
  .submission-link-deadline {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: color-mix(in srgb, #64748B 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-muted) 80%, transparent);
    }
  }
  .submission-link-deadline.is-closed {
    color: var(--color-app-danger-text);
  }
  .category-pill {
    border-color: var(--category-color, #6672F7);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in srgb, var(--category-color, #6672F7) 45%, transparent);
    }
    background-color: var(--category-color, #6672F7);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in srgb, var(--category-color, #6672F7) 12%, white);
    }
    color: var(--category-color, #6672F7);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--category-color, #6672F7) 74%, #111827);
    }
    display: inline-flex;
    max-width: 100%;
    align-items: center;
    border-radius: 999px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .category-pill-fallback {
    border-color: var(--color-app-border-strong);
    background-color: var(--color-app-surface);
    color: var(--color-app-muted);
  }
  select.category-color-select {
    background-image: radial-gradient(circle, var(--category-color, #6672F7) 0 5px, transparent 5.5px), linear-gradient(45deg, transparent 50%, var(--color-app-muted) 50%), linear-gradient(135deg, var(--color-app-muted) 50%, transparent 50%);
    background-position: 14px 50%, calc(100% - 18px) calc(50% + 1px), calc(100% - 13px) calc(50% + 1px);
    background-size: 12px 12px, 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    text-indent: calc(1rem + 5px);
    padding-left: calc(var(--spacing) * 3);
  }
  select.category-color-select option {
    text-indent: 0;
  }
  .page-header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      align-items: center;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .page-action-group {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      width: auto;
    }
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .page-action-group .btn {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .page-action-group > .btn {
    min-width: calc(var(--spacing) * 0);
  }
  .page-action-menu {
    position: relative;
    min-width: calc(var(--spacing) * 0);
  }
  .page-action-menu > summary {
    list-style-type: none;
  }
  .page-action-menu > summary::-webkit-details-marker {
    display: none;
  }
  .page-action-menu-trigger {
    width: 100%;
    -webkit-user-select: none;
    user-select: none;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .page-action-menu-trigger svg:last-child {
    margin-left: calc(var(--spacing) * 1);
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .page-action-menu[open] .page-action-menu-trigger {
    border-color: var(--color-app-primary-hover);
    background-color: var(--color-app-primary-hover);
  }
  .page-action-menu-panel {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: calc(var(--spacing) * 0);
    z-index: 30;
    display: grid;
    width: min(18rem, calc(100vw - 2rem));
    gap: calc(var(--spacing) * 1);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border-strong);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 2);
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    --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);
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 20%, transparent) var(--tw-shadow-alpha), transparent);
    --tw-ring-color: color-mix(in oklab, var(--color-slate-900) 5%, transparent);
  }
  .page-action-menu-panel button, .page-action-menu-panel a {
    display: grid;
    width: 100%;
    cursor: pointer;
    gap: calc(var(--spacing) * 1);
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    text-align: left;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .page-action-menu-item-title {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .page-action-menu-item-description {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .event-workspace-page .page-header {
    display: flex;
  }
  .event-workspace-page .page-header.has-page-action {
    gap: calc(var(--spacing) * 4);
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      align-items: center;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .event-workspace-page .page-header.has-page-action > div {
    display: block;
  }
  .event-workspace-page .page-header.has-page-action .btn {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  @media (min-width: 640px) {
    .page-header.has-page-action .page-action-group, .event-workspace-page .page-header.has-page-action .page-action-group {
      display: flex;
      width: auto;
      flex-direction: row;
      align-items: center;
      gap: 1rem;
    }
    .page-header.has-page-action .page-action-group > .btn, .page-header.has-page-action .page-action-menu, .page-header.has-page-action .page-action-menu-trigger, .event-workspace-page .page-header.has-page-action .page-action-group > .btn, .event-workspace-page .page-header.has-page-action .page-action-menu, .event-workspace-page .page-header.has-page-action .page-action-menu-trigger {
      width: auto;
      flex: 0 0 auto;
    }
  }
  .page-tabs {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    overflow-x: auto;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 1);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .page-tabs a, .page-tabs button {
    position: relative;
    flex-shrink: 0;
    border-radius: 9px;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .page-tabs a::after, .page-tabs button::after {
    content: "";
    position: absolute;
    inset-inline: calc(var(--spacing) * 4);
    bottom: calc(var(--spacing) * 0);
    height: calc(var(--spacing) * 0.5);
    background-color: transparent;
  }
  .page-tabs a.is-active, .page-tabs button.is-active {
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, #E9EDFF 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-brand-100) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .page-tabs a.is-active::after, .page-tabs button.is-active::after {
    background-color: transparent;
  }
  .section-switcher {
    display: none;
    width: fit-content;
    max-width: 100%;
    min-width: calc(var(--spacing) * 0);
    align-items: center;
    gap: calc(var(--spacing) * 2);
    overflow-x: auto;
    border-radius: 0;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    @media (width >= 40rem) {
      display: flex;
    }
  }
  .section-switcher a {
    position: relative;
    display: inline-flex;
    min-height: calc(var(--spacing) * 10);
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      border-color: var(--color-app-border-hover);
    }
    &:focus-visible {
      background-color: var(--color-app-surface-hover);
    }
    &:focus-visible {
      color: var(--color-app-text);
    }
  }
  .section-switcher a svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: currentcolor;
  }
  .section-switcher a.is-active {
    border-color: color-mix(in srgb, #5147E8 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 30%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, #E9EDFF 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-brand-100) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .section-tab-count {
    display: inline-flex;
    min-width: calc(var(--spacing) * 6);
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, currentcolor 15%, transparent);
    }
    background-color: color-mix(in srgb, #fff 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .page-section-select {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      display: none;
    }
  }
  .page-section-select label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .page-section-select select {
    min-height: calc(var(--spacing) * 11);
    width: 100%;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-inline: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    --tw-outline-style: none;
    outline-style: none;
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .shared-links-tabs {
    display: none;
    @media (width >= 40rem) {
      display: flex;
    }
  }
  .workspace-tabs-shell-buttons {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
    padding-bottom: calc(var(--spacing) * 0);
  }
  .workspace-tabs-shell-buttons .section-switcher {
    width: fit-content;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    overflow: visible;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
  }
  .workspace-tabs-shell-buttons .section-switcher a {
    min-height: calc(var(--spacing) * 10);
    border-radius: 9px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2);
    color: var(--color-app-muted);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .workspace-tabs-shell-buttons .section-switcher a.is-active {
    border-color: color-mix(in srgb, #5147E8 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 35%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, #E9EDFF 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-brand-100) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .section-header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 0);
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      align-items: flex-end;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .event-workspace-page .section-header {
    gap: calc(var(--spacing) * 2);
  }
  .event-workspace-page .section-header p {
    display: none;
    @media (width >= 40rem) {
      display: block;
    }
  }
  .section-header h2 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
  }
  .section-header p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .section-action-row {
    display: flex;
    min-height: calc(var(--spacing) * 11);
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      justify-content: space-between;
    }
  }
  .section-action-row > div {
    display: grid;
    min-height: calc(var(--spacing) * 11);
    align-content: center;
    gap: calc(var(--spacing) * 1);
  }
  .section-action-row h2 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .section-action-row p {
    max-width: var(--container-2xl);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .section-action-row .btn {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .section-action-row .page-action-menu, .section-action-row .page-action-menu-trigger {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .events-page {
    display: grid;
    gap: calc(var(--spacing) * 5);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .roles-page {
    display: grid;
    gap: calc(var(--spacing) * 5);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .team-page {
    max-width: var(--app-content-max-width);
  }
  .team-section-tabs {
    gap: calc(var(--spacing) * 2);
  }
  .team-section-heading {
    padding-top: calc(var(--spacing) * 1);
  }
  .team-account-grid {
    display: grid;
    gap: calc(var(--spacing) * 3);
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .team-account-card {
    margin-bottom: calc(var(--spacing) * 0);
    display: grid;
    cursor: pointer;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 4);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .team-account-card:has(input:checked) {
    border-color: color-mix(in srgb, #5147E8 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 45%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    --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);
    --tw-ring-color: color-mix(in srgb, #5147E8 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 15%, transparent);
    }
  }
  .team-account-card input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .team-account-card > span:last-of-type {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
  }
  .team-account-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .team-account-card small {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .team-account-icon {
    display: inline-flex;
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    color: var(--color-app-primary-text);
  }
  .team-account-icon svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .team-admin-access-note {
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding: calc(var(--spacing) * 4);
  }
  .access-rule-grid {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .access-rule-card {
    margin-bottom: calc(var(--spacing) * 0);
    display: grid;
    cursor: pointer;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 4);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .access-rule-card:has(input:checked) {
    border-color: color-mix(in srgb, #5147E8 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 45%, transparent);
    }
    background-color: var(--color-app-primary-soft);
    --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);
    --tw-ring-color: color-mix(in srgb, #5147E8 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 15%, transparent);
    }
  }
  .access-rule-card span {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1);
  }
  .access-rule-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .access-rule-card small {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .access-rule-card input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .access-event-picker {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .access-event-picker .table-search-field {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      width: 100%;
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 0);
    }
    @media (width >= 48rem) {
      width: 100%;
    }
    @media (width >= 48rem) {
      min-width: calc(var(--spacing) * 0);
    }
  }
  .access-event-list {
    display: grid;
    max-height: calc(var(--spacing) * 80);
    gap: calc(var(--spacing) * 1.5);
    overflow-y: auto;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 2);
  }
  .access-event-option {
    margin-bottom: calc(var(--spacing) * 0);
    display: grid;
    cursor: pointer;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: 9px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .access-event-option:has(input:checked) {
    background-color: var(--color-app-primary-soft);
  }
  .access-event-option span {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 0.5);
  }
  .access-event-option strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .access-event-option small {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .access-event-option input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .events-list-section {
    display: grid;
    gap: calc(var(--spacing) * 5);
  }
  .events-control-bar {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    overflow: visible;
    @media (width >= 64rem) {
      flex-direction: row;
    }
    @media (width >= 64rem) {
      align-items: center;
    }
    @media (width >= 64rem) {
      justify-content: space-between;
    }
  }
  .event-view-switch {
    display: flex;
    width: 100%;
    max-width: 100%;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 1);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 1);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      width: fit-content;
    }
    @media (width >= 64rem) {
      flex-shrink: 0;
    }
  }
  .event-view-switch a {
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .event-view-switch a.is-active {
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .events-filter-form {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    overflow: visible;
    @media (width >= 64rem) {
      flex: 1;
    }
    @media (width >= 64rem) {
      flex-wrap: nowrap;
    }
  }
  .events-filter-form .table-search-field {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      width: auto;
    }
    @media (width >= 40rem) {
      min-width: calc(var(--spacing) * 64);
    }
    @media (width >= 40rem) {
      flex: 1;
    }
    @media (width >= 64rem) {
      width: calc(var(--spacing) * 80);
    }
    @media (width >= 64rem) {
      min-width: calc(var(--spacing) * 80);
    }
    @media (width >= 64rem) {
      flex: none;
    }
  }
  .events-toolbar-meta {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
    @media (width >= 40rem) {
      width: auto;
    }
    @media (width >= 64rem) {
      margin-left: auto;
    }
    @media (width >= 64rem) {
      justify-content: flex-end;
    }
  }
  .events-month-list {
    display: grid;
    gap: calc(var(--spacing) * 6);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .event-month-section {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .event-month-heading {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    text-transform: uppercase;
  }
  .event-card-list {
    display: grid;
    gap: calc(var(--spacing) * 2.5);
  }
  .event-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-row);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        --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);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 80%, transparent) var(--tw-shadow-alpha), transparent);
        }
      }
    }
  }
  .event-card-link {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    z-index: 10;
  }
  .event-card-content {
    position: relative;
    display: grid;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 5);
    }
  }
  .event-card-copy {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 1.5);
  }
  .event-card-title {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .event-card-title h3, .event-card-title p {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .event-card-copy > p {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .event-card-date {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .event-card-date svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .event-card-actions {
    position: relative;
    z-index: 20;
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 2);
    padding-top: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      justify-content: flex-end;
    }
  }
  .event-card-actions .btn {
    min-height: calc(var(--spacing) * 10);
  }
  .event-empty-state {
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .allowance-builder {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 5);
  }
  .allowance-list {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 4);
  }
  .allowance-row {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    align-items: flex-end;
    gap: calc(var(--spacing) * 4);
    @media (width >= 48rem) {
      grid-template-columns: minmax(0,1fr) minmax(10rem,0.45fr) auto;
    }
  }
  .allowance-remove {
    display: flex;
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: color-mix(in srgb, #B42318 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-danger-text) 75%, transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FECDCA 35%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 35%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .allowance-remove svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .allowance-remove[hidden] {
    display: none;
  }
  .modal-inline-add {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-primary-text);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-primary-hover);
      }
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  [data-allowance-builder-action] {
    padding-bottom: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .modal-inline-add[hidden] {
    display: none;
  }
  .category-scope-fieldset {
    display: grid;
    gap: calc(var(--spacing) * 4);
  }
  .app-dialog .allowance-builder, .app-dialog .category-scope-fieldset {
    gap: 0;
  }
  .category-scope-heading {
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .category-scope-heading h3, .category-scope-heading strong {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .category-scope-heading p {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .category-scope-heading span {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .category-scope-options {
    min-width: calc(var(--spacing) * 0);
  }
  .category-scope-grid {
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .category-scope-grid label {
    margin-bottom: calc(var(--spacing) * 0);
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 30%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .category-scope-grid input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
  }
  .pin-reveal {
    display: inline-flex;
    height: calc(var(--spacing) * 8);
    min-width: calc(var(--spacing) * 24);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 2);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .pin-reveal-value {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    color: var(--color-app-text);
  }
  .pin-reveal-button {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .pin-reveal.pin-reveal-inline {
    height: auto;
    min-width: calc(var(--spacing) * 0);
    justify-content: flex-end;
    border-radius: 0;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 0);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: transparent;
      }
    }
  }
  .pin-reveal.pin-reveal-inline .pin-reveal-button {
    color: var(--color-app-primary-text);
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-primary-text);
      }
    }
  }
  .pin-code-entry {
    display: grid;
    gap: calc(var(--spacing) * 2);
  }
  .pin-code-entry label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .pin-code-fields {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: calc(var(--spacing) * 3);
  }
  .pin-code-fields input {
    height: calc(var(--spacing) * 16);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 0);
    text-align: center;
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    --tw-outline-style: none;
    outline-style: none;
    &::placeholder {
      color: var(--color-app-subtle);
    }
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .page-title {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .page-description {
    margin-top: calc(var(--spacing) * 1);
    max-width: var(--container-xl);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 2);
    }
  }
  .public-page-shell {
    margin-inline: auto;
    display: flex;
    min-height: 100%;
    width: 100%;
    flex-direction: column;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 8);
    }
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 10);
    }
    max-width: var(--app-content-max-width);
  }
  .public-event-topbar {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 4);
    text-align: center;
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .public-event-topbar > div {
    margin-inline: auto;
    width: 100%;
    max-width: 36rem;
  }
  .public-event-topbar h1 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .public-event-topbar p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .login-page {
    display: flex;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    background-color: var(--color-app-bg);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 8);
  }
  .login-panel {
    display: grid;
    width: 100%;
    max-width: 440px;
    gap: calc(var(--spacing) * 6);
    border-radius: 20px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 6);
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .login-panel > header {
    display: grid;
    gap: calc(var(--spacing) * 4);
    text-align: center;
  }
  .login-panel > header > svg {
    margin-inline: auto;
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
    color: var(--color-app-primary-text);
  }
  .login-panel header p {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.16em;
    letter-spacing: 0.16em;
    color: var(--color-app-subtle);
    text-transform: uppercase;
  }
  .login-panel h1 {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .login-note {
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .login-form {
    display: grid;
    gap: calc(var(--spacing) * 4);
  }
  .login-form p {
    margin: calc(var(--spacing) * 0);
    display: grid;
    gap: calc(var(--spacing) * 2);
  }
  .login-form .btn {
    margin-top: calc(var(--spacing) * 2);
    width: 100%;
  }
  .public-guestlist {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    flex: 1;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .public-guestlist .page-header {
    padding-block: calc(var(--spacing) * 1);
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 2);
    }
  }
  .public-guestlist .page-title {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .public-guestlist .page-header .btn {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .public-access-gate {
    display: flex;
    min-height: calc(100vh - 12rem);
    align-items: center;
    justify-content: center;
    padding-block: calc(var(--spacing) * 8);
  }
  .public-access-panel {
    display: grid;
    width: 100%;
    max-width: 420px;
    gap: calc(var(--spacing) * 7);
    border-radius: 16px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 6);
    text-align: center;
    --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-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .public-access-panel header {
    display: grid;
    gap: calc(var(--spacing) * 2);
  }
  .public-access-panel header span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.14em;
    letter-spacing: 0.14em;
    color: var(--color-app-muted);
    text-transform: uppercase;
  }
  .public-access-panel header h1 {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .public-access-panel header p {
    margin-inline: auto;
    max-width: var(--container-xs);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
    color: var(--color-app-muted);
  }
  .public-access-form {
    display: grid;
    gap: calc(var(--spacing) * 5);
  }
  .public-access-form .btn {
    width: 100%;
  }
  .public-access-panel > footer {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-top: calc(var(--spacing) * 5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .public-capacity-panel {
    display: grid;
    gap: calc(var(--spacing) * 4);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 70%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 5);
    }
  }
  .public-capacity-main {
    display: grid;
    gap: calc(var(--spacing) * 1);
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,1fr) auto;
    }
    @media (width >= 40rem) {
      align-items: flex-end;
    }
    @media (width >= 40rem) {
      column-gap: calc(var(--spacing) * 4);
    }
  }
  .public-capacity-main span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-subtle);
    text-transform: uppercase;
  }
  .public-capacity-main strong {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      text-align: right;
    }
  }
  .public-capacity-main p {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    @media (width >= 40rem) {
      grid-column-start: 1;
    }
  }
  .public-capacity-meter {
    height: calc(var(--spacing) * 1.5);
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-surface-active);
  }
  .public-capacity-meter span {
    display: block;
    height: 100%;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-app-primary);
  }
  .public-capacity-details {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-top: calc(var(--spacing) * 3);
  }
  .public-capacity-single {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-top: calc(var(--spacing) * 3);
  }
  .public-capacity-single strong {
    flex-shrink: 0;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .public-capacity-details summary {
    cursor: pointer;
    list-style-type: none;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .public-capacity-details summary::-webkit-details-marker {
    display: none;
  }
  .public-capacity-details > div {
    margin-top: calc(var(--spacing) * 3);
    display: grid;
    gap: calc(var(--spacing) * 2);
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .public-capacity-details p {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    column-gap: calc(var(--spacing) * 3);
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
  }
  .public-capacity-details p span {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
  }
  .public-capacity-details p strong {
    align-self: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .public-capacity-details p small {
    grid-column-start: 1;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .public-limit-message {
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, #FEDF89 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-warning-border) 50%, transparent);
    }
    background-color: var(--color-app-warning-bg);
    padding: calc(var(--spacing) * 4);
  }
  .public-limit-message strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-warning-text);
  }
  .public-limit-message p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, #B54708 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-warning-text) 75%, transparent);
    }
  }
  .public-capacity-status {
    text-align: right;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .public-guest-name {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .public-guest-name strong {
    min-width: calc(var(--spacing) * 0);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .public-guest-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 1);
  }
  .public-guest-action {
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: transparent;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .public-guest-action svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .public-guest-action-danger {
    border-color: transparent;
    background-color: transparent;
    color: color-mix(in srgb, #B42318 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-danger-text) 75%, transparent);
    }
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #FECDCA 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-app-danger-border) 70%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-danger-bg);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-danger-text);
      }
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FECDCA 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 50%, transparent);
      }
    }
  }
  @media (max-width: 767px) {
    .public-guest-table {
      min-width: calc(var(--spacing) * 0);
      border-collapse: separate;
      --tw-border-spacing-x: calc(var(--spacing) * 0);
      --tw-border-spacing-y: calc(var(--spacing) * 0);
      border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
    }
    .public-guest-table thead {
      display: none;
    }
    .public-guest-table tbody, .public-guest-table tr, .public-guest-table td {
      display: block;
    }
    .public-guest-table tbody {
      display: grid;
      gap: calc(var(--spacing) * 3);
      padding: calc(var(--spacing) * 3);
    }
    .public-guest-table tbody tr {
      border-radius: 8px;
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-app-border-soft);
      background-color: var(--color-app-surface-row);
      padding: calc(var(--spacing) * 4);
    }
    .public-guest-table tbody tr.table-empty-row {
      border-style: var(--tw-border-style);
      border-width: 0px;
      padding: calc(var(--spacing) * 0);
    }
    .public-guest-table td {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: calc(var(--spacing) * 4);
      border-style: var(--tw-border-style);
      border-width: 0px;
      padding-inline: calc(var(--spacing) * 0);
      padding-block: calc(var(--spacing) * 3);
      text-align: right;
    }
    .public-guest-table td:first-child {
      align-items: flex-start;
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
      border-color: var(--color-app-border-soft);
      padding-top: calc(var(--spacing) * 0);
      padding-bottom: calc(var(--spacing) * 4);
      text-align: left;
    }
    .public-guest-table td:last-child {
      padding-bottom: calc(var(--spacing) * 0);
    }
    .public-guest-table td::before {
      content: attr(data-label);
      flex-shrink: 0;
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      color: var(--color-app-muted);
      text-transform: uppercase;
    }
    .public-guest-table td:first-child::before, .public-guest-table .table-empty-row td::before {
      content: none;
    }
    .public-guest-table .table-empty-row td {
      display: block;
      padding: calc(var(--spacing) * 0);
      text-align: center;
    }
    .public-guest-actions {
      justify-content: flex-end;
    }
    .public-guest-action {
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
    }
  }
  .action-menu-wrap {
    position: relative;
  }
  .action-menu {
    position: absolute;
    top: 100%;
    right: calc(var(--spacing) * 0);
    z-index: 10;
    display: grid;
    min-width: calc(var(--spacing) * 48);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
  }
  .action-menu button {
    display: block;
    width: 100%;
    text-align: left;
    color: var(--color-app-text);
  }
  .toast-stack {
    pointer-events: none;
    position: fixed;
    inset-inline: calc(var(--spacing) * 3);
    bottom: calc(var(--spacing) * 4);
    z-index: 50;
    display: grid;
    gap: calc(var(--spacing) * 2.5);
    @media (width >= 40rem) {
      inset-inline: auto;
    }
    @media (width >= 40rem) {
      right: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      bottom: calc(var(--spacing) * 6);
    }
    @media (width >= 40rem) {
      width: min(420px, calc(100vw - 3rem));
    }
  }
  .toast {
    pointer-events: auto;
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
    overflow: hidden;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 3.5);
    padding-right: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-text);
    --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-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .toast::before {
    content: "";
    position: absolute;
    inset-block: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
    width: calc(var(--spacing) * 1);
    background-color: var(--color-app-border-hover);
  }
  .toast-icon {
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border-soft);
    background-color: var(--color-app-surface);
    --tw-leading: 1;
    line-height: 1;
    color: var(--color-app-muted);
  }
  .toast-icon svg {
    display: block;
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .toast strong {
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .toast p {
    margin-top: calc(var(--spacing) * 0.5);
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .toast button {
    margin-top: calc(var(--spacing) * -1);
    display: inline-flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .toast button svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .toast-success {
    border-color: color-mix(in srgb, #75E0A7 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-success-border) 60%, transparent);
    }
    background-color: var(--color-app-surface);
  }
  .toast-success::before {
    background-color: var(--color-app-success-border);
  }
  .toast-success .toast-icon {
    border-color: color-mix(in srgb, #75E0A7 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-success-border) 35%, transparent);
    }
    background-color: var(--color-app-success-bg);
    color: var(--color-app-success-text);
  }
  .toast-error {
    border-color: color-mix(in srgb, #FECDCA 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-danger-border) 60%, transparent);
    }
    background-color: var(--color-app-surface);
  }
  .toast-error::before {
    background-color: var(--color-app-danger-border);
  }
  .toast-error .toast-icon {
    border-color: color-mix(in srgb, #FECDCA 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-danger-border) 35%, transparent);
    }
    background-color: var(--color-app-danger-bg);
    color: var(--color-app-danger-text);
  }
  .toast-warning {
    border-color: color-mix(in srgb, #FEDF89 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-warning-border) 60%, transparent);
    }
    background-color: var(--color-app-surface);
  }
  .toast-warning::before {
    background-color: var(--color-app-warning-border);
  }
  .toast-warning .toast-icon {
    border-color: color-mix(in srgb, #FEDF89 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-warning-border) 40%, transparent);
    }
    background-color: var(--color-app-warning-bg);
    color: var(--color-app-warning-text);
  }
  .toast-info, .toast-debug {
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
  }
  .toast-is-hiding {
    --tw-translate-y: calc(var(--spacing) * 2);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    opacity: 0%;
    @media (width >= 40rem) {
      --tw-translate-x: calc(var(--spacing) * 3);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    @media (width >= 40rem) {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .bulk-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .app-dialog {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    margin: auto;
    display: flex;
    max-height: calc(100dvh - 2rem);
    width: calc(100% - 2rem);
    max-width: 720px;
    flex-direction: column;
    overflow: hidden;
    border-radius: 18px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 0);
    color: var(--color-app-text);
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
    --modal-title-content-gap: 1.25rem;
    --modal-field-row-gap: 1.25rem;
    --modal-section-gap: 2rem;
    --modal-field-label-gap: 0.5rem;
    --modal-grid-column-gap: 1rem;
    --modal-flow-gap: var(--modal-field-row-gap);
  }
  .app-dialog:not([open]) {
    display: none;
  }
  .app-dialog-sm {
    max-width: 480px;
  }
  .app-dialog-md {
    max-width: 680px;
  }
  .app-dialog-lg {
    max-width: 860px;
  }
  .app-dialog-xl {
    max-width: 1040px;
  }
  .app-dialog nav {
    display: grid;
    gap: var(--modal-field-row-gap);
  }
  .app-dialog > header {
    position: sticky;
    top: calc(var(--spacing) * 0);
    z-index: 20;
    flex-shrink: 0;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 7);
    }
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 6);
    }
  }
  .app-dialog .form-actions {
    position: sticky;
    bottom: calc(var(--spacing) * 0);
    z-index: 10;
    margin-inline: calc(var(--spacing) * -5);
    flex-shrink: 0;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding-inline: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      margin-inline: calc(var(--spacing) * -7);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 7);
    }
    margin-top: var(--modal-section-gap);
    padding-top: 1rem;
    padding-bottom: max(1rem, env(safe-area-inset-bottom));
  }
  .app-dialog::backdrop {
    background-color: rgb(15 23 42 / 42%);
  }
  .app-dialog > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 6);
  }
  .app-dialog > header h2 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
    @media (width >= 40rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .app-dialog > header p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
  }
  .app-dialog > header button {
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 2.5);
    color: var(--color-app-muted);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .app-dialog > .dialog-tabs {
    margin-inline: calc(var(--spacing) * 6);
    margin-top: calc(var(--spacing) * 6);
    display: inline-flex;
    width: fit-content;
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 1);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .dialog-tabs button {
    border-radius: 8px;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .app-dialog form {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    min-width: calc(var(--spacing) * 0);
    flex: 1;
    flex-direction: column;
    gap: calc(var(--spacing) * 0);
    overflow-x: hidden;
    overflow-y: auto;
    padding-inline: calc(var(--spacing) * 5);
    padding-top: calc(var(--spacing) * 5);
    padding-bottom: calc(var(--spacing) * 0);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 7);
    }
    @media (width >= 40rem) {
      padding-top: calc(var(--spacing) * 7);
    }
  }
  .app-dialog > section {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    gap: calc(var(--spacing) * 6);
    padding: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .app-dialog form > p, .app-dialog form section > p, .app-dialog form section > div > p, .app-dialog form section > div > div > p, .app-dialog form fieldset > p, .app-dialog form > div > p {
    margin: calc(var(--spacing) * 0);
    display: grid;
    gap: var(--modal-field-label-gap);
  }
  .app-dialog form > section, .app-dialog [data-guest-single-fields], .app-dialog [data-guest-bulk-fields], .app-dialog form > div[data-guest-single-fields], .app-dialog form > div[data-guest-bulk-fields] {
    display: grid;
    gap: 0;
  }
  .app-dialog form .grid > p {
    margin: calc(var(--spacing) * 0);
    display: grid;
    gap: var(--modal-field-label-gap);
  }
  .app-dialog :where(form, section, fieldset, [data-step-panel], [data-guest-single-fields], [data-guest-bulk-fields], .allowance-builder, .category-scope-fieldset) > .modal-section-header + :not([hidden]), .app-dialog :where(form, section, fieldset, [data-step-panel], [data-guest-single-fields], [data-guest-bulk-fields], .allowance-builder, .category-scope-fieldset) > .category-scope-heading + :not([hidden]) {
    margin-top: var(--modal-title-content-gap);
  }
  .app-dialog :where(form, section, fieldset, [data-step-panel], [data-guest-single-fields], [data-guest-bulk-fields], .category-scope-fieldset) > :is(p, .modal-field-grid, .modal-field-grid-four, .modal-field-grid-color, .modal-choice-grid, .modal-checkbox-card, .modal-helper-text, .bulk-import-preview) + :is(p, .modal-field-grid, .modal-field-grid-four, .modal-field-grid-color, .modal-checkbox-card, .modal-helper-text, .bulk-import-preview) {
    margin-top: var(--modal-field-row-gap);
  }
  .app-dialog input[type="hidden"] + :is(p, .modal-field-grid, .modal-field-grid-four, .modal-field-grid-color, .modal-checkbox-card, .private-custom-fields) {
    margin-top: var(--modal-field-row-gap);
  }
  .app-dialog :where(form, section, fieldset, [data-step-panel], [data-guest-single-fields], [data-guest-bulk-fields]) > :is(p, .modal-field-grid, .modal-field-grid-four, .modal-field-grid-color, .modal-choice-grid, .modal-checkbox-card, .modal-helper-text, .bulk-import-preview, .form-stack, .allowance-list, .category-scope-options) + :is(.modal-section-header, .allowance-builder, .category-scope-fieldset) {
    margin-top: var(--modal-section-gap);
  }
  .app-dialog .allowance-list + [data-allowance-builder-action] {
    margin-top: var(--modal-title-content-gap);
  }
  .app-dialog .allowance-list {
    gap: var(--modal-field-row-gap);
  }
  .app-dialog .form-stack:not(form) {
    gap: var(--modal-field-row-gap);
  }
  .app-dialog input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .app-dialog select, .app-dialog textarea {
    min-height: calc(var(--spacing) * 11);
    border-radius: 10px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-input);
    padding-inline: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 40%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .app-dialog select.category-color-select {
    padding-right: calc(var(--spacing) * 10);
    padding-left: calc(var(--spacing) * 3);
  }
  .private-custom-fields {
    display: grid;
    margin-top: var(--modal-field-row-gap);
    gap: var(--modal-field-row-gap);
  }
  .private-custom-fields:empty {
    display: none;
  }
  .private-custom-fields:not(:has(> p)) {
    display: none;
  }
  .app-dialog .private-custom-fields > p {
    margin: calc(var(--spacing) * 0);
    display: grid;
    gap: var(--modal-field-label-gap);
  }
  .app-dialog input[type="color"] {
    height: calc(var(--spacing) * 10);
    width: 100%;
  }
  .app-dialog input[type="color"]::-webkit-color-swatch {
    border: 0;
  }
  .app-dialog input[type="color"]::-moz-color-swatch {
    border: 0;
  }
  .app-dialog textarea {
    min-height: calc(var(--spacing) * 28);
  }
  .modal-field-grid {
    display: grid;
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    column-gap: var(--modal-grid-column-gap);
    row-gap: var(--modal-field-row-gap);
  }
  .modal-field-grid > p, .modal-field-grid-four > p, .modal-field-grid-color > p {
    margin: calc(var(--spacing) * 0);
    display: grid;
    gap: var(--modal-field-label-gap);
  }
  .modal-field-grid-four {
    display: grid;
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    column-gap: var(--modal-grid-column-gap);
    row-gap: var(--modal-field-row-gap);
  }
  .modal-field-grid-color {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.5rem;
    column-gap: var(--modal-grid-column-gap);
    row-gap: var(--modal-field-row-gap);
  }
  .modal-choice-grid {
    display: grid;
    gap: calc(var(--spacing) * 4);
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .submission-deadline .modal-choice-grid {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .modal-checkbox-card {
    margin-bottom: calc(var(--spacing) * 0);
    display: grid;
    cursor: pointer;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: calc(var(--spacing) * 4);
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 4);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #5147E8 45%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-app-primary) 45%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-primary-soft);
      }
    }
  }
  .modal-checkbox-card:has(input:checked) {
    border-color: color-mix(in srgb, #5147E8 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 45%, transparent);
    }
    background-color: var(--color-app-primary-soft);
  }
  .modal-checkbox-card:has(input:checked):hover {
    border-color: color-mix(in srgb, #5147E8 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-app-primary) 45%, transparent);
    }
    background-color: var(--color-app-primary-soft);
  }
  .modal-checkbox-card input {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .modal-checkbox-card strong {
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .modal-checkbox-card span, .modal-checkbox-card small {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .app-dialog label {
    margin-bottom: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
  }
  .app-dialog label span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: color-mix(in srgb, #64748B 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-app-muted) 70%, transparent);
    }
  }
  .modal-error-box {
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-danger-border);
    background-color: var(--color-app-danger-bg);
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-danger-text);
    margin-bottom: var(--modal-field-row-gap);
  }
  .modal-error-box strong {
    display: block;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-danger-text);
  }
  .modal-error-box ul {
    margin-top: calc(var(--spacing) * 2);
    display: grid;
    gap: calc(var(--spacing) * 1);
  }
  .modal-error-box li {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .app-dialog .modal-confirm-text {
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
    color: var(--color-app-muted);
  }
  .app-dialog .modal-confirm-text strong {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .app-dialog input[aria-invalid="true"]:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .app-dialog select[aria-invalid="true"], .app-dialog textarea[aria-invalid="true"] {
    border-color: var(--color-app-danger-border);
    &:focus {
      border-color: var(--color-app-danger-border);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FECDCA 25%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-danger-border) 25%, transparent);
      }
    }
  }
  .app-dialog fieldset[aria-invalid="true"] .category-scope-options {
    border-color: var(--color-app-danger-border);
  }
  .app-dialog .modal-checkbox-card span {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .app-dialog .modal-checkbox-card strong {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .app-dialog .modal-checkbox-card small {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .app-dialog .category-scope-grid label span, .app-dialog .category-scope-heading span {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .app-dialog p {
    margin: calc(var(--spacing) * 0);
  }
  .app-dialog [data-step-panel] {
    display: grid;
    gap: 0;
  }
  .app-dialog [hidden] {
    display: none !important;
  }
  .modal-section-header {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-template-columns: repeat(1, minmax(0, 1fr));
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,1fr) auto;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .modal-section-header h3 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-app-text);
  }
  .modal-section-header p {
    display: none;
  }
  .modal-helper-text {
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  @media (max-width: 639px) {
    .app-dialog {
      display: flex;
      flex-direction: column;
      inset: 0.75rem;
      margin: 0 auto;
      width: calc(100% - 1.5rem);
      max-width: none;
      height: calc(100dvh - 1.5rem);
      max-height: calc(100dvh - 1.5rem);
      overflow: hidden;
      border-radius: 20px;
    }
    .app-dialog > header {
      min-height: 4.25rem;
    }
    .app-dialog > header button {
      flex-shrink: 0;
    }
    .app-dialog form {
      padding-bottom: 0;
    }
    .app-dialog .form-actions {
      margin-inline: -1.25rem;
      margin-top: auto;
      padding: 1.25rem;
      padding-bottom: max(1.25rem, env(safe-area-inset-bottom));
    }
    .app-dialog .form-actions .btn {
      flex: 1 1 0;
      min-width: 0;
      justify-content: center;
      padding-inline: 0.75rem;
    }
    .app-dialog .form-actions [data-close-modal] {
      display: none;
    }
    .app-dialog .form-actions:has(> .form-action-group) {
      display: grid;
      grid-template-columns: 1fr;
      align-items: stretch;
    }
    .app-dialog .form-actions:has(> .form-action-group) > .btn {
      width: 100%;
    }
    .app-dialog .form-actions:has(> .form-action-group) > .form-action-group {
      display: flex;
      width: 100%;
      gap: 0.75rem;
    }
    .app-dialog .form-actions:has(> .form-action-group) > .form-action-group .btn {
      flex: 1 1 0;
    }
  }
  .bulk-import-preview {
    display: grid;
    gap: calc(var(--spacing) * 4);
  }
  .form-help {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    color: var(--color-app-muted);
  }
  .bulk-review-count {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .bulk-review-count strong {
    color: var(--color-app-text);
  }
  .bulk-import-preview-table {
    width: 100%;
    table-layout: fixed;
  }
  .bulk-import-preview-table tbody tr {
    cursor: default;
  }
  .bulk-import-preview-table td {
    min-width: calc(var(--spacing) * 44);
    text-align: left;
  }
  .bulk-import-preview-table td:last-child {
    text-align: left;
  }
  .bulk-column-mapping-section {
    min-width: 100%;
    background-color: var(--color-app-surface);
    padding-bottom: calc(var(--spacing) * 3);
  }
  .bulk-column-mapping-bar {
    display: grid;
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
  }
  .bulk-column-mapping-control {
    min-width: calc(var(--spacing) * 0);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 3);
    text-align: left;
  }
  .bulk-column-mapping-control > select {
    min-height: calc(var(--spacing) * 10);
    width: 100%;
    border-radius: 8px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .bulk-review-column-label {
    margin-bottom: calc(var(--spacing) * 1.5);
    display: block;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-muted);
    text-transform: none;
  }
  .bulk-column-mapping-control.is-ignored, .bulk-import-preview-table td.is-ignored {
    background-color: var(--color-app-surface-raised);
  }
  .bulk-import-preview-table td.is-ignored input {
    color: var(--color-app-muted);
  }
  .bulk-import-preview-table input {
    width: 100%;
    min-width: calc(var(--spacing) * 0);
    border-radius: 8px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-app-border);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-input);
      }
    }
    &:focus {
      border-color: var(--color-app-primary);
    }
    &:focus {
      background-color: var(--color-app-input-focus);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #5147E8 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-app-primary) 10%, transparent);
      }
    }
  }
  .bulk-review-data-frame {
    overflow: hidden;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
  }
  .bulk-review-table-wrap {
    max-height: 24rem;
    overflow: auto;
  }
  .app-drawer {
    height: 100%;
    width: 440px;
    overflow: auto;
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-panel);
    padding: calc(var(--spacing) * 0);
    color: var(--color-app-text);
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-900) 15%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .drawer-header {
    background: var(--app-modal-header-bg);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: calc(var(--spacing) * 6);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border-soft);
    padding: calc(var(--spacing) * 6);
  }
  .drawer-header h2 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .drawer-header p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .drawer-close {
    display: inline-flex;
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-app-text);
      }
    }
  }
  .drawer-section {
    margin: calc(var(--spacing) * 5);
    display: grid;
    gap: calc(var(--spacing) * 4);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 5);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .drawer-section h3 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .drawer-section > div > p {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .drawer-actions {
    display: grid;
    gap: calc(var(--spacing) * 3);
  }
  .drawer-actions .btn, .drawer-actions form, .drawer-actions form .btn {
    width: 100%;
  }
  .detail-list {
    display: grid;
    gap: calc(var(--spacing) * 0);
    overflow: hidden;
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
  }
  .detail-list dt {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-muted);
    text-transform: uppercase;
  }
  .detail-list dd {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border-soft);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .detail-list dt:last-of-type, .detail-list dd:last-of-type {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .step-progress {
    height: calc(var(--spacing) * 0.5);
    width: 100%;
    background-color: var(--color-app-surface);
  }
  .step-progress span {
    display: block;
    height: 100%;
    background-color: var(--color-app-primary);
    width: 33.333%;
  }
  .metric-card {
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 3);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .metric-icon {
    margin-bottom: calc(var(--spacing) * 3);
    display: inline-flex;
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background-color: var(--color-app-primary-soft);
    color: var(--color-app-primary-text);
  }
  .metric-card p {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-app-subtle);
    text-transform: uppercase;
  }
  .metric-card strong {
    margin-top: calc(var(--spacing) * 1);
    display: block;
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .metrics-panel {
    overflow: hidden;
    border-radius: 8px;
    background-color: transparent;
  }
  .metrics-panel summary {
    display: flex;
    cursor: pointer;
    list-style-type: none;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .metrics-panel summary::-webkit-details-marker {
    display: none;
  }
  .metrics-panel .metrics-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .metrics-panel summary small {
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border-soft);
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-app-muted);
  }
  .metrics-chevron {
    display: flex;
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--color-app-muted);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-app-surface-hover);
      }
    }
  }
  .metrics-panel[open] .metrics-chevron {
    rotate: 180deg;
    color: var(--color-app-text);
  }
  .metrics-panel[open] summary {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-color: var(--color-app-border-soft);
    background-color: var(--color-app-surface);
  }
  .metrics-panel summary:hover {
    background-color: var(--color-app-surface-hover);
  }
  .metrics-panel > div {
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .metrics-panel:not([open]) summary {
    border-radius: 8px;
  }
  .checkin-dialog {
    max-width: 640px;
  }
  .checkin-status-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 5);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface);
    padding: calc(var(--spacing) * 5);
    --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);
    --tw-shadow-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 60%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .checkin-status-card p {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-subtle);
    text-transform: uppercase;
  }
  .checkin-status-card span {
    margin-top: calc(var(--spacing) * 1);
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-app-muted);
  }
  .checkin-status-card strong {
    flex-shrink: 0;
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .checkin-field-list {
    display: grid;
    gap: calc(var(--spacing) * 3);
    border-radius: 12px;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-app-border);
    background-color: var(--color-app-surface-raised);
    padding: calc(var(--spacing) * 3);
  }
  .checkin-status-card + .checkin-field-list {
    margin-top: var(--modal-field-row-gap);
  }
  .checkin-field-list p {
    margin-bottom: calc(var(--spacing) * 0);
    display: grid;
    gap: calc(var(--spacing) * 0.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    @media (width >= 40rem) {
      grid-template-columns: minmax(0,0.4fr) minmax(0,1fr);
    }
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .checkin-field-list span {
    color: var(--color-app-muted);
  }
  .checkin-field-list strong {
    min-width: calc(var(--spacing) * 0);
    text-align: left;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-app-text);
  }
  .checkin-actions {
    flex-direction: column;
    align-items: stretch;
    @media (width >= 40rem) {
      flex-direction: row;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .checkin-action-buttons {
    display: grid;
    gap: calc(var(--spacing) * 3);
    @media (width >= 40rem) {
      display: flex;
    }
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .checkin-actions .btn {
    width: 100%;
    @media (width >= 40rem) {
      width: auto;
    }
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-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-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-border-spacing-x {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-spacing-y {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@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-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-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-font-weight: initial;
      --tw-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-tracking: initial;
      --tw-leading: initial;
      --tw-border-spacing-x: 0;
      --tw-border-spacing-y: 0;
    }
  }
}
