best shot
This commit is contained in:
@@ -1,42 +1,201 @@
|
||||
/* Buttons */
|
||||
.cta-button {
|
||||
display: inline-block;
|
||||
padding: 1rem 2rem;
|
||||
background-color: var(--accent-color);
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
transition: var(--transition);
|
||||
/* Base Button Styles */
|
||||
.button,
|
||||
.cta-button,
|
||||
.submit-button,
|
||||
.icon-button {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: var(--space-sm) var(--space-lg);
|
||||
border-radius: var(--border-radius-md);
|
||||
font-weight: 600;
|
||||
transition: all var(--transition-base);
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
font-family: var(--font-primary);
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* CTA Button */
|
||||
.cta-button {
|
||||
background: var(--accent-color);
|
||||
color: white;
|
||||
font-size: var(--font-size-lg);
|
||||
padding: var(--space-md) var(--space-xl);
|
||||
text-decoration: none;
|
||||
gap: var(--space-sm);
|
||||
}
|
||||
|
||||
.cta-button:hover {
|
||||
transform: translateY(-2px);
|
||||
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 4px 12px rgba(21, 52, 209, 0.2);
|
||||
}
|
||||
|
||||
.cta-button:focus {
|
||||
outline: 2px solid var(--text-color);
|
||||
outline-offset: 2px;
|
||||
.cta-button:active {
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
.cta-button i {
|
||||
transition: transform var(--transition-base);
|
||||
}
|
||||
|
||||
.cta-button:hover i {
|
||||
transform: translateX(4px);
|
||||
}
|
||||
|
||||
/* Submit Button */
|
||||
.submit-button {
|
||||
padding: 1rem;
|
||||
background-color: var(--accent-color);
|
||||
background: var(--accent-color);
|
||||
color: white;
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
transition: var(--transition);
|
||||
width: 100%;
|
||||
padding: var(--space-md);
|
||||
position: relative;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.submit-button:hover {
|
||||
transform: translateY(-2px);
|
||||
background: var(--accent-blue);
|
||||
}
|
||||
|
||||
.submit-button:disabled {
|
||||
opacity: 0.7;
|
||||
background: var(--border-color);
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.submit-button .button-text {
|
||||
transition: opacity var(--transition-base);
|
||||
}
|
||||
|
||||
.submit-button .loading-spinner {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
/* Icon Button */
|
||||
.icon-button {
|
||||
background: transparent;
|
||||
color: var(--text-color);
|
||||
padding: var(--space-sm);
|
||||
border-radius: var(--border-radius-full);
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.icon-button:hover {
|
||||
background: var(--card-bg);
|
||||
}
|
||||
|
||||
.icon-button i {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
|
||||
/* Cookie Consent Buttons */
|
||||
.cookie-button {
|
||||
font-size: var(--font-size-sm);
|
||||
padding: var(--space-sm) var(--space-lg);
|
||||
border-radius: var(--border-radius-sm);
|
||||
font-weight: 500;
|
||||
transition: var(--transition-base);
|
||||
}
|
||||
|
||||
.cookie-button.accept {
|
||||
background: var(--accent-color);
|
||||
color: white;
|
||||
}
|
||||
|
||||
.cookie-button.accept:hover {
|
||||
background: var(--accent-blue);
|
||||
}
|
||||
|
||||
.cookie-button.reject {
|
||||
background: transparent;
|
||||
border: 1px solid var(--border-color);
|
||||
color: var(--text-color);
|
||||
}
|
||||
|
||||
.cookie-button.reject:hover {
|
||||
background: var(--card-bg);
|
||||
}
|
||||
|
||||
/* Footer Links */
|
||||
.footer-link {
|
||||
color: var(--text-color);
|
||||
text-decoration: none;
|
||||
padding: var(--space-xs) var(--space-sm);
|
||||
border-radius: var(--border-radius-sm);
|
||||
transition: var(--transition-base);
|
||||
}
|
||||
|
||||
.footer-link:hover {
|
||||
background: var(--card-bg);
|
||||
}
|
||||
|
||||
/* Button Ripple Effect */
|
||||
.button::after,
|
||||
.cta-button::after,
|
||||
.submit-button::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 0;
|
||||
height: 0;
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
border-radius: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
transition: width 0.3s ease-out, height 0.3s ease-out;
|
||||
}
|
||||
|
||||
.button:active::after,
|
||||
.cta-button:active::after,
|
||||
.submit-button:active::after {
|
||||
width: 200%;
|
||||
height: 200%;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
/* Focus States */
|
||||
.button:focus-visible,
|
||||
.cta-button:focus-visible,
|
||||
.submit-button:focus-visible,
|
||||
.icon-button:focus-visible {
|
||||
outline: 2px solid var(--accent-color);
|
||||
outline-offset: 2px;
|
||||
}
|
||||
|
||||
/* Loading State */
|
||||
.submit-button[aria-busy="true"] {
|
||||
cursor: progress;
|
||||
}
|
||||
|
||||
.submit-button[aria-busy="true"] .button-text {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.submit-button[aria-busy="true"] .loading-spinner {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Responsive Adjustments */
|
||||
@media (max-width: 768px) {
|
||||
.cta-button {
|
||||
padding: var(--space-sm) var(--space-lg);
|
||||
font-size: var(--font-size-base);
|
||||
}
|
||||
|
||||
.cookie-button {
|
||||
padding: var(--space-xs) var(--space-md);
|
||||
}
|
||||
}
|
||||
|
||||
/* High Contrast Mode Support */
|
||||
@media (forced-colors: active) {
|
||||
.button,
|
||||
.cta-button,
|
||||
.submit-button,
|
||||
.icon-button {
|
||||
border: 1px solid currentColor;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user