/* Ukoli Tickets — dark theme token overrides + status colors.
   Dark mode keeps the warm, earthy family: near-black surfaces, cream text,
   beige/brown muted accents. Applied by setting [data-theme="dark"] on the
   app container; CSS custom properties cascade into the DS components. */

[data-theme="dark"] {
  /* Surfaces — warm near-blacks, not neutral grey */
  --surface-page: #18170F;
  --surface-card: #232017;
  --surface-sunken: #131209;
  --surface-raised: #2b2719;
  --surface-inverse: #FCF9F3;
  --surface-brand: var(--green-500);
  --surface-brand-soft: #2f3a25;
  --surface-accent-soft: #38301f;

  /* Text */
  --text-strong: #FBF6EC;
  --text-body: #EAE2D2;
  --text-muted: #C0AE96;
  --text-subtle: #8c7c64;
  --text-on-brand: #FCF9F3;
  --text-on-dark: #FCF9F3;
  --text-brand: #b6c79f;

  /* Borders */
  --border-subtle: rgba(245, 235, 218, 0.10);
  --border-default: rgba(245, 235, 218, 0.16);
  --border-strong: #6f5f49;
  --border-brand: var(--green-300);

  /* Interactive — lift the green a touch for contrast on dark */
  --action: #66785a;
  --action-hover: #748867;
  --action-press: #5a6b4f;
  --action-soft: #2f3a25;
  --action-soft-hover: #3a4730;

  --focus-ring: oklch(70% 0.07 130 / 0.55);

  /* Warm-tinted shadows go darker so cards read against near-black */
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.45), 0 1px 2px rgba(0,0,0,0.3);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.45), 0 2px 4px rgba(0,0,0,0.3);
  --shadow-lg: 0 12px 28px rgba(0,0,0,0.5), 0 4px 10px rgba(0,0,0,0.35);
  --shadow-xl: 0 24px 48px rgba(0,0,0,0.55), 0 8px 16px rgba(0,0,0,0.4);
}

/* The app paints its own page background from the (possibly overridden) token */
.uk-app {
  background: var(--surface-page);
  color: var(--text-body);
  transition: background var(--dur-base) var(--ease-standard), color var(--dur-base) var(--ease-standard);
}

/* Hide scrollbars inside the phone for a clean device look */
.uk-noscroll::-webkit-scrollbar { width: 0; height: 0; }
.uk-noscroll { scrollbar-width: none; }
