@font-face {
    font-family: 'JetBrains Mono';
    src: url('/static/fonts/jet-brains-mono/JetBrainsMono-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
    /* --radius-selector: 0.375rem; */
    /* --radius-field: 0.5rem; */
    /* --radius-box: 0.5rem; */
    /* --size-selector: 0.25rem; */
    /* --size-field: 0.25rem; */
    /* --border: 1px; */
    /* --depth: 0; */
    /* --noise: 0; */
}


[data-theme="corporate"] {
  color-scheme: light;
  --color-base-100: oklch(100% 0 0);
  --color-base-200: oklch(93% 0 0);
  --color-base-300: oklch(86% 0 0);
  --color-base-content: oklch(22.389% 0.031 278.072);
  --color-primary: oklch(39% 0.09 240.876);
  --color-primary-content: oklch(100% 0 0);
  --color-secondary: oklch(55% 0.046 257.417);
  --color-secondary-content: oklch(100% 0 0);
  --color-accent: oklch(60% 0.118 184.704);
  --color-accent-content: oklch(100% 0 0);
  --color-neutral: oklch(0% 0 0);
  --color-neutral-content: oklch(100% 0 0);
  --color-info: oklch(60% 0.126 221.723);
  --color-info-content: oklch(100% 0 0);
  --color-success: oklch(62% 0.194 149.214);
  --color-success-content: oklch(100% 0 0);
  --color-warning: oklch(85% 0.199 91.936);
  --color-warning-content: oklch(0% 0 0);
  --color-error: oklch(70% 0.191 22.216);
  --color-error-content: oklch(0% 0 0);
  --radius-selector: 0.25rem;
  --radius-field: 0.25rem;
  --radius-box: 0.25rem;
  --size-selector: 0.25rem;
  --size-field: 0.25rem;
  --border: 1px;
  --depth: 0;
  --noise: 0;
}


/* Font Family */
body {
    font-family: 'Barlow', sans-serif !important;
}

h1, h2, h3, h4 {
    font-family: 'Platypi', serif !important;
    font-weight: 500;
}

/* Smooth transitions for interactive elements */
/* Specific transitions for interactive elements */
a, 
button, 
.btn, 
input, 
select, 
textarea, 
.card,
.menu a {
    transition: all 0.2s ease-in-out;
}

/* Hover effects for cards */
/* .card:hover {
    transform: translateY(-4px);
} */

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: var(--color-base-200);
}

::-webkit-scrollbar-thumb {
    background: var(--color-primary);
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: color-mix(in oklch, var(--color-primary) 85%, black);
}

/* Animations */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-in {
    animation: fadeIn 0.5s ease-out;
}

/* HTMX loading states */
.htmx-swapping {
    opacity: 0;
    transition: opacity 0.2s ease-out;
}

.htmx-settling {
    opacity: 1;
}

/* Lucide icons: render inline with text */
.lucide {
    display: inline;
    vertical-align: text-bottom;
    width: 1em;
    height: 1em;
}

.fieldset {
    font-size: var(--text-sm);
}
.fieldset-legend {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.font-mono {
    font-family: 'JetBrains Mono', monospace !important;
}

/* Letter/template content: serif font with reasonable tab stops */
.letter-content {
    font-family: 'EB Garamond', serif;
    font-size: 1rem;
    tab-size: 16;
    -moz-tab-size: 16;
    line-height: 1.7;
}

.blur {
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.link {
    text-decoration-line: none;
}