From a39e57fcfd1f9e748c4985113e5ea1aecdb93651 Mon Sep 17 00:00:00 2001 From: Anas Qureshi Date: Mon, 27 Jul 2026 10:57:52 +0530 Subject: [PATCH] new changes in dark mode --- public/assets/css/style.css | 2 +- public/assets/css/tailwind.css | 2 +- public/assets/scss/tailwind.css | 2 +- .../pages/currency-list/currency-list.html | 8 +- src/app/shared/components/modal/modal.scss | 120 ++++++++++++++++ .../stepper-four/stepper-four.component.html | 22 +-- .../stepper-four/stepper-four.component.scss | 91 ++++++++++++ .../stepper-three.component.html | 12 +- .../stepper-three.component.scss | 136 ++++++++++++++++++ .../stepper-two/stepper-two.component.html | 20 +-- .../stepper-two/stepper-two.component.scss | 99 +++++++++++++ .../components/stepper/stepper.component.html | 10 +- .../components/stepper/stepper.component.scss | 99 +++++++++++++ 13 files changed, 582 insertions(+), 41 deletions(-) diff --git a/public/assets/css/style.css b/public/assets/css/style.css index 9796a4a0..013d7914 100644 --- a/public/assets/css/style.css +++ b/public/assets/css/style.css @@ -16188,7 +16188,7 @@ html.dark, --color-darkbg: rgb(37 39 41); --color-light: rgb(43 46 49); --color-dark: rgb(240 245 248); - --color-inputborder: rgb(49 51 53); + --color-inputborder: rgb(115 122 130); --color-formcontrolbg: rgb(35 38 40); --color-defaulttextcolor: rgb(255 255 255); --color-gray-100: rgb(249, 250, 251); diff --git a/public/assets/css/tailwind.css b/public/assets/css/tailwind.css index 07e60328..536af00f 100644 --- a/public/assets/css/tailwind.css +++ b/public/assets/css/tailwind.css @@ -13048,7 +13048,7 @@ html.dark, --color-darkbg: rgb(37 39 41); --color-light: rgb(43 46 49); --color-dark: rgb(240 245 248); - --color-inputborder: rgb(49 51 53); + --color-inputborder: rgb(115 122 130); --color-formcontrolbg: rgb(35 38 40); --color-defaulttextcolor: rgb(255 255 255); --color-gray-100: rgb(249,250,251); diff --git a/public/assets/scss/tailwind.css b/public/assets/scss/tailwind.css index a2aa1521..fbca5487 100644 --- a/public/assets/scss/tailwind.css +++ b/public/assets/scss/tailwind.css @@ -121,7 +121,7 @@ html.dark, --color-darkbg: rgb(37 39 41); --color-light: rgb(43 46 49); --color-dark: rgb(240 245 248); - --color-inputborder: rgb(49 51 53); + --color-inputborder: rgb(115 122 130); --color-formcontrolbg: rgb(35 38 40); --color-defaulttextcolor: rgb(255 255 255); --color-gray-100: rgb(249,250,251); diff --git a/src/app/features/global-masters/currencies/pages/currency-list/currency-list.html b/src/app/features/global-masters/currencies/pages/currency-list/currency-list.html index a57d43aa..7db10599 100644 --- a/src/app/features/global-masters/currencies/pages/currency-list/currency-list.html +++ b/src/app/features/global-masters/currencies/pages/currency-list/currency-list.html @@ -144,8 +144,7 @@ - - +
@@ -377,7 +373,7 @@
- + --> diff --git a/src/app/shared/components/modal/modal.scss b/src/app/shared/components/modal/modal.scss index e09705dc..89daa5f9 100644 --- a/src/app/shared/components/modal/modal.scss +++ b/src/app/shared/components/modal/modal.scss @@ -664,6 +664,126 @@ } +/* ========================================================== + Dark Mode + ========================================================== */ + +:host-context(.dark) .modern-modal { + background: var(--color-bodybg) !important; + box-shadow: + 0 15px 40px rgba(0, 0, 0, .25), + 0 30px 80px rgba(0, 0, 0, .35); +} + +:host-context(.dark) .modern-modal-body { + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .modern-modal-body::-webkit-scrollbar-thumb { + background: var(--color-inputborder) !important; +} + +:host-context(.dark) .modern-modal-body::-webkit-scrollbar-thumb:hover { + background: var(--color-textmuted) !important; +} + +:host-context(.dark) .modern-modal-footer { + background: var(--color-bodybg) !important; + border-top: 1px solid var(--color-inputborder) !important; +} + +:host-context(.dark) ::ng-deep .modern-modal-footer app-button:first-child button { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) ::ng-deep .modern-modal-footer app-button:first-child button:hover { + background: var(--color-bodybg) !important; + border-color: var(--color-textmuted) !important; +} + +:host-context(.dark) ::ng-deep .modern-modal-footer app-button:last-child button { + box-shadow: + 0 8px 20px rgba(125, 61, 235, 0.55) !important; +} + +:host-context(.dark) ::ng-deep .modern-modal-footer app-button:last-child button:hover { + box-shadow: + 0 12px 28px rgba(125, 61, 235, .65) !important; +} + +/* ========================================================== + Modal form-control borders in dark mode + ========================================================== */ + +:host-context(.dark) ::ng-deep .modern-modal { + + .shared-form-input, + .custom-floating-input, + .form-control, + .form-select, + .ti-form-input, + .ti-form-select, + .ti-form-control, + .ng-select-container, + textarea, + input[type="text"], + input:not([type]), + input[type="email"], + input[type="password"], + input[type="number"], + input[type="tel"], + input[type="url"], + input[type="search"], + input[type="date"], + input[type="datetime-local"], + input[type="month"], + input[type="time"], + input[type="week"] { + border-color: rgb(115 122 130) !important; + } + + .form-check-input:not(:checked) { + border-color: rgb(115 122 130) !important; + } + + /* keep focus / validation colors */ + .shared-form-control.is-focused .shared-form-input, + .shared-form-input:focus, + .custom-floating-input:focus, + .form-control:focus, + .form-select:focus, + .ti-form-input:focus, + .ti-form-select:focus, + .ti-form-control:focus, + .ng-select.ng-select-focused .ng-select-container, + textarea:focus { + border-color: var(--color-primary) !important; + } + + .form-control.is-invalid, + .form-select.is-invalid, + .ti-form-input.is-invalid, + .ti-form-select.is-invalid, + .ti-form-control.is-invalid, + textarea.is-invalid, + .has-error .shared-form-input, + .ng-invalid.ng-touched, + .custom-floating-input.ng-invalid.ng-touched { + border-color: var(--color-danger) !important; + } + + .form-check-input:checked, + .form-check-input.is-invalid { + border-color: var(--color-primary) !important; + } + + .form-check-input.is-invalid:not(:checked) { + border-color: var(--color-danger) !important; + } +} + /* ========================================================== Mobile ========================================================== */ diff --git a/src/app/shared/components/stepper-four/stepper-four.component.html b/src/app/shared/components/stepper-four/stepper-four.component.html index c8e25993..8c12b7cb 100644 --- a/src/app/shared/components/stepper-four/stepper-four.component.html +++ b/src/app/shared/components/stepper-four/stepper-four.component.html @@ -147,19 +147,19 @@
- +
- +
- +
@@ -185,7 +185,7 @@
- +
@@ -197,7 +197,7 @@
- +
@@ -236,7 +236,7 @@
- +
@@ -275,13 +275,13 @@
- +
- +
@@ -320,7 +320,7 @@
- +
@@ -353,7 +353,7 @@
- +
@@ -365,7 +365,7 @@
- +
diff --git a/src/app/shared/components/stepper-four/stepper-four.component.scss b/src/app/shared/components/stepper-four/stepper-four.component.scss index 430bdcee..5e8da19a 100644 --- a/src/app/shared/components/stepper-four/stepper-four.component.scss +++ b/src/app/shared/components/stepper-four/stepper-four.component.scss @@ -339,6 +339,97 @@ $white: #ffffff; } } +/* ========================================================== + Dark Mode + ========================================================== */ + +:host-context(.dark) .custom-stepper-wrapper { + background: var(--color-bodybg) !important; +} + +:host-context(.dark) .step-button { + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .step-icon { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .step-icon.active { + background: rgba(124, 92, 250, 0.15) !important; + border-color: $purple !important; + color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .step-icon.completed { + background: $purple !important; + border-color: $purple !important; + color: #ffffff !important; +} + +:host-context(.dark) .step-label { + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .step-label.active, +:host-context(.dark) .step-label.completed { + color: $purple !important; +} + +:host-context(.dark) .step-separator { + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .step-separator.completed { + border-color: $purple !important; +} + +:host-context(.dark) .panel-form { + background: var(--color-light) !important; +} + +:host-context(.dark) .custom-floating-input { + background: var(--color-light) !important; + border: 1px solid rgb(115, 122, 130) !important; + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .custom-floating-input::placeholder { + color: transparent !important; +} + +:host-context(.dark) .custom-floating-label { + background: var(--color-light) !important; + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .custom-floating-input:focus, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown), +:host-context(.dark) .custom-floating-input:active { + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .custom-floating-input:focus~.custom-floating-label, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown)~.custom-floating-label { + color: $purple !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back { + background: var(--color-light) !important; + color: var(--color-defaulttextcolor) !important; + border-color: rgb(115 122 130) !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back:hover { + background: var(--color-bodybg) !important; + border-color: $purple !important; + color: $purple !important; +} + @media (max-width: 768px) { .custom-stepper-wrapper { diff --git a/src/app/shared/components/stepper-three/stepper-three.component.html b/src/app/shared/components/stepper-three/stepper-three.component.html index 3ccddfb5..ca1d3a9b 100644 --- a/src/app/shared/components/stepper-three/stepper-three.component.html +++ b/src/app/shared/components/stepper-three/stepper-three.component.html @@ -20,13 +20,13 @@
- +
- +
@@ -59,7 +59,7 @@
- +
@@ -71,7 +71,7 @@
- +
@@ -110,7 +110,7 @@
- +
@@ -122,7 +122,7 @@
- +
diff --git a/src/app/shared/components/stepper-three/stepper-three.component.scss b/src/app/shared/components/stepper-three/stepper-three.component.scss index e5da9bb4..c4df948f 100644 --- a/src/app/shared/components/stepper-three/stepper-three.component.scss +++ b/src/app/shared/components/stepper-three/stepper-three.component.scss @@ -296,6 +296,142 @@ $step-gap-mobile: 10px; } } +::ng-deep { + + .step-btn-next { + + background: linear-gradient(135deg, #7c5cfa, #a78bfa) !important; + color: $white !important; + border: none !important; + border-radius: 9999px !important; + padding: 0.55rem 1.4rem !important; + font-weight: 600 !important; + box-shadow: 0 4px 12px rgba(124, 92, 250, 0.35) !important; + transition: transform .2s, box-shadow .2s, filter .2s !important; + } + + .step-btn-next:hover { + + transform: translateY(-2px); + box-shadow: 0 6px 16px rgba(124, 92, 250, 0.45) !important; + filter: brightness(1.05); + } + + .step-btn-back { + + background: $white !important; + color: $pending-text !important; + border: 1px solid $line-grey !important; + border-radius: 9999px !important; + padding: 0.55rem 1.4rem !important; + font-weight: 600 !important; + transition: transform .2s, border-color .2s, color .2s, background .2s !important; + } + + .step-btn-back:hover { + + transform: translateY(-2px); + border-color: $purple !important; + color: $purple !important; + background: #f9fafb !important; + } +} + +/* ========================================================== + Dark Mode + ========================================================== */ + +:host-context(.dark) .card { + background: var(--color-bodybg) !important; +} + +:host-context(.dark) ::ng-deep { + + .p-stepper .p-stepitem:not(:last-child)::after { + background: var(--color-textmuted) !important; + } + + .p-stepper .p-stepitem.done:not(:last-child)::after { + background: linear-gradient(180deg, #a78bfa 0%, #7c5cfa 100%) !important; + } + + .p-stepper .p-step-number { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; + color: var(--color-textmuted) !important; + } + + .p-stepper .p-step-active .p-step-number { + background: rgba(124, 92, 250, 0.15) !important; + border-color: $purple !important; + color: $purple !important; + box-shadow: 0 0 0 5px rgba(124, 92, 250, 0.25) !important; + } + + .p-stepper .p-stepitem.done .p-step-number { + background: $purple !important; + border-color: $purple !important; + color: transparent !important; + } + + .p-stepper .p-step-title { + color: var(--color-defaulttextcolor) !important; + } + + .p-stepper .p-step-active .p-step-title, + .p-stepper .p-stepitem.done .p-step-title { + color: $purple !important; + } + + .p-stepper .p-steppanel-content { + color: var(--color-defaulttextcolor) !important; + } +} + +:host-context(.dark) .panel-form form { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .custom-floating-input { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .custom-floating-input::placeholder { + color: transparent !important; +} + +:host-context(.dark) .custom-floating-label { + background: var(--color-light) !important; + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .custom-floating-input:focus, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown), +:host-context(.dark) .custom-floating-input:active { + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .custom-floating-input:focus~.custom-floating-label, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown)~.custom-floating-label { + color: $purple !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back { + background: var(--color-light) !important; + color: var(--color-defaulttextcolor) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back:hover { + background: var(--color-bodybg) !important; + border-color: $purple !important; + color: $purple !important; +} + @media (max-width: 768px) { .card { diff --git a/src/app/shared/components/stepper-two/stepper-two.component.html b/src/app/shared/components/stepper-two/stepper-two.component.html index 4e1aac16..46eea989 100644 --- a/src/app/shared/components/stepper-two/stepper-two.component.html +++ b/src/app/shared/components/stepper-two/stepper-two.component.html @@ -293,7 +293,7 @@
- +
@@ -326,7 +326,7 @@
- +
@@ -338,7 +338,7 @@
- +
@@ -385,7 +385,7 @@
- +
@@ -397,7 +397,7 @@
- +
@@ -438,13 +438,13 @@
- +
- +
@@ -485,13 +485,13 @@
- +
- +
@@ -538,7 +538,7 @@
- +
diff --git a/src/app/shared/components/stepper-two/stepper-two.component.scss b/src/app/shared/components/stepper-two/stepper-two.component.scss index 9a01faae..0ce55c09 100644 --- a/src/app/shared/components/stepper-two/stepper-two.component.scss +++ b/src/app/shared/components/stepper-two/stepper-two.component.scss @@ -327,6 +327,105 @@ $subtitle-color: #6b7280; } } +/* ========================================================== + Dark Mode + ========================================================== */ + +:host-context(.dark) .custom-stepper-wrapper { + background: var(--color-bodybg) !important; +} + +:host-context(.dark) ::ng-deep .p-step:not(:last-child)::after { + background: var(--color-textmuted) !important; +} + +:host-context(.dark) ::ng-deep .p-step.done:not(:last-child)::after { + background: linear-gradient(90deg, $purple 0%, #a78bfa 100%) !important; +} + +:host-context(.dark) .step-circle { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .step-number { + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .step-circle.active { + background: rgba(124, 92, 250, 0.15) !important; + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .step-circle.active .step-number { + color: $purple !important; +} + +:host-context(.dark) .step-circle.completed { + background: $purple !important; + border-color: $purple !important; +} + +:host-context(.dark) .step-text.active .step-title, +:host-context(.dark) .step-text.active .step-subtitle, +:host-context(.dark) .step-text.completed .step-title, +:host-context(.dark) .step-text.completed .step-subtitle { + color: $purple !important; +} + +:host-context(.dark) .step-text .step-title { + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .step-text .step-subtitle { + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .panel-box { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .custom-floating-input { + background: var(--color-light) !important; + border: 1px solid rgb(115, 122, 130) !important; + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .custom-floating-input::placeholder { + color: transparent !important; +} + +:host-context(.dark) .custom-floating-label { + background: var(--color-light) !important; + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .custom-floating-input:focus, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown), +:host-context(.dark) .custom-floating-input:active { + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .custom-floating-input:focus~.custom-floating-label, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown)~.custom-floating-label { + color: $purple !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back { + background: var(--color-light) !important; + color: var(--color-defaulttextcolor) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back:hover { + background: var(--color-bodybg) !important; + border-color: $purple !important; + color: $purple !important; +} + @media (max-width: 768px) { .step-text .step-title { diff --git a/src/app/shared/components/stepper/stepper.component.html b/src/app/shared/components/stepper/stepper.component.html index 8e39a118..e4394813 100644 --- a/src/app/shared/components/stepper/stepper.component.html +++ b/src/app/shared/components/stepper/stepper.component.html @@ -164,7 +164,7 @@
- +
@@ -197,7 +197,7 @@
- +
@@ -209,7 +209,7 @@
- +
@@ -250,13 +250,13 @@
- +
- +
diff --git a/src/app/shared/components/stepper/stepper.component.scss b/src/app/shared/components/stepper/stepper.component.scss index 6499241c..54f07038 100644 --- a/src/app/shared/components/stepper/stepper.component.scss +++ b/src/app/shared/components/stepper/stepper.component.scss @@ -326,6 +326,105 @@ $subtitle-color: #6b7280; } } +/* ========================================================== + Dark Mode + ========================================================== */ + +:host-context(.dark) .custom-stepper-wrapper { + background: var(--color-bodybg) !important; +} + +:host-context(.dark) ::ng-deep .p-step-list::before { + background: var(--color-inputborder) !important; +} + +:host-context(.dark) .step-circle { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .step-number { + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .step-circle.active { + background: rgba(124, 92, 250, 0.15) !important; + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .step-circle.active .dot { + background: $purple !important; +} + +:host-context(.dark) .step-circle.completed { + background: $purple !important; + border-color: $purple !important; +} + +:host-context(.dark) .step-text.active .step-title, +:host-context(.dark) .step-text.active .step-subtitle, +:host-context(.dark) .step-text.completed .step-title, +:host-context(.dark) .step-text.completed .step-subtitle { + color: $purple !important; +} + +:host-context(.dark) .grey-dot { + background: var(--color-textmuted) !important; +} + +:host-context(.dark) .step-text .step-title { + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .step-text .step-subtitle { + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .panel-box { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) .custom-floating-input { + background: var(--color-light) !important; + border-color: var(--color-inputborder) !important; + color: var(--color-defaulttextcolor) !important; +} + +:host-context(.dark) .custom-floating-input::placeholder { + color: transparent !important; +} + +:host-context(.dark) .custom-floating-label { + background: var(--color-light) !important; + color: var(--color-textmuted) !important; +} + +:host-context(.dark) .custom-floating-input:focus, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown), +:host-context(.dark) .custom-floating-input:active { + border-color: $purple !important; + box-shadow: 0 0 0 4px rgba(124, 92, 250, 0.15) !important; +} + +:host-context(.dark) .custom-floating-input:focus~.custom-floating-label, +:host-context(.dark) .custom-floating-input:not(:placeholder-shown)~.custom-floating-label { + color: $purple !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back { + background: var(--color-light) !important; + color: var(--color-defaulttextcolor) !important; + border-color: var(--color-inputborder) !important; +} + +:host-context(.dark) ::ng-deep .step-btn-back:hover { + background: var(--color-bodybg) !important; + border-color: $purple !important; + color: $purple !important; +} + @media (max-width: 768px) { .step-text .step-title {