@import "tailwindcss";

@plugin 'tailwindcss-animate';

@custom-variant dark (&:is(.dark *));

@theme inline {
 --color-background: var(--background);
 --color-foreground: var(--foreground);
 --font-sans: var(--font-montserrat-sans);
 --font-serif: var(--font-geist-serif);
 --color-sidebar-ring: var(--sidebar-ring);
 --color-sidebar-border: var(--sidebar-border);
 --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
 --color-sidebar-accent: var(--sidebar-accent);
 --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
 --color-sidebar-primary: var(--sidebar-primary);
 --color-sidebar-foreground: var(--sidebar-foreground);
 --color-sidebar: var(--sidebar);
 --color-chart-5: var(--chart-5);
 --color-chart-4: var(--chart-4);
 --color-chart-3: var(--chart-3);
 --color-chart-2: var(--chart-2);
 --color-chart-1: var(--chart-1);
 --color-ring: var(--ring);
 --color-input: var(--input);
 --color-border: var(--border);
 --color-destructive: var(--destructive);
 --color-accent-foreground: var(--accent-foreground);
 --color-accent: var(--accent);
 --color-muted-foreground: var(--muted-foreground);
 --color-muted: var(--muted);
 --color-secondary-foreground: var(--secondary-foreground);
 --color-secondary: var(--secondary);
 --color-primary-foreground: var(--primary-foreground);
 --color-primary: var(--primary);
 --color-popover-foreground: var(--popover-foreground);
 --color-popover: var(--popover);
 --color-card-foreground: var(--card-foreground);
 --color-card: var(--card);
 --color-steadfast: var(--steadfast);
 --radius-sm: calc(var(--radius) - 4px);
 --radius-md: calc(var(--radius) - 2px);
 --radius-lg: var(--radius);
 --radius-xl: calc(var(--radius) + 4px);

 --text-xs: calc(var(--font-size) - 4px);
 --text-sm: calc(var(--font-size) - 2px);
 --text-base: calc(var(--font-size));
 --text-lg: calc(var(--font-size) + 4px);
 --text-xl: calc(var(--font-size) + 6px);
 --text-2xl: calc(var(--font-size) + 8px);
}

:root {
 --radius: 0.625rem;
 /* --sidebar-width: 16rem; */
 --card: oklch(1 0 0);
 --card-foreground: oklch(0.145 0 0);
 --popover: oklch(1 0 0);
 --popover-foreground: oklch(0.145 0 0);
 --primary: oklch(0.205 0 0);
 --primary-foreground: oklch(0.985 0 0);
 --secondary: oklch(0.97 0 0);
 --secondary-foreground: oklch(0.205 0 0);
 --muted: oklch(0.97 0 0);
 --muted-foreground: oklch(0.556 0 0);
 --accent: oklch(0.97 0 0);
 --accent-foreground: oklch(0.205 0 0);
 --destructive: oklch(0.577 0.245 27.325);
 --border: oklch(0.922 0 0);
 --input: oklch(0.922 0 0);
 --ring: oklch(0.708 0 0);
 --chart-1: oklch(0.646 0.222 41.116);
 --chart-2: oklch(0.6 0.118 184.704);
 --chart-3: oklch(0.398 0.07 227.392);
 --chart-4: oklch(0.828 0.189 84.429);
 --chart-5: oklch(0.769 0.188 70.08);
 --radius: 0.625rem;
 --font-size: 1rem;
 --sidebar: oklch(0.985 0 0);
 --sidebar-foreground: oklch(0.145 0 0);
 --sidebar-primary: oklch(0.205 0 0);
 --sidebar-primary-foreground: oklch(0.985 0 0);
 --sidebar-accent: oklch(0.97 0 0);
 --sidebar-accent-foreground: oklch(0.205 0 0);
 --sidebar-border: oklch(0.922 0 0);
 --sidebar-ring: oklch(0.708 0 0);
 --background: oklch(1 0 0);
 --foreground: oklch(0.145 0 0);
 --steadfast: #32a386;
}

.dark {
 --background: oklch(0.145 0 0);
 --foreground: oklch(0.985 0 0);
 --card: oklch(0.205 0 0);
 --card-foreground: oklch(0.985 0 0);
 --popover: oklch(0.205 0 0);
 --popover-foreground: oklch(0.985 0 0);
 --primary: oklch(0.922 0 0);
 --primary-foreground: oklch(0.205 0 0);
 --secondary: oklch(0.269 0 0);
 --secondary-foreground: oklch(0.985 0 0);
 --muted: oklch(0.269 0 0);
 --muted-foreground: oklch(0.708 0 0);
 --accent: oklch(0.269 0 0);
 --accent-foreground: oklch(0.985 0 0);
 --destructive: oklch(0.704 0.191 22.216);
 --border: oklch(1 0 0 / 10%);
 --input: oklch(1 0 0 / 15%);
 --ring: oklch(0.556 0 0);
 --chart-1: oklch(0.488 0.243 264.376);
 --chart-2: oklch(0.696 0.17 162.48);
 --chart-3: oklch(0.769 0.188 70.08);
 --chart-4: oklch(0.627 0.265 303.9);
 --chart-5: oklch(0.645 0.246 16.439);
 --sidebar: oklch(0.205 0 0);
 --sidebar-foreground: oklch(0.985 0 0);
 --sidebar-primary: oklch(0.985 0 0);
 --sidebar-primary-foreground: oklch(0.269 0 0);
 --sidebar-accent: oklch(0.269 0 0);
 --sidebar-accent-foreground: oklch(0.985 0 0);
 --sidebar-border: oklch(1 0 0 / 10%);
 --sidebar-ring: oklch(0.556 0 0);
 --steadfast: #32a386;
}

@media print {
 @page {
  size: A4;
  margin: 12mm;
 }
 /* Remove app chrome in print */
 .print\:hidden {
  display: none !important;
 }
 /* Make background white on print pages */
 html,
 body {
  background: #fff !important;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
 }
 /* Remove shadows/borders for clean paper */
 .print\:shadow-none {
  box-shadow: none !important;
 }
 .print\:p-0 {
  padding: 0 !important;
 }
 .print\:rounded-none {
  border-radius: 0 !important;
 }
 /* Hide everything by default */
 body * {
  visibility: hidden !important;
 }
 /* Only show the invoice block */
 #invoice-root,
 #invoice-root * {
  visibility: visible !important;
 }
 #invoice-root {
  position: absolute;
  inset: 0;
  margin: 0;
  break-after: page;
  break-before: page;
 }
}

@layer base {
 * {
  @apply border-border outline-ring/50 dark:border-border/50;
 }
 :root {
  --sidebar-width: 16rem;
 }
 *,
 ::after,
 ::before,
 ::backdrop,
 ::file-selector-button {
  border-color: var(--color-gray-200, currentcolor);
 }
 body {
  @apply bg-background text-foreground scroll-smooth;
 }
 .container {
  @apply mx-auto px-5 md:px-10 py-10 sm:py-20 xl:max-w-5xl!;
 }

 /* Chrome, Safari, Edge, Opera */
 input::-webkit-outer-spin-button,
 input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
 }

 /* Firefox */
 input[type="number"] {
  -moz-appearance: textfield;
 }

 .print-footer {
  bottom: 0mm; /* distance from bottom page edge */
  right: 0mm;
  z-index: 9999;
  font-size: 12px;
  line-height: 1;
 }

 @media screen and (max-width: 1024px) {
  :root {
   --sidebar-width: 13rem;
  }
 }
}

@layer base {
}
