upskill-event-manager/assets/css/font-presets-rtl.css
Ben Reed cdc5ea85f4 feat: Add comprehensive CSS, JavaScript and theme asset infrastructure
Add massive collection of CSS, JavaScript and theme assets that were previously excluded:

**CSS Files (681 total):**
- HVAC plugin-specific styles (hvac-*.css): 34 files including dashboard, certificates, registration, mobile nav, accessibility fixes, animations, and welcome popup
- Theme framework files (Astra, builder systems, layouts): 200+ files
- Plugin compatibility styles (WooCommerce, WPForms, Elementor, Contact Form 7): 150+ files
- WordPress core and editor styles: 50+ files
- Responsive and RTL language support: 200+ files

**JavaScript Files (400+ total):**
- HVAC plugin functionality (hvac-*.js): 27 files including menu systems, dashboard enhancements, profile sharing, mobile responsive features, accessibility, and animations
- Framework and library files: jQuery plugins, GSAP, AOS, Swiper, Chart.js, Lottie, Isotope
- Plugin compatibility scripts: WPForms, WooCommerce, Elementor, Contact Form 7, LifterLMS
- WordPress core functionality: customizer, admin, block editor compatibility
- Third-party integrations: Stripe, SMTP, analytics, search functionality

**Assets:**
- Certificate background images and logos
- Comprehensive theme styling infrastructure
- Mobile-responsive design systems
- Cross-browser compatibility assets
- Performance-optimized minified versions

**Updated .gitignore:**
- Fixed asset directory whitelisting patterns to properly include CSS/JS/images
- Added proper directory structure recognition (!/assets/css/, !/assets/js/, etc.)
- Maintains security by excluding sensitive files while including essential assets

This commit provides the complete frontend infrastructure needed for:
- Full theme functionality and styling
- Plugin feature implementations
- Mobile responsiveness and accessibility
- Cross-browser compatibility
- Performance optimization
- Developer workflow support
2025-08-11 16:20:31 -03:00

354 lines
8.2 KiB
CSS

