UI updated

This commit is contained in:
Michal Vrba
2025-12-19 15:53:08 +01:00
parent 5d1b535f82
commit e07e3f880e
2 changed files with 39 additions and 37 deletions
+2 -2
View File
@@ -47,7 +47,7 @@
<ValidationMessage For="@(() => paymentModel.Remark)" class="validation-message" /> <ValidationMessage For="@(() => paymentModel.Remark)" class="validation-message" />
</div> </div>
<button type="submit" class="btn-generate" disabled="@_isGenerating"> <button type="submit" class="btn-base btn-generate" disabled="@_isGenerating">
@if (_isGenerating) @if (_isGenerating)
{ {
<span class="spinner"></span> <span class="spinner"></span>
@@ -93,7 +93,7 @@
} }
</div> </div>
<button class="btn-back" @onclick="@GoBack"> <button class="btn-base btn-back" @onclick="@GoBack">
<span>← Create New Payment</span> <span>← Create New Payment</span>
</button> </button>
</div> </div>
+37 -35
View File
@@ -107,10 +107,8 @@
animation: fadeIn 0.3s ease; animation: fadeIn 0.3s ease;
} }
/* Generate Button */ /* Unified Button Base Styles */
.btn-generate { .btn-base {
background: linear-gradient(135deg, #2d5a27, #4a7c59);
color: white;
border: none; border: none;
padding: 18px 32px; padding: 18px 32px;
border-radius: 12px; border-radius: 12px;
@@ -118,29 +116,62 @@
font-weight: 600; font-weight: 600;
cursor: pointer; cursor: pointer;
transition: all 0.3s ease; transition: all 0.3s ease;
margin-top: 16px;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
gap: 8px; gap: 8px;
box-shadow: 0 4px 12px rgba(45, 90, 39, 0.3);
width: 100%; width: 100%;
min-height: 56px; min-height: 56px;
text-decoration: none;
outline: none;
}
/* Primary Green Button (Generate) */
.btn-generate {
background: linear-gradient(135deg, #2d5a27, #4a7c59);
color: white;
box-shadow: 0 4px 12px rgba(45, 90, 39, 0.3);
margin-top: 16px;
} }
.btn-generate:hover:not(:disabled) { .btn-generate:hover:not(:disabled) {
background: linear-gradient(135deg, #1f3d1a, #3d6b4a);
transform: translateY(-2px); transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(45, 90, 39, 0.4); box-shadow: 0 8px 24px rgba(45, 90, 39, 0.4);
} }
.btn-generate:active:not(:disabled) { .btn-generate:active:not(:disabled) {
transform: translateY(0); transform: translateY(0);
box-shadow: 0 4px 12px rgba(45, 90, 39, 0.3);
} }
.btn-generate:disabled { .btn-generate:disabled {
opacity: 0.7; opacity: 0.7;
cursor: not-allowed; cursor: not-allowed;
transform: none; transform: none;
background: linear-gradient(135deg, #2d5a27, #4a7c59);
}
/* Secondary Green Button (Back) */
.btn-back {
background: rgba(74, 124, 89, 0.1);
color: #2d5a27;
border: 2px solid #4a7c59;
box-shadow: 0 4px 12px rgba(45, 90, 39, 0.1);
}
.btn-back:hover {
background: rgba(74, 124, 89, 0.15);
border-color: #2d5a27;
color: #1f3d1a;
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(45, 90, 39, 0.2);
}
.btn-back:active {
transform: translateY(0);
box-shadow: 0 4px 12px rgba(45, 90, 39, 0.1);
background: rgba(74, 124, 89, 0.2);
} }
.spinner { .spinner {
@@ -235,35 +266,6 @@
max-width: 60%; max-width: 60%;
} }
/* Back Button */
.btn-back {
background: #f3f4f6;
color: #374151;
border: 2px solid #e5e7eb;
padding: 16px 32px;
border-radius: 12px;
font-size: 1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
width: 100%;
min-height: 56px;
}
.btn-back:hover {
background: #e5e7eb;
border-color: #d1d5db;
transform: translateY(-1px);
}
.btn-back:active {
transform: translateY(0);
}
/* Animations */ /* Animations */
@keyframes slideUp { @keyframes slideUp {
from { from {