@import 'tailwindcss';
@import '@manacore/shared-tailwind/themes.css';

/* Scan shared packages for Tailwind classes */
@source "../../../packages/shared/src";
@source "../../../../../packages/shared-ui/src";
@source "../../../../../packages/shared-theme-ui/src";
@source "../../../../../packages/shared-theme-ui/src/components";
@source "../../../../../packages/shared-theme-ui/src/pages";

:root {
	/* Todo App - Purple/Violet Theme */
	--color-primary: #8b5cf6;
	--color-primary-hover: #7c3aed;
	--color-primary-light: #a78bfa;
	--color-primary-dark: #6d28d9;

	--color-secondary: #f3e8ff;
	--color-secondary-hover: #e9d5ff;

	--color-accent: #c084fc;
	--color-accent-hover: #a855f7;

	/* Task priorities */
	--color-priority-low: #22c55e;
	--color-priority-medium: #eab308;
	--color-priority-high: #f97316;
	--color-priority-urgent: #ef4444;

	/* Status colors */
	--color-pending: #6b7280;
	--color-in-progress: #3b82f6;
	--color-completed: #22c55e;
	--color-cancelled: #ef4444;
}

/* Dark mode overrides */
:root.dark {
	--color-secondary: #1e1b4b;
	--color-secondary-hover: #2e1065;
}

/* Task item transitions */
.task-item {
	transition:
		transform 0.15s ease,
		box-shadow 0.15s ease;
}

.task-item:hover {
	transform: translateY(-1px);
}

/* Checkbox animations */
.task-checkbox {
	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		transform 0.1s ease;
}

.task-checkbox:active {
	transform: scale(0.9);
}

/* Subtask list */
.subtask-list {
	list-style: none;
	padding-left: 0;
}

/* Due date styling */
.due-today {
	color: var(--color-priority-high);
}

.due-overdue {
	color: var(--color-priority-urgent);
}

/* Priority indicators */
.priority-indicator {
	width: 4px;
	border-radius: 2px;
}

.priority-low {
	background-color: var(--color-priority-low);
}

.priority-medium {
	background-color: var(--color-priority-medium);
}

.priority-high {
	background-color: var(--color-priority-high);
}

.priority-urgent {
	background-color: var(--color-priority-urgent);
}

/* Drag and drop */
.dragging {
	opacity: 0.5;
}

.drop-target {
	border: 2px dashed var(--color-primary);
	background-color: var(--color-secondary);
}

/* Quick add input */
.quick-add-input {
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}

.quick-add-input:focus {
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.2);
}

/* Project sidebar */
.project-item {
	transition: background-color 0.15s ease;
}

.project-item:hover {
	background-color: var(--color-secondary);
}

.project-item.active {
	background-color: var(--color-secondary);
	border-left: 3px solid var(--color-primary);
}
