// // ScenicQueueTokens.swift // suixinkan // import UIKit /// 排队管理模块视觉令牌,对齐 Android `ScenicQueueTokens`。 enum ScenicQueueTokens { static let pageBackground = AppColor.pageBackground static let bannerBlue = AppColor.primaryBanner static let bannerDivider = UIColor.white.withAlphaComponent(0.26) static let bannerMutedLabel = UIColor(hex: 0xC7E0FF) static let cardOutline = AppColor.cardOutline static let textSecondary = UIColor(hex: 0x6B7280) static let tagWaitingForeground = UIColor(hex: 0x10B981) static let tagWaitingBackground = UIColor(hex: 0xD1FAE5) static let tagCalledForeground = AppColor.primary static let tagCalledBackground = AppColor.infoBackground static let tagSkippedForeground = UIColor(hex: 0xC62828) static let tagSkippedBackground = UIColor(hex: 0xFFCDD2) static let tagMissRequeueForeground = UIColor(hex: 0xFA8C16) static let tagMissRequeueBackground = UIColor(hex: 0xFFF7E6) static let tagBanForeground = UIColor(hex: 0xFA8C16) static let tagBanBackground = UIColor(hex: 0xFFF7E6) static let buttonSkipBackground = UIColor(hex: 0xFFF1F2) static let buttonSkipForeground = UIColor(hex: 0xE11D48) static let buttonCompleteBackground = AppColor.infoBackground static let dialogDangerLine = UIColor(hex: 0xD32F2F) static let fieldBorderMuted = UIColor(hex: 0xE5E7EB) static let settingsMutedBlock = UIColor(hex: 0xF7F8FA) static let dialogCancelBackground = UIColor(hex: 0xEAF1F8) static let markDialogCancelBackground = UIColor(hex: 0xF0F7FF) static let markDialogDivider = UIColor(hex: 0xF0F0F0) static let markDialogStepperBackground = UIColor(hex: 0xF2F4F7) static let logCardBackground = UIColor(hex: 0xF7F8FA) static let timelineLine = UIColor(hex: 0xD8E8FF) static let timelineDot = UIColor(hex: 0x1677FF) static let radiusContentSheetTop: CGFloat = 14 static let radiusCard: CGFloat = 12 static let radiusChip: CGFloat = 4 static let radiusPrimaryRowButton: CGFloat = 10 static let radiusThinButton: CGFloat = 8 static let radiusDialog: CGFloat = 16 static let radiusInput: CGFloat = 10 static let radiusTabContainer: CGFloat = 12 static let listItemGap: CGFloat = 10 static let listHorizontalInset: CGFloat = 12 static let bottomSaveButtonRadius: CGFloat = 12 static let markDialogRadius: CGFloat = 22 static let markDialogButtonRadius: CGFloat = 12 static let dialogHorizontalInset: CGFloat = 22 static let bannerLabelFont = UIFont.systemFont(ofSize: 12) static let bannerValueFont = UIFont.systemFont(ofSize: 30, weight: .bold) static let bannerUnitFont = UIFont.systemFont(ofSize: 12) static let tabFont = UIFont.systemFont(ofSize: 14) static let tabSelectedFont = UIFont.systemFont(ofSize: 14, weight: .semibold) static let ticketIdFont = UIFont.systemFont(ofSize: 20, weight: .bold) static let statusChipFont = UIFont.systemFont(ofSize: 11, weight: .medium) static let rowLabelFont = UIFont.systemFont(ofSize: 13) static let phoneMaskedFont = UIFont.systemFont(ofSize: 15, weight: .medium) static let metaLabelFont = UIFont.systemFont(ofSize: 12) static let metaAccentFont = UIFont.systemFont(ofSize: 13, weight: .medium) static let buttonPrimaryFont = UIFont.systemFont(ofSize: 15, weight: .medium) static let buttonSecondaryFont = UIFont.systemFont(ofSize: 14, weight: .medium) static let emptyStateFont = UIFont.systemFont(ofSize: 14) static let dialogTitleFont = UIFont.systemFont(ofSize: 17, weight: .semibold) static let dialogTicketFont = UIFont.systemFont(ofSize: 28, weight: .bold) static let dialogButtonFont = UIFont.systemFont(ofSize: 15, weight: .medium) static let settingsSectionTitleFont = UIFont.systemFont(ofSize: 16, weight: .semibold) static let settingsFieldLabelFont = UIFont.systemFont(ofSize: 13) static let settingsHintFont = UIFont.systemFont(ofSize: 12) static let settingsRowTitleFont = UIFont.systemFont(ofSize: 14) static let settingsSaveButtonFont = UIFont.systemFont(ofSize: 16, weight: .medium) }