focus-flow/apps/focus_flow_flutter/lib/theme/focus_flow_tokens.dart

121 lines
3.3 KiB
Dart

/// Defines Focus Flow Tokens styling for the FocusFlow Flutter UI.
library;
import 'package:flutter/material.dart';
/// Shared visual constants for the FocusFlow Flutter app.
abstract final class FocusFlowTokens {
/// Root application background color.
static const appBackground = Color(0xFF070811);
/// Border color for the app frame.
static const appFrameBorder = Color(0xFF3B3D4E);
/// Sidebar background color.
static const sidebarBackground = Color(0xFF090A14);
/// Standard panel background color.
static const panelBackground = Color(0xFF11121D);
/// Elevated panel background color.
static const elevatedPanel = Color(0xFF181724);
/// Translucent panel color for soft surfaces.
static const glassPanel = Color(0x662A1025);
/// Stronger translucent panel color for selected surfaces.
static const glassPanelStrong = Color(0x992A1025);
/// Timeline grid line color.
static const gridLine = Color(0x243B3D4E);
/// Timeline rail color.
static const rail = Color(0xFF7D7F91);
/// Subtle border color for controls and panels.
static const subtleBorder = Color(0xFF3A3A4A);
/// Active navigation border color.
static const navBorder = Color(0xFFB72D82);
/// Primary accent color.
static const accentMagenta = Color(0xFFFF5BA8);
/// Primary text color.
static const textPrimary = Color(0xFFF7F2FA);
/// Muted text color.
static const textMuted = Color(0xFFBBB5C8);
/// Faint text color.
static const textFaint = Color(0xFF8E889D);
/// Text color for completed task labels.
static const completedText = Color(0xFF8F8A99);
/// Accent color for flexible tasks.
static const flexibleGreen = Color(0xFF4BE064);
/// Accent color for required tasks.
static const requiredPink = Color(0xFFFF4E7D);
/// Accent color for appointment tasks.
static const appointmentBlue = Color(0xFF38A8FF);
/// Accent color for rest and free-slot surfaces.
static const restPurple = Color(0xFFB45CFF);
/// Accent color for completed tasks.
static const completedGray = Color(0xFF777482);
/// Warning accent color.
static const warningYellow = Color(0xFFFFCC66);
/// Fixed sidebar width.
static const sidebarWidth = 250.0;
/// Horizontal gutter for main app content.
static const mainGutter = 32.0;
/// Width of the timeline time rail.
static const timelineRailWidth = 120.0;
/// Horizontal padding inside timeline cards.
static const cardHorizontalPadding = 18.0;
/// Border radius for the outer app frame.
static const appFrameRadius = 8.0;
/// Border radius for navigation items.
static const navRadius = 8.0;
/// Border radius for required-task banners.
static const bannerRadius = 8.0;
/// Border radius for timeline cards.
static const cardRadius = 12.0;
/// Border radius for task selection modals.
static const modalRadius = 8.0;
/// Border radius for compact controls.
static const smallButtonRadius = 8.0;
/// Font size for page titles.
static const pageTitleSize = 40.0;
/// Font size for timeline card titles.
static const cardTitleSize = 24.0;
/// Font size for timeline card metadata.
static const cardMetaSize = 16.0;
/// Font size for sidebar navigation labels.
static const sidebarNavSize = 16.0;
/// Font size for modal titles.
static const modalTitleSize = 26.0;
/// Font size for modal action buttons.
static const modalButtonSize = 18.0;
}