@import "tailwindcss";
@import "./frappe-gantt.css";

:root {
  --app-bg: #f3f6fb;
  --app-surface: #ffffff;
  --app-surface-soft: #eef3fa;
  --app-border: #b9cbe0;
  --app-text: #0f172a;
  --app-muted: #334155;
  --app-accent: #0369a1;
  --app-accent-strong: #075985;
}

@theme inline {
  --color-background: var(--app-bg);
  --color-foreground: var(--app-text);
  --font-sans: var(--font-body);
  --font-mono: var(--font-code);
}

@media (prefers-color-scheme: dark) {
  :root {
    --app-bg: #0f172a;
    --app-surface: #111827;
    --app-surface-soft: #172034;
    --app-border: #334155;
    --app-text: #e5e7eb;
    --app-muted: #cbd5e1;
    --app-accent: #38bdf8;
    --app-accent-strong: #0ea5e9;
  }
}

body {
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% -20%, rgba(56, 189, 248, 0.18), transparent 35%),
    radial-gradient(circle at 90% 20%, rgba(14, 165, 233, 0.12), transparent 30%),
    var(--app-bg);
  color: var(--app-text);
  font-family: var(--font-body), sans-serif;
  font-size: 15px;
  line-height: 1.5;
}

h1,
h2,
h3 {
  font-family: var(--font-heading), sans-serif;
}

button,
select,
input,
textarea {
  font: inherit;
}

input:not([type='range']):not([type='checkbox']),
select,
textarea {
  background-color: var(--app-surface);
  color: var(--app-text);
  border-color: var(--app-border);
}

input::placeholder,
textarea::placeholder {
  color: color-mix(in srgb, var(--app-muted) 75%, transparent);
}

input[type='date'] {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--app-accent) 65%, white);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }
}

.bar-wrapper.task-backlog .bar {
  fill: #94a3b8;
}

.bar-wrapper.task-in-progress .bar {
  fill: #0ea5e9;
}

.bar-wrapper.task-blocked .bar {
  fill: #fb7185;
}

.bar-wrapper.task-done .bar {
  fill: #34d399;
}

.gantt-shell,
.gantt-shell .gantt-container {
  background-color: var(--app-surface) !important;
}

.gantt-shell .gantt .grid-background {
  fill: var(--app-surface) !important;
}

.gantt-shell .gantt-container .grid-header {
  background-color: var(--app-surface) !important;
}
