tera-system-ui 0.1.63 → 0.1.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/COMPONENT_API.md +2 -0
- package/dist/components/accordion/Accordion.d.ts +24 -0
- package/dist/components/accordion/Accordion.js +4 -0
- package/dist/components/accordion/components/Accordion.svelte +2 -8
- package/dist/components/accordion/components/AccordionContent.svelte +5 -12
- package/dist/components/accordion/components/AccordionItem.svelte +3 -9
- package/dist/components/accordion/components/AccordionTrigger.svelte +5 -15
- package/dist/components/ai/ChatBubble.svelte +35 -0
- package/dist/components/ai/ChatBubble.svelte.d.ts +12 -0
- package/dist/components/ai/PromptInput.svelte +58 -0
- package/dist/components/ai/PromptInput.svelte.d.ts +13 -0
- package/dist/components/ai/StreamText.svelte +41 -0
- package/dist/components/ai/StreamText.svelte.d.ts +11 -0
- package/dist/components/ai/SuggestionChips.svelte +34 -0
- package/dist/components/ai/SuggestionChips.svelte.d.ts +10 -0
- package/dist/components/ai/ThinkingLoader.svelte +34 -0
- package/dist/components/ai/ThinkingLoader.svelte.d.ts +11 -0
- package/dist/components/ai/index.d.ts +5 -0
- package/dist/components/ai/index.js +5 -0
- package/dist/components/alert/Alert.svelte +47 -0
- package/dist/components/alert/Alert.svelte.d.ts +15 -0
- package/dist/components/alert/index.d.ts +1 -0
- package/dist/components/alert/index.js +1 -0
- package/dist/components/avatar/Avatar.svelte +9 -25
- package/dist/components/badge/Badge.d.ts +52 -0
- package/dist/components/badge/Badge.js +22 -0
- package/dist/components/badge/Badge.svelte +22 -0
- package/dist/components/badge/Badge.svelte.d.ts +4 -0
- package/dist/components/badge/index.d.ts +2 -0
- package/dist/components/badge/index.js +1 -0
- package/dist/components/brand-logo/BrandLogo.svelte +12 -10
- package/dist/components/button/Button.d.ts +2 -2
- package/dist/components/button/Button.js +12 -12
- package/dist/components/button/Button.svelte +7 -34
- package/dist/components/card/Card.d.ts +68 -0
- package/dist/components/card/Card.js +28 -0
- package/dist/components/card/Card.svelte +33 -0
- package/dist/components/card/Card.svelte.d.ts +4 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/card/index.js +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +25 -4
- package/dist/components/checkbox/Checkbox.js +4 -0
- package/dist/components/checkbox/Checkbox.svelte +13 -16
- package/dist/components/checkbox/Checkbox.svelte.d.ts +2 -2
- package/dist/components/combobox/Combobox.d.ts +45 -9
- package/dist/components/combobox/Combobox.js +5 -7
- package/dist/components/combobox/Combobox.svelte +226 -8
- package/dist/components/combobox/Combobox.svelte.d.ts +2 -2
- package/dist/components/combobox/index.d.ts +1 -1
- package/dist/components/command/components/command-empty.svelte +3 -8
- package/dist/components/command/components/command-group.svelte +3 -13
- package/dist/components/command/components/command-input.svelte +5 -13
- package/dist/components/command/components/command-item.svelte +3 -9
- package/dist/components/command/components/command-link-item.svelte +3 -8
- package/dist/components/command/components/command-list.svelte +3 -8
- package/dist/components/command/components/command-separator.svelte +3 -8
- package/dist/components/command/components/command-shortcut.svelte +2 -10
- package/dist/components/command/components/command.svelte +29 -42
- package/dist/components/date-range-picker/DateRangePicker.svelte +490 -0
- package/dist/components/date-range-picker/DateRangePicker.svelte.d.ts +4 -0
- package/dist/components/date-range-picker/DateRangePicker.types.d.ts +38 -0
- package/dist/components/date-range-picker/DateRangePicker.types.js +1 -0
- package/dist/components/date-range-picker/index.d.ts +2 -0
- package/dist/components/date-range-picker/index.js +1 -0
- package/dist/components/dialog/Dialog.d.ts +43 -121
- package/dist/components/dialog/Dialog.js +1 -39
- package/dist/components/dialog/Dialog.svelte +103 -113
- package/dist/components/dialog/Dialog.svelte.d.ts +1 -2
- package/dist/components/dialog/dialog.scss +21 -24
- package/dist/components/drawer/Drawer.svelte +63 -0
- package/dist/components/drawer/Drawer.svelte.d.ts +16 -0
- package/dist/components/drawer/index.d.ts +1 -0
- package/dist/components/drawer/index.js +1 -0
- package/dist/components/dropdown-menu/DropdownMenu.d.ts +51 -24
- package/dist/components/dropdown-menu/DropdownMenu.js +1 -15
- package/dist/components/dropdown-menu/components/DropdownMenu.svelte +36 -34
- package/dist/components/dropdown-menu/components/DropdownMenu.svelte.d.ts +1 -1
- package/dist/components/dropdown-menu/components/DropdownMenuGroup.svelte +8 -12
- package/dist/components/dropdown-menu/components/DropdownMenuGroup.svelte.d.ts +2 -4
- package/dist/components/dropdown-menu/components/DropdownMenuHeader.svelte +11 -12
- package/dist/components/dropdown-menu/components/DropdownMenuHeader.svelte.d.ts +2 -4
- package/dist/components/dropdown-menu/components/DropdownMenuItem.svelte +27 -30
- package/dist/components/dropdown-menu/components/DropdownMenuItem.svelte.d.ts +1 -1
- package/dist/components/dropdown-menu/components/DropdownMenuSeparator.svelte +9 -11
- package/dist/components/dropdown-menu/components/DropdownMenuSeparator.svelte.d.ts +2 -4
- package/dist/components/fonts/TeraFontMono.svelte +4 -4
- package/dist/components/fonts/TeraFontMono.svelte.d.ts +1 -0
- package/dist/components/fonts/TeraFontSansSerif.svelte +4 -4
- package/dist/components/fonts/TeraFontSansSerif.svelte.d.ts +1 -1
- package/dist/components/header/Header.svelte +6 -9
- package/dist/components/header/header.scss +1 -1
- package/dist/components/icons/IconArrowBigRightFilled.svelte +3 -7
- package/dist/components/icons/IconBook.svelte +3 -6
- package/dist/components/icons/IconBookmarkPlus.svelte +3 -6
- package/dist/components/icons/IconCalculator.svelte +3 -6
- package/dist/components/icons/IconCheck.svelte +3 -6
- package/dist/components/icons/IconChevronDown.svelte +3 -6
- package/dist/components/icons/IconCoin.svelte +3 -6
- package/dist/components/icons/IconCoinConvert.svelte +2 -5
- package/dist/components/icons/IconCopy.svelte +3 -6
- package/dist/components/icons/IconCopyCheckFilled.svelte +3 -6
- package/dist/components/icons/IconHamburger.svelte +3 -6
- package/dist/components/icons/IconLanguage.svelte +3 -6
- package/dist/components/icons/IconLoader2.svelte +3 -6
- package/dist/components/icons/IconLogout.svelte +3 -6
- package/dist/components/icons/IconMoon.svelte +3 -6
- package/dist/components/icons/IconPointFilled.svelte +3 -6
- package/dist/components/icons/IconSearch.svelte +3 -6
- package/dist/components/icons/IconSettings.svelte +3 -6
- package/dist/components/icons/IconSun.svelte +3 -6
- package/dist/components/icons/IconSwitchHorizontal.svelte +3 -6
- package/dist/components/icons/IconSwitchVertical.svelte +3 -6
- package/dist/components/icons/IconTransform.svelte +3 -6
- package/dist/components/icons/IconX.svelte +3 -6
- package/dist/components/input/Input.d.ts +2 -2
- package/dist/components/input/Input.js +10 -10
- package/dist/components/input/Input.svelte +10 -26
- package/dist/components/label/Label.d.ts +2 -2
- package/dist/components/label/Label.js +2 -2
- package/dist/components/label/Label.svelte +4 -12
- package/dist/components/language-picker-button/LanguagePickerButton.svelte +23 -42
- package/dist/components/light-dark-toggle/LightDarkToggle.svelte +21 -26
- package/dist/components/marketing/FeatureCard.svelte +37 -0
- package/dist/components/marketing/FeatureCard.svelte.d.ts +13 -0
- package/dist/components/marketing/PricingCard.svelte +48 -0
- package/dist/components/marketing/PricingCard.svelte.d.ts +15 -0
- package/dist/components/marketing/StatBlock.svelte +14 -0
- package/dist/components/marketing/StatBlock.svelte.d.ts +10 -0
- package/dist/components/marketing/TestimonialCard.svelte +24 -0
- package/dist/components/marketing/TestimonialCard.svelte.d.ts +12 -0
- package/dist/components/marketing/index.d.ts +4 -0
- package/dist/components/marketing/index.js +4 -0
- package/dist/components/popover/Popover.d.ts +32 -13
- package/dist/components/popover/Popover.js +1 -7
- package/dist/components/popover/Popover.svelte +40 -158
- package/dist/components/popover/Popover.svelte.d.ts +2 -2
- package/dist/components/popover-responsive/PopoverResponsive.d.ts +18 -7
- package/dist/components/popover-responsive/PopoverResponsive.js +1 -7
- package/dist/components/popover-responsive/PopoverResponsive.svelte +25 -87
- package/dist/components/popover-responsive/PopoverResponsive.svelte.d.ts +2 -11
- package/dist/components/select/Select.d.ts +60 -23
- package/dist/components/select/Select.js +14 -35
- package/dist/components/select/Select.svelte +157 -28
- package/dist/components/select/Select.svelte.d.ts +2 -3
- package/dist/components/select/index.d.ts +1 -1
- package/dist/components/side-navigation/SideNavigation.svelte +73 -96
- package/dist/components/side-navigation/SideNavigationItem.svelte +2 -2
- package/dist/components/side-navigation/SideNavigationLayout.svelte +3 -5
- package/dist/components/side-navigation/sidenav.scss +17 -13
- package/dist/components/skeleton/Skeleton.svelte +48 -0
- package/dist/components/skeleton/Skeleton.svelte.d.ts +12 -0
- package/dist/components/skeleton/index.d.ts +1 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/slider/Slider.d.ts +25 -15
- package/dist/components/slider/Slider.js +1 -7
- package/dist/components/slider/Slider.svelte +38 -164
- package/dist/components/slider/Slider.svelte.d.ts +1 -1
- package/dist/components/spinner/Spinner.svelte +39 -0
- package/dist/components/spinner/Spinner.svelte.d.ts +10 -0
- package/dist/components/spinner/index.d.ts +1 -0
- package/dist/components/spinner/index.js +1 -0
- package/dist/components/star-rating/StarRating.svelte +33 -49
- package/dist/components/switch/Switch.d.ts +19 -4
- package/dist/components/switch/Switch.js +4 -0
- package/dist/components/switch/Switch.svelte +13 -17
- package/dist/components/switch/Switch.svelte.d.ts +2 -2
- package/dist/components/table/Table.svelte +68 -0
- package/dist/components/table/Table.svelte.d.ts +40 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table/index.js +1 -0
- package/dist/components/tabs/Tabs.svelte.d.ts +45 -16
- package/dist/components/tabs/Tabs.svelte.js +8 -18
- package/dist/components/tabs/components/Tabs.svelte +27 -33
- package/dist/components/tabs/components/Tabs.svelte.d.ts +1 -1
- package/dist/components/tabs/components/TabsContent.svelte +13 -36
- package/dist/components/tabs/components/TabsContent.svelte.d.ts +2 -5
- package/dist/components/tabs/components/TabsItem.svelte +43 -32
- package/dist/components/tabs/components/TabsItem.svelte.d.ts +2 -5
- package/dist/components/tabs/components/TabsList.svelte +90 -58
- package/dist/components/tabs/components/TabsList.svelte.d.ts +2 -4
- package/dist/components/tera-ui-context/TeraUiContext.svelte +13 -26
- package/dist/components/text-area/TextArea.d.ts +2 -2
- package/dist/components/text-area/TextArea.js +9 -9
- package/dist/components/text-area/TextArea.svelte +41 -65
- package/dist/components/toast/ToastContainer.svelte +50 -0
- package/dist/components/toast/ToastContainer.svelte.d.ts +18 -0
- package/dist/components/toast/index.d.ts +3 -0
- package/dist/components/toast/index.js +2 -0
- package/dist/components/toast/toast.svelte.d.ts +22 -0
- package/dist/components/toast/toast.svelte.js +18 -0
- package/dist/components/tooltip/Tooltip.d.ts +23 -0
- package/dist/components/tooltip/Tooltip.js +1 -0
- package/dist/components/tooltip/Tooltip.svelte +30 -0
- package/dist/components/tooltip/Tooltip.svelte.d.ts +4 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/index.js +1 -0
- package/dist/components/user-avatar-with-menu/UserAvatarWithMenu.svelte +48 -69
- package/dist/index.d.ts +19 -2
- package/dist/index.js +12 -0
- package/dist/llms/accordion.md +90 -0
- package/dist/llms/ai.md +110 -0
- package/dist/llms/alert.md +29 -0
- package/dist/llms/avatar.md +34 -0
- package/dist/llms/badge.md +31 -0
- package/dist/llms/brand-logo.md +30 -0
- package/dist/llms/button.md +37 -0
- package/dist/llms/card.md +32 -0
- package/dist/llms/checkbox.md +35 -0
- package/dist/llms/colors.md +161 -0
- package/dist/llms/combobox.md +40 -0
- package/dist/llms/command.md +7 -0
- package/dist/llms/date-range-picker.md +36 -0
- package/dist/llms/dialog.md +45 -0
- package/dist/llms/drawer.md +30 -0
- package/dist/llms/dropdown-menu.md +112 -0
- package/dist/llms/fonts.md +7 -0
- package/dist/llms/header.md +26 -0
- package/dist/llms/icons.md +43 -0
- package/dist/llms/index.md +65 -0
- package/dist/llms/input.md +37 -0
- package/dist/llms/label.md +30 -0
- package/dist/llms/language-picker-button.md +30 -0
- package/dist/llms/light-dark-toggle.md +26 -0
- package/dist/llms/marketing.md +95 -0
- package/dist/llms/popover-responsive.md +32 -0
- package/dist/llms/popover.md +40 -0
- package/dist/llms/select.md +44 -0
- package/dist/llms/side-navigation.md +30 -0
- package/dist/llms/skeleton.md +28 -0
- package/dist/llms/slider.md +36 -0
- package/dist/llms/spinner.md +25 -0
- package/dist/llms/star-rating.md +31 -0
- package/dist/llms/switch.md +33 -0
- package/dist/llms/table.md +30 -0
- package/dist/llms/tabs.md +92 -0
- package/dist/llms/tera-ui-context.md +30 -0
- package/dist/llms/text-area.md +39 -0
- package/dist/llms/toast.md +7 -0
- package/dist/llms/tooltip.md +32 -0
- package/dist/llms/user-avatar-with-menu.md +28 -0
- package/dist/paraglide/README.md +71 -2
- package/dist/paraglide/messages/_index.d.ts +7 -21
- package/dist/paraglide/messages/_index.js +7 -485
- package/dist/paraglide/messages/text_account_settings.d.ts +16 -0
- package/dist/paraglide/messages/text_account_settings.js +234 -0
- package/dist/paraglide/messages/text_calces_documentation.d.ts +16 -0
- package/dist/paraglide/messages/text_calces_documentation.js +234 -0
- package/dist/paraglide/messages/text_calces_scientific_calculator.d.ts +16 -0
- package/dist/paraglide/messages/text_calces_scientific_calculator.js +234 -0
- package/dist/paraglide/messages/text_currency_converter.d.ts +16 -0
- package/dist/paraglide/messages/text_currency_converter.js +234 -0
- package/dist/paraglide/messages/text_logout.d.ts +16 -0
- package/dist/paraglide/messages/text_logout.js +234 -0
- package/dist/paraglide/messages/text_select_language.d.ts +16 -0
- package/dist/paraglide/messages/text_select_language.js +234 -0
- package/dist/paraglide/messages/text_unit_converter.d.ts +16 -0
- package/dist/paraglide/messages/text_unit_converter.js +234 -0
- package/dist/paraglide/registry.d.ts +13 -0
- package/dist/paraglide/registry.js +15 -0
- package/dist/paraglide/runtime.d.ts +242 -125
- package/dist/paraglide/runtime.js +467 -143
- package/dist/paraglide/server.d.ts +13 -20
- package/dist/paraglide/server.js +92 -40
- package/dist/stories/ComponentOverview.stories.svelte +533 -0
- package/dist/stories/ComponentOverview.stories.svelte.d.ts +6 -0
- package/dist/tera-i18n/dev-tools/translator/gpt-translator-i18n-message.js +130 -9
- package/dist/tera-i18n/dev-tools/translator/package-lock.json +14 -224
- package/dist/tera-i18n/dev-tools/translator/package.json +1 -1
- package/dist/tera-i18n/dev-tools/translator/prompt/i18n-message-translate-prompt-calculator.md +34 -0
- package/dist/tera-i18n/dev-tools/translator/prompt/i18n-message-translate-prompt-cv-maker.md +149 -0
- package/dist/tera-i18n/dev-tools/translator/prompt/i18n-message-translate-prompt-system.txt +1 -1
- package/dist/tera-i18n/projects/common/all-language-data.js +70 -13
- package/dist/tera-i18n/projects/cv-maker/messages/ar-AE.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar-EG.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar-IQ.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar-SA.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar-SD.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar-YE.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/ar.json +58 -15
- package/dist/tera-i18n/projects/cv-maker/messages/bg.json +57 -14
- package/dist/tera-i18n/projects/cv-maker/messages/bn.json +65 -22
- package/dist/tera-i18n/projects/cv-maker/messages/ca.json +54 -11
- package/dist/tera-i18n/projects/cv-maker/messages/cs.json +59 -16
- package/dist/tera-i18n/projects/cv-maker/messages/da.json +51 -8
- package/dist/tera-i18n/projects/cv-maker/messages/de.json +58 -15
- package/dist/tera-i18n/projects/cv-maker/messages/el.json +71 -28
- package/dist/tera-i18n/projects/cv-maker/messages/en-AE.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-AU.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-CA.json +51 -8
- package/dist/tera-i18n/projects/cv-maker/messages/en-GB.json +50 -7
- package/dist/tera-i18n/projects/cv-maker/messages/en-ID.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-IN.json +54 -11
- package/dist/tera-i18n/projects/cv-maker/messages/en-NZ.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-PH.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-PK.json +58 -15
- package/dist/tera-i18n/projects/cv-maker/messages/en-SA.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/en-US.json +51 -8
- package/dist/tera-i18n/projects/cv-maker/messages/en-ZA.json +52 -9
- package/dist/tera-i18n/projects/cv-maker/messages/en.json +45 -16
- package/dist/tera-i18n/projects/cv-maker/messages/es-419.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/es-AR.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/es-ES.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/es-MX.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/es.json +53 -10
- package/dist/tera-i18n/projects/cv-maker/messages/fi.json +52 -9
- package/dist/tera-i18n/projects/cv-maker/messages/fr-MA.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/fr.json +54 -11
- package/dist/tera-i18n/projects/cv-maker/messages/he.json +55 -12
- package/dist/tera-i18n/projects/cv-maker/messages/hi.json +59 -16
- package/dist/tera-i18n/projects/cv-maker/messages/hr.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/messages/hu.json +63 -20
- package/dist/tera-i18n/projects/cv-maker/messages/id.json +60 -17
- package/dist/tera-i18n/projects/cv-maker/messages/it.json +53 -10
- package/dist/tera-i18n/projects/cv-maker/messages/ja.json +62 -19
- package/dist/tera-i18n/projects/cv-maker/messages/ko.json +61 -18
- package/dist/tera-i18n/projects/cv-maker/messages/lt.json +61 -18
- package/dist/tera-i18n/projects/cv-maker/messages/lv.json +61 -18
- package/dist/tera-i18n/projects/cv-maker/messages/ms-MY.json +60 -17
- package/dist/tera-i18n/projects/cv-maker/messages/ms.json +61 -18
- package/dist/tera-i18n/projects/cv-maker/messages/nl.json +53 -10
- package/dist/tera-i18n/projects/cv-maker/messages/no.json +54 -11
- package/dist/tera-i18n/projects/cv-maker/messages/pl.json +59 -16
- package/dist/tera-i18n/projects/cv-maker/messages/pt-BR.json +58 -15
- package/dist/tera-i18n/projects/cv-maker/messages/pt-PT.json +59 -16
- package/dist/tera-i18n/projects/cv-maker/messages/pt.json +66 -23
- package/dist/tera-i18n/projects/cv-maker/messages/ro.json +52 -9
- package/dist/tera-i18n/projects/cv-maker/messages/ru.json +57 -14
- package/dist/tera-i18n/projects/cv-maker/messages/sk.json +62 -19
- package/dist/tera-i18n/projects/cv-maker/messages/sl.json +57 -14
- package/dist/tera-i18n/projects/cv-maker/messages/sq.json +59 -16
- package/dist/tera-i18n/projects/cv-maker/messages/sr.json +91 -48
- package/dist/tera-i18n/projects/cv-maker/messages/sv.json +56 -13
- package/dist/tera-i18n/projects/cv-maker/messages/sw.json +62 -19
- package/dist/tera-i18n/projects/cv-maker/messages/ta.json +72 -29
- package/dist/tera-i18n/projects/cv-maker/messages/te.json +75 -32
- package/dist/tera-i18n/projects/cv-maker/messages/th.json +62 -19
- package/dist/tera-i18n/projects/cv-maker/messages/tl.json +77 -34
- package/dist/tera-i18n/projects/cv-maker/messages/tr.json +63 -20
- package/dist/tera-i18n/projects/cv-maker/messages/uk.json +63 -20
- package/dist/tera-i18n/projects/cv-maker/messages/vi.json +64 -21
- package/dist/tera-i18n/projects/cv-maker/messages/zh-CN.json +63 -20
- package/dist/tera-i18n/projects/cv-maker/messages/zh-TW.json +58 -15
- package/dist/tera-i18n/projects/cv-maker/messages/zh.json +94 -0
- package/dist/tera-i18n/projects/cv-maker/project.inlang/settings.json +82 -68
- package/dist/tera-i18n/projects/cv-maker/supported-language.js +36 -9
- package/dist/tera-i18n/projects/mathda/messages/en.json +4 -0
- package/dist/tera-i18n/projects/mathda/messages/vi.json +4 -0
- package/dist/tera-i18n/projects/mathda/project.inlang/settings.json +15 -0
- package/dist/tera-i18n/projects/mathda/supported-language.d.ts +1 -0
- package/dist/tera-i18n/projects/mathda/supported-language.js +4 -0
- package/dist/tera-i18n/projects/tera-calculator/messages/bg.json +149 -72
- package/dist/tera-i18n/projects/tera-calculator/messages/bn.json +149 -72
- package/dist/tera-i18n/projects/tera-calculator/messages/ca.json +139 -62
- package/dist/tera-i18n/projects/tera-calculator/messages/cs.json +132 -55
- package/dist/tera-i18n/projects/tera-calculator/messages/da.json +132 -55
- package/dist/tera-i18n/projects/tera-calculator/messages/de.json +181 -104
- package/dist/tera-i18n/projects/tera-calculator/messages/el.json +145 -68
- package/dist/tera-i18n/projects/tera-calculator/messages/en-IN.json +183 -0
- package/dist/tera-i18n/projects/tera-calculator/messages/en-PH.json +183 -0
- package/dist/tera-i18n/projects/tera-calculator/messages/en-US.json +183 -0
- package/dist/tera-i18n/projects/tera-calculator/messages/en.json +187 -104
- package/dist/tera-i18n/projects/tera-calculator/messages/es.json +181 -104
- package/dist/tera-i18n/projects/tera-calculator/messages/fi.json +137 -60
- package/dist/tera-i18n/projects/tera-calculator/messages/fr.json +180 -103
- package/dist/tera-i18n/projects/tera-calculator/messages/hi.json +136 -59
- package/dist/tera-i18n/projects/tera-calculator/messages/hu.json +141 -64
- package/dist/tera-i18n/projects/tera-calculator/messages/id.json +132 -55
- package/dist/tera-i18n/projects/tera-calculator/messages/it.json +180 -103
- package/dist/tera-i18n/projects/tera-calculator/messages/ja.json +136 -59
- package/dist/tera-i18n/projects/tera-calculator/messages/ko.json +133 -56
- package/dist/tera-i18n/projects/tera-calculator/messages/lt.json +140 -63
- package/dist/tera-i18n/projects/tera-calculator/messages/lv.json +141 -64
- package/dist/tera-i18n/projects/tera-calculator/messages/ms.json +139 -62
- package/dist/tera-i18n/projects/tera-calculator/messages/nl.json +145 -68
- package/dist/tera-i18n/projects/tera-calculator/messages/no.json +131 -54
- package/dist/tera-i18n/projects/tera-calculator/messages/pl.json +134 -57
- package/dist/tera-i18n/projects/tera-calculator/messages/pt.json +180 -103
- package/dist/tera-i18n/projects/tera-calculator/messages/ro.json +136 -59
- package/dist/tera-i18n/projects/tera-calculator/messages/ru.json +180 -103
- package/dist/tera-i18n/projects/tera-calculator/messages/sk.json +135 -58
- package/dist/tera-i18n/projects/tera-calculator/messages/sl.json +139 -62
- package/dist/tera-i18n/projects/tera-calculator/messages/sq.json +148 -71
- package/dist/tera-i18n/projects/tera-calculator/messages/sr.json +141 -64
- package/dist/tera-i18n/projects/tera-calculator/messages/sv.json +134 -57
- package/dist/tera-i18n/projects/tera-calculator/messages/sw.json +152 -75
- package/dist/tera-i18n/projects/tera-calculator/messages/ta.json +159 -82
- package/dist/tera-i18n/projects/tera-calculator/messages/te.json +165 -88
- package/dist/tera-i18n/projects/tera-calculator/messages/th.json +136 -59
- package/dist/tera-i18n/projects/tera-calculator/messages/tl.json +146 -69
- package/dist/tera-i18n/projects/tera-calculator/messages/tr.json +135 -58
- package/dist/tera-i18n/projects/tera-calculator/messages/uk.json +142 -65
- package/dist/tera-i18n/projects/tera-calculator/messages/vi.json +181 -104
- package/dist/tera-i18n/projects/tera-calculator/messages/zh-CN.json +129 -52
- package/dist/tera-i18n/projects/tera-calculator/messages/zh-TW.json +135 -58
- package/dist/tera-i18n/projects/tera-calculator/project.inlang/settings.json +51 -53
- package/dist/tera-i18n/projects/tera-calculator/supported-language.js +6 -3
- package/dist/themes/tera-ui-base.css +242 -77
- package/dist/themes/theme-ai.css +100 -0
- package/dist/themes/theme-marketing.css +91 -0
- package/dist/themes/theme-professional.css +41 -0
- package/package.json +36 -29
- package/dist/paraglide/messages/ar.d.ts +0 -9
- package/dist/paraglide/messages/ar.js +0 -31
- package/dist/paraglide/messages/bg.d.ts +0 -9
- package/dist/paraglide/messages/bg.js +0 -31
- package/dist/paraglide/messages/bn.d.ts +0 -9
- package/dist/paraglide/messages/bn.js +0 -31
- package/dist/paraglide/messages/ca.d.ts +0 -9
- package/dist/paraglide/messages/ca.js +0 -31
- package/dist/paraglide/messages/cs.d.ts +0 -9
- package/dist/paraglide/messages/cs.js +0 -31
- package/dist/paraglide/messages/da.d.ts +0 -9
- package/dist/paraglide/messages/da.js +0 -31
- package/dist/paraglide/messages/de.d.ts +0 -9
- package/dist/paraglide/messages/de.js +0 -31
- package/dist/paraglide/messages/el.d.ts +0 -9
- package/dist/paraglide/messages/el.js +0 -31
- package/dist/paraglide/messages/en.d.ts +0 -9
- package/dist/paraglide/messages/en.js +0 -31
- package/dist/paraglide/messages/es.d.ts +0 -9
- package/dist/paraglide/messages/es.js +0 -31
- package/dist/paraglide/messages/fi.d.ts +0 -9
- package/dist/paraglide/messages/fi.js +0 -31
- package/dist/paraglide/messages/fr.d.ts +0 -9
- package/dist/paraglide/messages/fr.js +0 -31
- package/dist/paraglide/messages/he.d.ts +0 -9
- package/dist/paraglide/messages/he.js +0 -31
- package/dist/paraglide/messages/hi.d.ts +0 -9
- package/dist/paraglide/messages/hi.js +0 -31
- package/dist/paraglide/messages/hu.d.ts +0 -9
- package/dist/paraglide/messages/hu.js +0 -31
- package/dist/paraglide/messages/id.d.ts +0 -9
- package/dist/paraglide/messages/id.js +0 -31
- package/dist/paraglide/messages/it.d.ts +0 -9
- package/dist/paraglide/messages/it.js +0 -31
- package/dist/paraglide/messages/ja.d.ts +0 -9
- package/dist/paraglide/messages/ja.js +0 -31
- package/dist/paraglide/messages/ko.d.ts +0 -9
- package/dist/paraglide/messages/ko.js +0 -31
- package/dist/paraglide/messages/lt.d.ts +0 -9
- package/dist/paraglide/messages/lt.js +0 -31
- package/dist/paraglide/messages/lv.d.ts +0 -9
- package/dist/paraglide/messages/lv.js +0 -31
- package/dist/paraglide/messages/ms.d.ts +0 -9
- package/dist/paraglide/messages/ms.js +0 -31
- package/dist/paraglide/messages/nl.d.ts +0 -9
- package/dist/paraglide/messages/nl.js +0 -31
- package/dist/paraglide/messages/no.d.ts +0 -9
- package/dist/paraglide/messages/no.js +0 -31
- package/dist/paraglide/messages/pl.d.ts +0 -9
- package/dist/paraglide/messages/pl.js +0 -31
- package/dist/paraglide/messages/pt.d.ts +0 -9
- package/dist/paraglide/messages/pt.js +0 -31
- package/dist/paraglide/messages/ro.d.ts +0 -9
- package/dist/paraglide/messages/ro.js +0 -31
- package/dist/paraglide/messages/ru.d.ts +0 -9
- package/dist/paraglide/messages/ru.js +0 -31
- package/dist/paraglide/messages/sk.d.ts +0 -9
- package/dist/paraglide/messages/sk.js +0 -31
- package/dist/paraglide/messages/sl.d.ts +0 -9
- package/dist/paraglide/messages/sl.js +0 -31
- package/dist/paraglide/messages/sq.d.ts +0 -9
- package/dist/paraglide/messages/sq.js +0 -31
- package/dist/paraglide/messages/sr.d.ts +0 -9
- package/dist/paraglide/messages/sr.js +0 -31
- package/dist/paraglide/messages/sv.d.ts +0 -9
- package/dist/paraglide/messages/sv.js +0 -31
- package/dist/paraglide/messages/sw.d.ts +0 -9
- package/dist/paraglide/messages/sw.js +0 -31
- package/dist/paraglide/messages/ta.d.ts +0 -9
- package/dist/paraglide/messages/ta.js +0 -31
- package/dist/paraglide/messages/te.d.ts +0 -9
- package/dist/paraglide/messages/te.js +0 -31
- package/dist/paraglide/messages/th.d.ts +0 -9
- package/dist/paraglide/messages/th.js +0 -31
- package/dist/paraglide/messages/tl.d.ts +0 -9
- package/dist/paraglide/messages/tl.js +0 -31
- package/dist/paraglide/messages/tr.d.ts +0 -9
- package/dist/paraglide/messages/tr.js +0 -31
- package/dist/paraglide/messages/uk.d.ts +0 -9
- package/dist/paraglide/messages/uk.js +0 -31
- package/dist/paraglide/messages/vi.d.ts +0 -9
- package/dist/paraglide/messages/vi.js +0 -31
- package/dist/paraglide/messages/zh-CN.d.ts +0 -9
- package/dist/paraglide/messages/zh-CN.js +0 -31
- package/dist/paraglide/messages/zh-TW.d.ts +0 -9
- package/dist/paraglide/messages/zh-TW.js +0 -31
- package/dist/tera-i18n/dev-tools/translator/prompt/i18n-message-translate-prompt-cv-maker.txt +0 -21
- package/dist/tera-i18n/projects/cv-maker/project.inlang/project_id +0 -1
- package/dist/tera-i18n/projects/tera-calculator/messages/ar.json +0 -106
- package/dist/tera-i18n/projects/tera-calculator/messages/he.json +0 -106
- package/dist/tera-i18n/projects/tera-calculator/project.inlang/project_id +0 -1
- package/dist/tera-i18n/projects/tera-system-ui/project.inlang/.meta.json +0 -3
- package/dist/tera-i18n/projects/tera-system-ui/project.inlang/README.md +0 -103
- package/dist/tera-i18n/projects/tera-system-ui/project.inlang/project_id +0 -1
- package/dist/themes/tw-preset.cjs +0 -160
- package/dist/themes/tw-preset.d.cts +0 -157
|
@@ -14,64 +14,14 @@ body:has(dialog[open]) {
|
|
|
14
14
|
overflow: hidden
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
/* AntD-style Wave Animation for Buttons */
|
|
18
|
-
.btn-wave {
|
|
19
|
-
position: relative;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.btn-wave::after {
|
|
23
|
-
content: '';
|
|
24
|
-
position: absolute;
|
|
25
|
-
inset: 0;
|
|
26
|
-
border-radius: inherit;
|
|
27
|
-
opacity: 0;
|
|
28
|
-
pointer-events: none;
|
|
29
|
-
box-shadow: 0 0 0 0 var(--wave-color, var(--color-primary-600));
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
.btn-wave.wave-active::after {
|
|
33
|
-
animation: ant-wave 0.4s cubic-bezier(0.08, 0.82, 0.17, 1);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/* Wave color based on button variant */
|
|
37
|
-
.btn-wave[data-variant="primary"]::after {
|
|
38
|
-
--wave-color: var(--color-primary-600);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.btn-wave[data-variant="default"]::after,
|
|
42
|
-
.btn-wave[data-variant="dashed"]::after {
|
|
43
|
-
--wave-color: var(--color-primary-600);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.btn-wave[data-variant="text"]::after,
|
|
47
|
-
.btn-wave[data-variant="link"]::after {
|
|
48
|
-
--wave-color: transparent;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/* Danger wave color */
|
|
52
|
-
.btn-wave[data-danger="true"]::after {
|
|
53
|
-
--wave-color: var(--color-error-500);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
@keyframes ant-wave {
|
|
57
|
-
0% {
|
|
58
|
-
box-shadow: 0 0 0 0 var(--wave-color);
|
|
59
|
-
opacity: 0.4;
|
|
60
|
-
}
|
|
61
|
-
100% {
|
|
62
|
-
box-shadow: 0 0 0 6px var(--wave-color);
|
|
63
|
-
opacity: 0;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
17
|
body {
|
|
68
18
|
background: var(--color-neutral-token-1);
|
|
69
19
|
color: var(--color-neutral-token-13);
|
|
70
20
|
}
|
|
71
21
|
|
|
72
22
|
:root {
|
|
73
|
-
--font-sans: "
|
|
74
|
-
--font-mono: "Roboto Mono Variable", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New";
|
|
23
|
+
--font-sans: "Inter Variable", "ui-sans-serif", "system-ui", "sans-serif", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
24
|
+
--font-mono: "Geist Mono", "Roboto Mono Variable", "ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New";
|
|
75
25
|
}
|
|
76
26
|
|
|
77
27
|
|
|
@@ -199,6 +149,7 @@ html.dark, .dark * {
|
|
|
199
149
|
--color-success-700: rgb(24, 140, 67);
|
|
200
150
|
--color-success-800: rgb(19, 108, 52);
|
|
201
151
|
--color-success-900: rgb(14, 83, 39);
|
|
152
|
+
/* primitives — do not use in components */
|
|
202
153
|
--color-neutral-1: rgb(255, 255, 255);
|
|
203
154
|
--color-neutral-2: rgb(252, 252, 252);
|
|
204
155
|
--color-neutral-3: rgb(245, 245, 245);
|
|
@@ -222,16 +173,16 @@ html.dark, .dark * {
|
|
|
222
173
|
--color-warning-700: rgb(177, 82, 16);
|
|
223
174
|
--color-warning-800: rgb(137, 63, 12);
|
|
224
175
|
--color-warning-900: rgb(105, 48, 9);
|
|
225
|
-
--color-information-50:
|
|
226
|
-
--color-information-100: rgb(
|
|
227
|
-
--color-information-200: rgb(
|
|
228
|
-
--color-information-300: rgb(
|
|
229
|
-
--color-information-400: rgb(
|
|
230
|
-
--color-information-500: rgb(
|
|
231
|
-
--color-information-600: rgb(
|
|
232
|
-
--color-information-700: rgb(
|
|
233
|
-
--color-information-800: rgb(
|
|
234
|
-
--color-information-900: rgb(
|
|
176
|
+
--color-information-50: rgb(240, 249, 255);
|
|
177
|
+
--color-information-100: rgb(186, 230, 253);
|
|
178
|
+
--color-information-200: rgb(125, 211, 252);
|
|
179
|
+
--color-information-300: rgb(56, 189, 248);
|
|
180
|
+
--color-information-400: rgb(14, 165, 233);
|
|
181
|
+
--color-information-500: rgb(2, 132, 199); /* sky — distinct from primary */
|
|
182
|
+
--color-information-600: rgb(3, 105, 161);
|
|
183
|
+
--color-information-700: rgb(7, 89, 133);
|
|
184
|
+
--color-information-800: rgb(12, 74, 110);
|
|
185
|
+
--color-information-900: rgb(8, 47, 73);
|
|
235
186
|
--color-secondary-50: rgb(253, 237, 245);
|
|
236
187
|
--color-secondary-100: rgb(249, 198, 223);
|
|
237
188
|
--color-secondary-200: rgb(246, 171, 208);
|
|
@@ -242,8 +193,8 @@ html.dark, .dark * {
|
|
|
242
193
|
--color-secondary-700: rgb(168, 51, 109);
|
|
243
194
|
--color-secondary-800: rgb(130, 40, 84);
|
|
244
195
|
--color-secondary-900: rgb(99, 30, 64);
|
|
245
|
-
--color-brand-500:
|
|
246
|
-
--color-brand-token-5:
|
|
196
|
+
--color-brand-500: var(--color-primary-500);
|
|
197
|
+
--color-brand-token-5: var(--color-primary-500);
|
|
247
198
|
--color-neutral-token-1: rgb(255, 255, 255);
|
|
248
199
|
--color-neutral-token-2: rgb(252, 252, 252);
|
|
249
200
|
--color-neutral-token-3: rgb(245, 245, 245);
|
|
@@ -273,12 +224,12 @@ html.dark, .dark * {
|
|
|
273
224
|
|
|
274
225
|
:root.dark {
|
|
275
226
|
--color-brand-token-5: rgb(0, 111, 238);
|
|
276
|
-
--color-neutral-token-1: rgb(
|
|
227
|
+
--color-neutral-token-1: rgb(9, 9, 9); /* near-black — not pure, less harsh */
|
|
277
228
|
--color-neutral-token-2: rgb(20, 20, 20);
|
|
278
|
-
--color-neutral-token-3: rgb(
|
|
279
|
-
--color-neutral-token-4: rgb(
|
|
280
|
-
--color-neutral-token-5: rgb(
|
|
281
|
-
--color-neutral-token-6: rgb(
|
|
229
|
+
--color-neutral-token-3: rgb(32, 32, 32);
|
|
230
|
+
--color-neutral-token-4: rgb(48, 48, 48); /* wider gap — clear hover state */
|
|
231
|
+
--color-neutral-token-5: rgb(70, 70, 70); /* visible border */
|
|
232
|
+
--color-neutral-token-6: rgb(95, 95, 95);
|
|
282
233
|
--color-neutral-token-7: rgb(140, 140, 140);
|
|
283
234
|
--color-neutral-token-8: rgb(191, 191, 191);
|
|
284
235
|
--color-neutral-token-9: rgb(217, 217, 217);
|
|
@@ -299,11 +250,118 @@ html.dark, .dark * {
|
|
|
299
250
|
}
|
|
300
251
|
|
|
301
252
|
/* ============================================= */
|
|
302
|
-
/* ===
|
|
253
|
+
/* === Semantic Alias Layer (additive) === */
|
|
254
|
+
/* Convention: {role}-{modifier} — role-first, modifier describes prominence or state */
|
|
255
|
+
/* Naming influenced by: Ant Design 5 (state modifiers), GitHub Primer (subtle/muted */
|
|
256
|
+
/* scale), shadcn/ui (CSS-var-as-utility, 'default' for resting state). */
|
|
257
|
+
/* Components use ONLY these tokens — primitives stay as the underlying scale. */
|
|
258
|
+
/* ============================================= */
|
|
259
|
+
:root {
|
|
260
|
+
/* ── Surfaces (backgrounds by elevation) ─────────────────── */
|
|
261
|
+
--color-surface: var(--color-neutral-token-1); /* Page / app background */
|
|
262
|
+
--color-surface-raised: var(--color-neutral-token-2); /* Cards, panels */
|
|
263
|
+
--color-surface-sunken: var(--color-neutral-token-3); /* Inputs, disabled areas */
|
|
264
|
+
--color-surface-hover: var(--color-neutral-token-4); /* Hover / pressed neutral bg */
|
|
265
|
+
--color-surface-control: var(--color-neutral-token-1); /* Interactive control bg (button, input, checkbox) */
|
|
266
|
+
|
|
267
|
+
/* ── Borders ─────────────────────────────────────────────── */
|
|
268
|
+
--color-border-default: var(--color-neutral-token-5); /* Default border */
|
|
269
|
+
--color-border-strong: var(--color-neutral-token-6); /* Focus ring, separator */
|
|
270
|
+
|
|
271
|
+
/* ── Text (prominence scale) ─────────────────────────────── */
|
|
272
|
+
--color-text-primary: var(--color-neutral-token-13); /* Body text, headings */
|
|
273
|
+
--color-text-secondary: var(--color-neutral-token-8); /* Supporting / label text */
|
|
274
|
+
--color-text-tertiary: var(--color-neutral-token-7); /* Placeholder, hints */
|
|
275
|
+
--color-text-disabled: var(--color-neutral-token-6); /* Disabled labels */
|
|
276
|
+
|
|
277
|
+
/* ── Interactive (primary action — hover darkens, active darkest) ── */
|
|
278
|
+
--color-interactive: var(--color-primary-500); /* Base link / CTA color */
|
|
279
|
+
--color-interactive-hover: var(--color-primary-600); /* Hover: darker */
|
|
280
|
+
--color-interactive-active: var(--color-primary-700); /* Pressed: darkest */
|
|
281
|
+
--color-interactive-subtle: var(--color-primary-50); /* Ghost bg, tinted area */
|
|
282
|
+
--color-interactive-border: var(--color-primary-200); /* Subtle border on tinted bg */
|
|
283
|
+
--color-interactive-text: var(--color-primary-700); /* Readable text on tinted bg */
|
|
284
|
+
--color-interactive-on: #ffffff; /* Text/icon ON filled interactive bg */
|
|
285
|
+
--color-overlay: rgb(0 0 0 / 0.45); /* Modal / drawer backdrop scrim */
|
|
286
|
+
|
|
287
|
+
/* ── Status: Error ── subtle/muted/border/text adapt in dark mode ── */
|
|
288
|
+
--color-error-subtle: var(--color-error-50); /* Light tint bg */
|
|
289
|
+
--color-error-muted: var(--color-error-100); /* Medium tint / pressed bg */
|
|
290
|
+
--color-error-border: var(--color-error-200); /* Subtle border stroke */
|
|
291
|
+
--color-error-hover: var(--color-error-400); /* Lighter hover (softens) */
|
|
292
|
+
--color-error-default: var(--color-error-500); /* Main error color */
|
|
293
|
+
--color-error-active: var(--color-error-600); /* Pressed / active (stronger) */
|
|
294
|
+
--color-error-text: var(--color-error-700); /* Readable text on light bg */
|
|
295
|
+
|
|
296
|
+
/* ── Status: Warning ──────────────────────────────────────── */
|
|
297
|
+
--color-warning-subtle: var(--color-warning-50);
|
|
298
|
+
--color-warning-muted: var(--color-warning-100);
|
|
299
|
+
--color-warning-border: var(--color-warning-200);
|
|
300
|
+
--color-warning-hover: var(--color-warning-400);
|
|
301
|
+
--color-warning-default: var(--color-warning-500);
|
|
302
|
+
--color-warning-active: var(--color-warning-600);
|
|
303
|
+
--color-warning-text: var(--color-warning-700);
|
|
304
|
+
|
|
305
|
+
/* ── Status: Success ──────────────────────────────────────── */
|
|
306
|
+
--color-success-subtle: var(--color-success-50);
|
|
307
|
+
--color-success-muted: var(--color-success-100);
|
|
308
|
+
--color-success-border: var(--color-success-200);
|
|
309
|
+
--color-success-hover: var(--color-success-400);
|
|
310
|
+
--color-success-default: var(--color-success-500);
|
|
311
|
+
--color-success-active: var(--color-success-600);
|
|
312
|
+
--color-success-text: var(--color-success-700);
|
|
313
|
+
|
|
314
|
+
/* ── Status: Information ──────────────────────────────────── */
|
|
315
|
+
--color-information-subtle: var(--color-information-50);
|
|
316
|
+
--color-information-muted: var(--color-information-100);
|
|
317
|
+
--color-information-border: var(--color-information-200);
|
|
318
|
+
--color-information-hover: var(--color-information-400);
|
|
319
|
+
--color-information-default: var(--color-information-500);
|
|
320
|
+
--color-information-active: var(--color-information-600);
|
|
321
|
+
--color-information-text: var(--color-information-700);
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
/* Dark mode overrides — only tokens that change value in dark mode */
|
|
325
|
+
/* Scale tops at 900 (no 950 primitives defined) */
|
|
326
|
+
:root.dark {
|
|
327
|
+
--color-error-subtle: var(--color-error-900); /* darkest tint bg */
|
|
328
|
+
--color-error-muted: var(--color-error-800); /* medium tint bg */
|
|
329
|
+
--color-error-border: var(--color-error-700); /* subtle border */
|
|
330
|
+
--color-error-text: var(--color-error-400); /* lighter text for dark bg */
|
|
331
|
+
|
|
332
|
+
--color-warning-subtle: var(--color-warning-900);
|
|
333
|
+
--color-warning-muted: var(--color-warning-800);
|
|
334
|
+
--color-warning-border: var(--color-warning-700);
|
|
335
|
+
--color-warning-text: var(--color-warning-400);
|
|
336
|
+
|
|
337
|
+
--color-success-subtle: var(--color-success-900);
|
|
338
|
+
--color-success-muted: var(--color-success-800);
|
|
339
|
+
--color-success-border: var(--color-success-700);
|
|
340
|
+
--color-success-text: var(--color-success-400);
|
|
341
|
+
|
|
342
|
+
--color-information-subtle: var(--color-information-900);
|
|
343
|
+
--color-information-muted: var(--color-information-800);
|
|
344
|
+
--color-information-border: var(--color-information-700);
|
|
345
|
+
--color-information-text: var(--color-information-400);
|
|
346
|
+
|
|
347
|
+
--color-interactive-subtle: var(--color-primary-900); /* Dark tint bg */
|
|
348
|
+
--color-interactive-border: var(--color-primary-700); /* Subtle border on dark tinted bg */
|
|
349
|
+
--color-interactive-text: var(--color-primary-300); /* Readable text on dark tinted bg */
|
|
350
|
+
--color-overlay: rgb(255 255 255 / 0.12); /* Darker scrim for dark mode */
|
|
351
|
+
--color-surface-control: var(--color-neutral-token-3); /* Controls elevated above surfaces in dark mode */
|
|
352
|
+
|
|
353
|
+
/* Elevation shadows — use white glow instead of black drop shadows on dark bg */
|
|
354
|
+
--shadow-sm: 0 1px 3px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.04);
|
|
355
|
+
--shadow-md: 0 4px 12px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.06);
|
|
356
|
+
--shadow-lg: 0 12px 32px rgba(0,0,0,0.6), 0 4px 8px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.06);
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
/* ============================================= */
|
|
360
|
+
/* === TeraUI Design System === */
|
|
303
361
|
/* ============================================= */
|
|
304
362
|
/* Consistent design tokens for all components */
|
|
305
363
|
:root {
|
|
306
|
-
/* TeraUI Border Radius -
|
|
364
|
+
/* TeraUI Border Radius - uses 6px as base */
|
|
307
365
|
--tera-radius-sm: 2px;
|
|
308
366
|
--tera-radius-base: 6px;
|
|
309
367
|
--tera-radius-lg: 8px;
|
|
@@ -314,20 +372,45 @@ html.dark, .dark * {
|
|
|
314
372
|
--tera-control-height-base: 32px;
|
|
315
373
|
--tera-control-height-lg: 40px;
|
|
316
374
|
|
|
317
|
-
/* TeraUI Transitions -
|
|
375
|
+
/* TeraUI Transitions - easing */
|
|
318
376
|
--tera-transition-fast: 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
319
377
|
--tera-transition-base: 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
320
378
|
--tera-transition-slow: 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
321
379
|
|
|
322
|
-
/*
|
|
323
|
-
--
|
|
324
|
-
--
|
|
325
|
-
--
|
|
326
|
-
--
|
|
380
|
+
/* Focus Shadows */
|
|
381
|
+
--shadow-focus: 0 0 0 3px color-mix(in srgb, var(--color-primary-500) 20%, transparent);
|
|
382
|
+
--shadow-focus-error: 0 0 0 3px color-mix(in srgb, var(--color-error-500) 20%, transparent);
|
|
383
|
+
--shadow-focus-warning: 0 0 0 3px color-mix(in srgb, var(--color-warning-500) 20%, transparent);
|
|
384
|
+
--shadow-focus-success: 0 0 0 3px color-mix(in srgb, var(--color-success-500) 20%, transparent);
|
|
385
|
+
|
|
386
|
+
/* Elevation system */
|
|
387
|
+
--shadow-none: none;
|
|
388
|
+
--shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
|
|
389
|
+
--shadow-md: 0 4px 12px rgba(0,0,0,0.08), 0 2px 4px rgba(0,0,0,0.06);
|
|
390
|
+
--shadow-lg: 0 12px 32px rgba(0,0,0,0.12), 0 4px 8px rgba(0,0,0,0.06);
|
|
391
|
+
--shadow-glow: 0 0 0 1px var(--color-primary-200),
|
|
392
|
+
0 4px 16px color-mix(in srgb, var(--color-primary-500) 20%, transparent);
|
|
393
|
+
|
|
394
|
+
/* Easing functions */
|
|
395
|
+
--ease-ui: cubic-bezier(0.16, 1, 0.3, 1);
|
|
396
|
+
--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
397
|
+
--ease-out: cubic-bezier(0.0, 0.0, 0.2, 1.0);
|
|
398
|
+
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
|
|
399
|
+
|
|
400
|
+
/* Extended radius */
|
|
401
|
+
--tera-radius-xl: 20px;
|
|
327
402
|
}
|
|
328
403
|
|
|
329
404
|
|
|
330
405
|
|
|
406
|
+
/* Reduced-motion guard */
|
|
407
|
+
@media (prefers-reduced-motion: reduce) {
|
|
408
|
+
*, ::before, ::after {
|
|
409
|
+
transition-duration: 1ms !important;
|
|
410
|
+
animation-duration: 1ms !important;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
|
|
331
414
|
/* Base responsive variable */
|
|
332
415
|
:root {
|
|
333
416
|
--header-height: 3rem;
|
|
@@ -467,4 +550,86 @@ html.dark, .dark * {
|
|
|
467
550
|
--color-information: var(--color-information-500);
|
|
468
551
|
--color-secondary: var(--color-secondary-500);
|
|
469
552
|
--color-brand: var(--color-brand-500);
|
|
553
|
+
|
|
554
|
+
/* ── Semantic surface & text tokens ─────────────────────── */
|
|
555
|
+
--color-surface: var(--color-surface);
|
|
556
|
+
--color-surface-raised: var(--color-surface-raised);
|
|
557
|
+
--color-surface-sunken: var(--color-surface-sunken);
|
|
558
|
+
--color-surface-hover: var(--color-surface-hover);
|
|
559
|
+
--color-surface-control: var(--color-surface-control);
|
|
560
|
+
--color-border-default: var(--color-border-default);
|
|
561
|
+
--color-border-strong: var(--color-border-strong);
|
|
562
|
+
--color-text-primary: var(--color-text-primary);
|
|
563
|
+
--color-text-secondary: var(--color-text-secondary);
|
|
564
|
+
--color-text-tertiary: var(--color-text-tertiary);
|
|
565
|
+
--color-text-disabled: var(--color-text-disabled);
|
|
566
|
+
--color-interactive: var(--color-interactive);
|
|
567
|
+
--color-interactive-hover: var(--color-interactive-hover);
|
|
568
|
+
--color-interactive-active: var(--color-interactive-active);
|
|
569
|
+
--color-interactive-subtle: var(--color-interactive-subtle);
|
|
570
|
+
--color-interactive-border: var(--color-interactive-border);
|
|
571
|
+
--color-interactive-text: var(--color-interactive-text);
|
|
572
|
+
--color-interactive-on: var(--color-interactive-on);
|
|
573
|
+
--color-overlay: var(--color-overlay);
|
|
574
|
+
|
|
575
|
+
/* ── Semantic status tokens ──────────────────────────────── */
|
|
576
|
+
--color-error-subtle: var(--color-error-subtle);
|
|
577
|
+
--color-error-muted: var(--color-error-muted);
|
|
578
|
+
--color-error-border: var(--color-error-border);
|
|
579
|
+
--color-error-hover: var(--color-error-hover);
|
|
580
|
+
--color-error-default: var(--color-error-default);
|
|
581
|
+
--color-error-active: var(--color-error-active);
|
|
582
|
+
--color-error-text: var(--color-error-text);
|
|
583
|
+
|
|
584
|
+
--color-warning-subtle: var(--color-warning-subtle);
|
|
585
|
+
--color-warning-muted: var(--color-warning-muted);
|
|
586
|
+
--color-warning-border: var(--color-warning-border);
|
|
587
|
+
--color-warning-hover: var(--color-warning-hover);
|
|
588
|
+
--color-warning-default: var(--color-warning-default);
|
|
589
|
+
--color-warning-active: var(--color-warning-active);
|
|
590
|
+
--color-warning-text: var(--color-warning-text);
|
|
591
|
+
|
|
592
|
+
--color-success-subtle: var(--color-success-subtle);
|
|
593
|
+
--color-success-muted: var(--color-success-muted);
|
|
594
|
+
--color-success-border: var(--color-success-border);
|
|
595
|
+
--color-success-hover: var(--color-success-hover);
|
|
596
|
+
--color-success-default: var(--color-success-default);
|
|
597
|
+
--color-success-active: var(--color-success-active);
|
|
598
|
+
--color-success-text: var(--color-success-text);
|
|
599
|
+
|
|
600
|
+
--color-information-subtle: var(--color-information-subtle);
|
|
601
|
+
--color-information-muted: var(--color-information-muted);
|
|
602
|
+
--color-information-border: var(--color-information-border);
|
|
603
|
+
--color-information-hover: var(--color-information-hover);
|
|
604
|
+
--color-information-default: var(--color-information-default);
|
|
605
|
+
--color-information-active: var(--color-information-active);
|
|
606
|
+
--color-information-text: var(--color-information-text);
|
|
607
|
+
|
|
608
|
+
/* Elevation shadows */
|
|
609
|
+
--shadow-sm: var(--shadow-sm);
|
|
610
|
+
--shadow-md: var(--shadow-md);
|
|
611
|
+
--shadow-lg: var(--shadow-lg);
|
|
612
|
+
--shadow-glow: var(--shadow-glow);
|
|
613
|
+
--shadow-focus: var(--shadow-focus);
|
|
614
|
+
--shadow-focus-error: var(--shadow-focus-error);
|
|
615
|
+
--shadow-focus-warning: var(--shadow-focus-warning);
|
|
616
|
+
--shadow-focus-success: var(--shadow-focus-success);
|
|
617
|
+
|
|
618
|
+
/* Easing functions */
|
|
619
|
+
--ease-ui: var(--ease-ui);
|
|
620
|
+
--ease-spring: var(--ease-spring);
|
|
621
|
+
|
|
622
|
+
/* Accordion animations */
|
|
623
|
+
--animate-accordion-down: accordion-down 0.2s ease-out;
|
|
624
|
+
--animate-accordion-up: accordion-up 0.2s ease-out;
|
|
625
|
+
}
|
|
626
|
+
|
|
627
|
+
@keyframes accordion-down {
|
|
628
|
+
from { height: 0; }
|
|
629
|
+
to { height: var(--bits-accordion-content-height); }
|
|
630
|
+
}
|
|
631
|
+
|
|
632
|
+
@keyframes accordion-up {
|
|
633
|
+
from { height: var(--bits-accordion-content-height); }
|
|
634
|
+
to { height: 0; }
|
|
470
635
|
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/* ============================================= */
|
|
2
|
+
/* === TeraUI — AI / Innovation Theme === */
|
|
3
|
+
/* Target: AI tools, chat interfaces, interactive labs */
|
|
4
|
+
/* Dark mode is the primary experience */
|
|
5
|
+
/* Load after tera-ui-base.css */
|
|
6
|
+
/* Gradient rule: allowed ONLY on primary button bg, hero headline accent, AI card border */
|
|
7
|
+
/* ============================================= */
|
|
8
|
+
|
|
9
|
+
[data-theme='ai'] {
|
|
10
|
+
/* Primary: violet-700 */
|
|
11
|
+
--color-primary-500: rgb(124, 58, 237); /* #7C3AED */
|
|
12
|
+
--color-primary-600: rgb(109, 40, 217); /* #6D28D9 */
|
|
13
|
+
--color-primary-700: rgb(91, 33, 182);
|
|
14
|
+
--color-primary-400: rgb(167, 139, 250);
|
|
15
|
+
--color-primary-300: rgb(196, 181, 253);
|
|
16
|
+
--color-primary-200: rgb(221, 214, 254);
|
|
17
|
+
--color-primary-50: rgb(245, 243, 255);
|
|
18
|
+
|
|
19
|
+
/* Secondary: cyan — authentic AI aesthetic, pairs with violet */
|
|
20
|
+
--color-secondary-500: rgb(6, 182, 212);
|
|
21
|
+
--color-secondary-400: rgb(34, 211, 238);
|
|
22
|
+
--color-secondary-300: rgb(103, 232, 249);
|
|
23
|
+
--color-secondary-200: rgb(165, 243, 252);
|
|
24
|
+
--color-secondary-50: rgb(236, 254, 255);
|
|
25
|
+
|
|
26
|
+
/* Light mode: barely perceptible violet surface tint */
|
|
27
|
+
--color-surface: rgb(254, 252, 255);
|
|
28
|
+
--color-surface-raised: rgb(250, 247, 255);
|
|
29
|
+
|
|
30
|
+
/* Border radius — rounder = friendlier, more approachable */
|
|
31
|
+
--border-radius-base: 0.75rem; /* 12px */
|
|
32
|
+
--border-radius-container: 1rem; /* 16px — pillowy cards */
|
|
33
|
+
|
|
34
|
+
/* Motion: springier = energetic */
|
|
35
|
+
--tera-theme-duration: 250ms;
|
|
36
|
+
--tera-theme-easing: var(--ease-spring);
|
|
37
|
+
--tera-transition-base: var(--tera-theme-duration) var(--tera-theme-easing);
|
|
38
|
+
|
|
39
|
+
/* Card style: glassmorphism */
|
|
40
|
+
--tera-card-shadow: var(--shadow-glow);
|
|
41
|
+
--tera-card-radius: var(--border-radius-container);
|
|
42
|
+
--tera-card-backdrop: blur(8px);
|
|
43
|
+
|
|
44
|
+
/* Gradient: violet → cyan (more dimensional than violet → blue) */
|
|
45
|
+
--tera-gradient-primary: linear-gradient(135deg, rgb(124, 58, 237) 0%, rgb(6, 182, 212) 100%);
|
|
46
|
+
|
|
47
|
+
/* Glow shadow: violet-tinted (not plain black-opacity) */
|
|
48
|
+
--shadow-glow: 0 0 0 1px rgba(124, 58, 237, 0.25),
|
|
49
|
+
0 4px 24px rgba(124, 58, 237, 0.18),
|
|
50
|
+
0 1px 4px rgba(124, 58, 237, 0.12);
|
|
51
|
+
|
|
52
|
+
/* Focus glow: violet */
|
|
53
|
+
--shadow-focus: 0 0 0 3px rgba(124, 58, 237, 0.28);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/* AI dark mode: zinc-950 with violet temperature + atmospheric shadows */
|
|
57
|
+
[data-theme='ai'].dark,
|
|
58
|
+
[data-theme='ai'] .dark {
|
|
59
|
+
/* Elevation steps — slight purple temperature throughout */
|
|
60
|
+
--color-neutral-token-1: rgb(7, 7, 11); /* near-black with violet hint */
|
|
61
|
+
--color-neutral-token-2: rgb(16, 16, 24); /* zinc-900 + violet */
|
|
62
|
+
--color-neutral-token-3: rgb(28, 28, 40); /* clear jump */
|
|
63
|
+
--color-neutral-token-4: rgb(45, 45, 62); /* obvious hover state */
|
|
64
|
+
--color-neutral-token-5: rgb(72, 72, 95); /* visible border */
|
|
65
|
+
--color-neutral-token-13: rgb(250, 250, 252);
|
|
66
|
+
|
|
67
|
+
/* Violet-tinted atmospheric shadows */
|
|
68
|
+
--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(124, 58, 237, 0.08);
|
|
69
|
+
--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(124, 58, 237, 0.12);
|
|
70
|
+
--shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.7), 0 4px 8px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(124, 58, 237, 0.14);
|
|
71
|
+
--shadow-glow: 0 0 0 1px rgba(124, 58, 237, 0.35),
|
|
72
|
+
0 4px 24px rgba(124, 58, 237, 0.25),
|
|
73
|
+
0 0 48px rgba(124, 58, 237, 0.12);
|
|
74
|
+
|
|
75
|
+
/* Interactive: brighter violet — better contrast on dark bg */
|
|
76
|
+
--color-interactive: rgb(167, 139, 250); /* violet-400 */
|
|
77
|
+
--color-interactive-hover: rgb(196, 181, 253); /* violet-300 */
|
|
78
|
+
--color-interactive-active: rgb(124, 58, 237); /* violet-600 */
|
|
79
|
+
--color-interactive-subtle: rgba(124, 58, 237, 0.12);
|
|
80
|
+
--color-interactive-border: rgba(124, 58, 237, 0.30);
|
|
81
|
+
--color-interactive-text: rgb(167, 139, 250);
|
|
82
|
+
|
|
83
|
+
/* Focus shadow — softer for dark bg */
|
|
84
|
+
--shadow-focus: 0 0 0 3px rgba(167, 139, 250, 0.35);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* AI primary button: gradient fill */
|
|
88
|
+
[data-theme='ai'] .btn-primary,
|
|
89
|
+
[data-theme='ai'] [data-variant='primary'] {
|
|
90
|
+
background: var(--tera-gradient-primary);
|
|
91
|
+
border-color: transparent;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* AI card glassmorphism */
|
|
95
|
+
[data-theme='ai'] .card-glass {
|
|
96
|
+
background: rgba(255, 255, 255, 0.05);
|
|
97
|
+
backdrop-filter: var(--tera-card-backdrop);
|
|
98
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
99
|
+
box-shadow: var(--shadow-glow);
|
|
100
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/* ============================================= */
|
|
2
|
+
/* === TeraUI — Marketing / Editorial Theme === */
|
|
3
|
+
/* Target: Landing pages, product marketing, blog posts */
|
|
4
|
+
/* Load after tera-ui-base.css */
|
|
5
|
+
/* ============================================= */
|
|
6
|
+
|
|
7
|
+
[data-theme='marketing'] {
|
|
8
|
+
/* Primary: brand blue — connects to brand identity */
|
|
9
|
+
--color-primary-500: rgb(0, 111, 238); /* #006FEE */
|
|
10
|
+
--color-primary-600: rgb(0, 87, 200);
|
|
11
|
+
--color-primary-700: rgb(0, 68, 160);
|
|
12
|
+
--color-primary-400: rgb(51, 147, 255);
|
|
13
|
+
--color-primary-300: rgb(100, 175, 255);
|
|
14
|
+
--color-primary-200: rgb(153, 208, 255);
|
|
15
|
+
--color-primary-50: rgb(230, 244, 255);
|
|
16
|
+
|
|
17
|
+
/* Secondary: rose/coral — editorial pop, distinct from brand blue */
|
|
18
|
+
--color-secondary-500: rgb(244, 63, 94);
|
|
19
|
+
--color-secondary-400: rgb(251, 113, 133);
|
|
20
|
+
--color-secondary-300: rgb(253, 164, 175);
|
|
21
|
+
--color-secondary-200: rgb(254, 205, 211);
|
|
22
|
+
--color-secondary-50: rgb(255, 241, 242);
|
|
23
|
+
|
|
24
|
+
/* Border radius — balanced, friendly but not casual */
|
|
25
|
+
--border-radius-base: 0.625rem; /* 10px */
|
|
26
|
+
--border-radius-container: 1rem; /* 16px — modern editorial card feel */
|
|
27
|
+
|
|
28
|
+
/* Font: display font for large headlines */
|
|
29
|
+
--font-display: 'Cal Sans', 'Syne', 'Instrument Serif', 'Georgia', serif;
|
|
30
|
+
|
|
31
|
+
/* Motion: cinematic — suits scroll reveals */
|
|
32
|
+
--tera-theme-duration: 300ms;
|
|
33
|
+
--tera-theme-easing: var(--ease-in-out);
|
|
34
|
+
--tera-transition-base: var(--tera-theme-duration) var(--tera-theme-easing);
|
|
35
|
+
|
|
36
|
+
/* CTA button: taller for conversion */
|
|
37
|
+
--tera-control-height-lg: 52px;
|
|
38
|
+
|
|
39
|
+
/* Card style */
|
|
40
|
+
--tera-card-shadow: var(--shadow-sm);
|
|
41
|
+
--tera-card-radius: var(--border-radius-container);
|
|
42
|
+
|
|
43
|
+
/* No AI gradient — marketing uses flat brand color */
|
|
44
|
+
--tera-gradient-primary: none;
|
|
45
|
+
|
|
46
|
+
/* Section spacing: py-24 minimum */
|
|
47
|
+
--marketing-section-py: 6rem;
|
|
48
|
+
|
|
49
|
+
/* Stronger glow for CTAs — brand blue hue */
|
|
50
|
+
--shadow-glow: 0 0 0 1px rgba(0, 111, 238, 0.20),
|
|
51
|
+
0 8px 32px rgba(0, 111, 238, 0.15);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* Marketing dark: deep navy-black — editorial premium, not generic gray */
|
|
55
|
+
[data-theme='marketing'].dark,
|
|
56
|
+
[data-theme='marketing'] .dark {
|
|
57
|
+
/* Elevation steps — navy-blue temperature throughout */
|
|
58
|
+
--color-neutral-token-1: rgb(8, 10, 18); /* very deep navy-black */
|
|
59
|
+
--color-neutral-token-2: rgb(14, 18, 32); /* visible step */
|
|
60
|
+
--color-neutral-token-3: rgb(22, 27, 48); /* mid dark */
|
|
61
|
+
--color-neutral-token-4: rgb(33, 42, 70); /* clear hover state */
|
|
62
|
+
--color-neutral-token-5: rgb(50, 62, 100); /* blue-tinted border */
|
|
63
|
+
--color-neutral-token-6: rgb(72, 88, 135); /* strong border */
|
|
64
|
+
|
|
65
|
+
/* Blue-tinted atmospheric shadows */
|
|
66
|
+
--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 111, 238, 0.06);
|
|
67
|
+
--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(0, 111, 238, 0.08);
|
|
68
|
+
--shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.7), 0 4px 8px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(0, 111, 238, 0.10);
|
|
69
|
+
--shadow-glow: 0 0 0 1px rgba(0, 111, 238, 0.30),
|
|
70
|
+
0 4px 24px rgba(0, 111, 238, 0.20),
|
|
71
|
+
0 0 48px rgba(0, 111, 238, 0.10);
|
|
72
|
+
|
|
73
|
+
/* Interactive: brighter brand blue — better contrast on dark bg */
|
|
74
|
+
--color-interactive: rgb(51, 147, 255); /* primary-400 */
|
|
75
|
+
--color-interactive-hover: rgb(100, 175, 255); /* primary-300 */
|
|
76
|
+
--color-interactive-active: rgb(0, 111, 238); /* primary-500 */
|
|
77
|
+
--color-interactive-subtle: rgba(0, 111, 238, 0.12);
|
|
78
|
+
--color-interactive-border: rgba(0, 111, 238, 0.30);
|
|
79
|
+
--color-interactive-text: rgb(100, 175, 255);
|
|
80
|
+
|
|
81
|
+
/* Focus shadow — blue-tinted */
|
|
82
|
+
--shadow-focus: 0 0 0 3px rgba(51, 147, 255, 0.35);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/* Marketing CTA button: full-sized */
|
|
86
|
+
[data-theme='marketing'] [data-variant='primary'] {
|
|
87
|
+
height: var(--tera-control-height-lg);
|
|
88
|
+
padding-left: 2rem;
|
|
89
|
+
padding-right: 2rem;
|
|
90
|
+
font-weight: 600;
|
|
91
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/* ============================================= */
|
|
2
|
+
/* === TeraUI — Professional Theme === */
|
|
3
|
+
/* Target: SaaS dashboards, calculators, CV builders, education tools */
|
|
4
|
+
/* Load after tera-ui-base.css */
|
|
5
|
+
/* ============================================= */
|
|
6
|
+
|
|
7
|
+
[data-theme='professional'],
|
|
8
|
+
:root {
|
|
9
|
+
/* Primary: Tailwind blue-600 — more saturated than blue-500 */
|
|
10
|
+
--color-primary-500: rgb(37, 99, 235); /* #2563EB */
|
|
11
|
+
--color-primary-600: rgb(29, 78, 216); /* #1D4ED8 */
|
|
12
|
+
--color-primary-400: rgb(96, 165, 250);
|
|
13
|
+
--color-primary-200: rgb(191, 219, 254);
|
|
14
|
+
--color-primary-50: rgb(239, 246, 255);
|
|
15
|
+
|
|
16
|
+
/* Border radius — 2px more modern than AntDesign */
|
|
17
|
+
--border-radius-base: 0.5rem; /* 8px */
|
|
18
|
+
--border-radius-container: 0.625rem; /* 10px — cards, dialogs */
|
|
19
|
+
|
|
20
|
+
/* Page background: cool off-white, softer than pure white */
|
|
21
|
+
--color-neutral-token-1: rgb(248, 250, 252); /* #F8FAFC */
|
|
22
|
+
|
|
23
|
+
/* Motion: fast, responsive */
|
|
24
|
+
--tera-theme-duration: 150ms;
|
|
25
|
+
--tera-theme-easing: var(--ease-ui);
|
|
26
|
+
--tera-transition-base: var(--tera-theme-duration) var(--tera-theme-easing);
|
|
27
|
+
|
|
28
|
+
/* Card style: subtle shadow */
|
|
29
|
+
--tera-card-shadow: var(--shadow-sm);
|
|
30
|
+
--tera-card-radius: var(--border-radius-container);
|
|
31
|
+
|
|
32
|
+
/* No gradients in Professional */
|
|
33
|
+
--tera-gradient-primary: none;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
[data-theme='professional'].dark,
|
|
37
|
+
[data-theme='professional'] .dark {
|
|
38
|
+
--color-neutral-token-1: rgb(15, 23, 42); /* slate-900 */
|
|
39
|
+
--color-neutral-token-2: rgb(30, 41, 59); /* slate-800 */
|
|
40
|
+
--color-neutral-token-3: rgb(51, 65, 85); /* slate-700 */
|
|
41
|
+
}
|