@charset "UTF-8"; /* Copyright (C) 2025 Moko Consulting This file is part of a Moko Consulting project. SPDX-License-Identifier: GPL-3.0-or-later # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: MokoCassiopeia.Templates PATH: ./templates/colors_custom_dark.css VERSION: 03.06.03 BRIEF: Template for custom dark mode color definitions # USAGE INSTRUCTIONS 1. Copy this file to: `media/templates/site/mokocassiopeia/css/colors/dark/colors_custom.css` or `media/templates/site/mokocassiopeia/css/colors/light/colors_custom.css` ` 2. Customize the CSS variables below to match your brand colors for dark mode 3. In Joomla admin, go to System → Site Templates → MokoCassiopeia 4. Under Theme tab, set "Dark Mode Palette" to "Custom" 5. Save and view your site in dark mode to see the custom colors NOTE: This file is excluded from version control (.gitignore) to prevent fork-specific customizations from being committed to the repository. */ /* ----------------------------------------------- * CUSTOM DARK THEME * --------------------------------------------- */ :root[data-bs-theme='dark']{ /* System hint for native widgets */ color-scheme: dark; /* ===== PRIMARY BRAND COLORS ===== */ /* Main brand color used throughout the template */ --color-primary: #112855; /* Accent colors for interactive elements */ --accent-color-primary: #3f8ff0; --accent-color-secondary: #6fb3ff; /* ===== LINK COLORS ===== */ /* Color for hyperlinks in dark mode */ --color-link: white; /* Color when hovering over links */ --color-hover: gray; /* Active link color */ --color-active: var(--mainmenu-nav-link-color); /* ===== NAVIGATION ===== */ /* Text color in main menu */ --mainmenu-nav-link-color: #fff; /* Background color for navigation */ --nav-text-color: gray; --nav-bg-color: var(--color-primary); /* ===== HEADER BACKGROUND ===== */ /* Background image for header section (same as light mode) */ --header-background-image: url('../../../../../../media/templates/site/mokocassiopeia/images/bg.svg'); --header-background-attachment: fixed; --header-background-repeat: repeat; --header-background-size: auto; /* ===== CONTAINER BACKGROUNDS ===== */ /* Below Topbar Container */ --container-below-topbar-bg-image: ; --container-below-topbar-bg-color: ; --container-below-topbar-bg-position: center; --container-below-topbar-bg-attachment: fixed; --container-below-topbar-bg-repeat: no-repeat; --container-below-topbar-bg-size: cover; --container-below-topbar-border: ; --container-below-topbar-border-radius: ; /* Top A Container */ --container-top-a-bg-image: ; --container-top-a-bg-color: ; --container-top-a-bg-position: center; --container-top-a-bg-attachment: fixed; --container-top-a-bg-repeat: no-repeat; --container-top-a-bg-size: cover; --container-top-a-border: ; --container-top-a-border-radius: ; /* Top B Container */ --container-top-b-bg-image: ; --container-top-b-bg-color: ; --container-top-b-bg-position: center; --container-top-b-bg-attachment: fixed; --container-top-b-bg-repeat: no-repeat; --container-top-b-bg-size: cover; --container-top-b-border: ; --container-top-b-border-radius: ; /* Table of Contents Container */ --container-toc-bg: ; --container-toc-color: #dbe3ff; /* Sidebar Container */ --container-sidebar-bg-image: ; --container-sidebar-bg-color: ; --container-sidebar-bg-position: center; --container-sidebar-bg-attachment: scroll; --container-sidebar-bg-repeat: repeat; --container-sidebar-bg-size: auto; --container-sidebar-border: ; --container-sidebar-border-radius: ; /* Bottom A Container */ --container-bottom-a-bg-image: ; --container-bottom-a-bg-color: ; --container-bottom-a-bg-position: center; --container-bottom-a-bg-attachment: fixed; --container-bottom-a-bg-repeat: no-repeat; --container-bottom-a-bg-size: cover; --container-bottom-a-border: ; --container-bottom-a-border-radius: ; /* Bottom B Container */ --container-bottom-b-bg-image: ; --container-bottom-b-bg-color: ; --container-bottom-b-bg-position: center; --container-bottom-b-bg-attachment: fixed; --container-bottom-b-bg-repeat: no-repeat; --container-bottom-b-bg-size: cover; --container-bottom-b-border: ; --container-bottom-b-border-radius: ; /* ===== BOOTSTRAP 5 COLOR PALETTE (Dark Mode) ===== */ /* Lightened colors for dark mode visibility */ --blue: #91a4ff; --black: #000; --indigo: #b19cff; --purple: #c0a5ff; --pink: #ff8fc0; --red: #ff7a73; --orange: #ff9c4d; --yellow: #ffd166; --green: #78d694; --teal: #76e3ff; --cyan: #6fb7ff; --white: #fff; /* Gray scale tuned for dark mode */ --gray-100: #161a20; --gray-200: #1b2027; --gray-300: #222831; --gray-400: #2b323b; --gray-500: #36404a; --gray-600: #48525d; --gray-700: #5b6672; --gray-800: #cfd6de; --gray-900: #e6ebf1; /* Contextual colors (adjusted for dark backgrounds) */ --primary: #010156; --secondary: #48525d; --success: #4aa664; --info: #4f7aa0; --warning: #c77a00; --danger: #c23a31; --light: #1b2027; --dark: #0f1318; /* ===== BODY & TYPOGRAPHY ===== */ --body-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; --body-font-size: 1rem; --body-font-weight: 400; --body-line-height: 1.5; --body-color: #e6ebf1; --body-color-rgb: 230, 235, 241; --body-bg: #0e1318; --body-bg-rgb: 14, 19, 24; /* ===== ADDITIONAL THEME COLORS ===== */ --muted-color: #6d757e; --hr-color: var(--border-color, #dfe3e7); --link-active-color: var(--link-color); --code-color: #ff7abd; --code-color-ink: var(--code-color, #e93f8e); --border-color-soft: var(--border-color, #dfe3e7); --kbd-bg: var(--secondary-bg, #eaedf0); --kbd-ink: var(--body-bg, #fff); --toc-bg: var(--secondary-bg, #eaedf0); --toc-ink: var(--color-primary, #112855); --selection-bg: var(--highlight-bg, #fbeea8); --selection-ink: var(--body-color, #22262a); --emphasis-color: #fff; --emphasis-color-rgb: 255, 255, 255; --secondary-color: #e6ebf1bf; --secondary-color-rgb: 230, 235, 241; --secondary-bg: #151b22; --secondary-bg-rgb: 21, 27, 34; --tertiary-color: #e6ebf180; --tertiary-color-rgb: 230, 235, 241; --tertiary-bg: #10151b; --tertiary-bg-rgb: 16, 21, 27; --heading-color: #f1f5f9; --link-color: #8ab4f8; --link-color-rgb: 138, 180, 248; --link-decoration: underline; --link-hover-color: #c3d6ff; --link-hover-color-rgb: 195, 214, 255; --highlight-color: #111; --highlight-bg: #ffe28a1a; /* ===== BORDERS & SHADOWS ===== */ --border: 5px; --border-width: 1px; --border-style: solid; --border-color: #2b323b; --border-color-translucent: #ffffff26; --border-radius: .25rem; --border-radius-sm: .2rem; --border-radius-lg: .3rem; --border-radius-xl: .3rem; --border-radius-xxl: 2rem; --border-radius-pill: 50rem; --box-shadow: 0 .5rem 1rem #00000066; --box-shadow-sm: 0 .125rem .25rem #00000040; --box-shadow-lg: 0 1rem 3rem #00000080; --box-shadow-inset: inset 0 1px 2px #00000040; /* ===== FORM COLORS ===== */ --focus-ring-width: .25rem; --focus-ring-opacity: .6; --focus-ring-color: #5472ff66; --form-valid-color: #78d694; --form-valid-border-color: #78d694; --form-invalid-color: #ff8e86; --form-invalid-border-color: #ff8e86; }