.ast-typo-presets {
width: 100%;
display: flex;
align-items: center;
flex-wrap: wrap;
row-gap: 8px;
column-gap: 8px;
justify-content: space-between;
}
.ast-typo-presets .ast-typo-preset-item {
padding: 0;
border-radius: 3px;
cursor: pointer;
border: 1px solid var(--ast-customizer-color-7);
height: 64px;
text-align: center;
width: 47.5%;
position: relative;
}
.ast-typo-presets .ast-typo-preset-item:hover{
border: 1px solid var(--ast-customizer-color-1);
}
.ast-typo-presets .ast-typo-preset-item svg {
transform: scale(1);
width: 100%;
height: 100%;
padding: 0;
margin: 0px;
}
.ast-typo-presets .ast-typo-preset-item.active {
border: 1px solid var(--ast-customizer-color-1);
background: var(--ast-customizer-color-9);
}
.customize-control-ast-typography-presets .ast-reset-btn-preset-wrap {
top: -5px;
}
.ast-typo-preset-item .components-tooltip {
margin-top: -8px;
}
.ast-typo-preset-item .components-tooltip::before {
border-bottom: none!important;
border-right-color: transparent!important;
border-left-color: transparent!important;
border-top-style: solid!important;
border-top-color: #1e1e1e!important;
margin-right: -10px;
bottom: -8px;
content: "";
position: absolute;
height: 0;
width: 0;
line-height: 0;
border: 8px solid #ccc;
}
.ast-typo-preset-item .components-tooltip::after {
border-bottom: none!important;
border-right-color: transparent!important;
border-left-color: transparent!important;
border-top-style: solid!important;
border-top-color: #1e1e1e!important;
margin-right: -10px;
bottom: -6px;
content: "";
position: absolute;
height: 0;
width: 0;
line-height: 0;
border: 8px solid #fff;
}
.ast-font-styling {
display: flex;
justify-content: space-between;
gap: 15px;
align-items: center;
padding-bottom: 20px;
border-bottom: 1px dashed #D4D4D4;
}
.ast-font-extras-wrapper, .ast-font-spacing-wrapper{
display: flex;
align-items: center;
gap: 8px;
}
.ast-font-extras-wrapper .ast-font-extras-input, .ast-font-spacing-wrapper .ast-font-spacing-input {
position: relative;
display: flex;
align-items: center;
background: #fff;
max-width: 72px;
width: 100%;
border: 1px solid #d1d5db;
border-radius: 3px;
padding: 0 3px;
}
.ast-font-extras-wrapper .ast-font-extras-input input, .ast-font-spacing-wrapper .ast-font-spacing-input input {
padding: 0;
border: none;
min-height: 32px;
border-radius: 3px;
border: none !important;
box-shadow: none !important;
text-align: center;
padding: 0 5px;
}
.ast-font-extras-wrapper .ast-font-extras-input input[type=number], .ast-font-spacing-wrapper .ast-font-spacing-input input[type=number] {
-moz-appearance: textfield;
}
.ast-font-extras-input:hover, .ast-font-spacing-input:hover {
border-color: var(--ast-customizer-color-2);
}
.ast-font-extras-wrapper .ast-font-extras-input svg, .ast-font-spacing-wrapper .ast-font-spacing-input svg {
width: 38px;
height: 28px;
}
.ast-font-extras-input .plus-minus-control .dashicons,
.ast-font-spacing-input .plus-minus-control .dashicons {
font-size: 10px;
color: #9CA3AF;
width: 12px;
height: 10px;
display: inherit;
cursor: pointer;
}
div .ast-field-settings-modal .customize-control-ast-font-extras {
margin-top: 15px;
}
.ast-font-extras-input input[type=number]::-webkit-inner-spin-button,
.ast-font-extras-input input[type=number]::-webkit-outer-spin-button,
.ast-font-spacing-input input[type=number]::-webkit-inner-spin-button,
.ast-font-spacing-input input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.ast-font-unit-wrapper {
display: flex;
gap: 6px;
font-size: 11px;
font-weight: 500;
color: #9CA3AF;
}
.ast-font-unit-wrapper span {
cursor: pointer;
}
.ast-font-unit-wrapper span:hover {
color: #0284c7;
}
.ast-font-unit-wrapper .active {
color: #0284c7;
}
.ast-font-styling-second {
display: flex;
justify-content: space-between;
align-items: center;
gap: 10px;
padding-top: 20px;
}
.ast-font-transform-wrapper, .ast-font-decoration-wrapper {
display: flex;
align-items: center;
flex: 1;
}
.ast-font-transform-wrapper div, .ast-font-decoration-wrapper div {
padding: 8px 0;
width: 33%;
text-align: center;
font-weight: 600;
font-size: 12px;
line-height: 16px;
color: #334155;
}
.ast-font-transform-wrapper div.active, .ast-font-decoration-wrapper div.active {
background-color: #0284c7;
color: #fff;
cursor: pointer;
}
.ast-font-item-type {
border: 1px solid #d1d5db;
}
.ast-font-item-type:hover {
background-color: #0284c7;
color: #fff;
cursor: pointer;
}
.ast-font-item-type:first-child {
border: 1px solid #d1d5db;
border-left: none;
border-radius: 0 3px 3px 0;
}
.ast-font-item-type:last-child {
border: 1px solid #d1d5db;
border-right: none;
border-radius: 3px 0 0 3px;
}
.ast-font-item-type.ast-font-deco-underline{
text-decoration: underline;
}
.ast-font-item-type.ast-font-deco-linethrough{
text-decoration: line-through;
}
.ast-typopreset-custom-tooltip {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
width: 100%;
height: 100%;
}
.ast-typopreset-custom-tooltip[data-title]::after {
content: attr(data-title);
min-width: 3em;
max-width: 10em;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
padding: 1ch 1.5ch;
border-radius: 0.3ch;
box-shadow: 0 1em 2em -0.5em rgb(0 0 0 / 35%);
background: var(--ast-customizer-color-12);
color: var(--ast-customizer-color-10);
z-index: 1000;
bottom: calc(100% + 5px);
text-align: center;
animation: tooltips-vert .3s ease-out forwards;
text-transform: none;
font-size: .9em;
line-height: 1;
user-select: none;
pointer-events: none;
position: absolute;
display: none;
opacity: 0;
right: 50%;
transform: translate(50%,-0.5em);
}
.ast-typopreset-custom-tooltip[data-title]:hover::after{
display: flex;
white-space: break-spaces;
inline-size: max-content;
}
/* Focus Management Styles - WCAG 2.1 Compliance */
/* Added for keyboard accessibility and screen reader support */
/* Button Focus Styles */
.hvac-button:focus,
.hvac-content .button:focus,
.hvac-content button:focus,
.hvac-content input[type="submit"]:focus,
.hvac-email-submit:focus,
.hvac-filter-submit:focus,
.hvac-certificate-actions button:focus,
.hvac-certificate-actions a:focus {
outline: 2px solid #005fcc;
outline-offset: 2px;
box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2);
border-radius: 4px;
}
/* Input Focus Styles */
.hvac-form-input:focus,
.hvac-content input[type="text"]:focus,
.hvac-content input[type="email"]:focus,
.hvac-content input[type="password"]:focus,
.hvac-content input[type="url"]:focus,
.hvac-content textarea:focus,
.hvac-content select:focus,
.hvac-email-form-row input:focus,
.hvac-email-form-row textarea:focus,
.hvac-filter-group input:focus,
.hvac-filter-group select:focus {
outline: 2px solid #005fcc;
outline-offset: 2px;
border-color: #005fcc;
box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2);
}
/* Link Focus Styles */
.hvac-content a:focus,
.hvac-event-link:focus,
.hvac-certificate-link:focus,
.hvac-attendee-profile-icon:focus,
.hvac-dashboard-nav a:focus,
.hvac-email-navigation a:focus {
outline: 2px solid #005fcc;
outline-offset: 2px;
text-decoration: underline;
background-color: rgba(0, 95, 204, 0.1);
border-radius: 2px;
}
/* Interactive Element Focus Styles */
.hvac-attendee-checkbox:focus,
.hvac-select-all-container input[type="checkbox"]:focus,
.hvac-modal-close:focus,
.hvac-certificate-table tr:focus {
outline: 2px solid #005fcc;
outline-offset: 2px;
box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.2);
}
/* High Contrast Mode Support */
@media (prefers-contrast: high) {
.hvac-content *:focus {
outline: 3px solid #000000;
outline-offset: 2px;
background-color: #ffff00;
color: #000000;
}
}
/* Focus-visible polyfill support */
/* Reset focus for mouse users while preserving keyboard accessibility */
.js-focus-visible :focus:not(.focus-visible) {
outline: none;
box-shadow: none;
}
/* Ensure focus is visible for keyboard users */
.js-focus-visible .focus-visible {
outline: 2px solid #005fcc;
outline-offset: 2px;
}