BREAKING CHANGE: Removed Astra theme integration and all theme-specific code
- Removed class-hvac-astra-integration.php (584 lines of theme-specific code)
- Removed 500+ theme-specific CSS files (ast-*, astra-*, divi-*)
- Removed 15+ theme-specific JavaScript files
- Created theme-agnostic HVAC_Layout_Manager class
- Added generic hvac-layout.css with universal styling
- Plugin now works with ANY WordPress theme
This refactoring ensures the plugin complies with WordPress.org plugin
guidelines which require plugins to be theme-independent. The new layout
system uses standard WordPress hooks and filters that work universally.
Key changes:
- Body classes: hvac-plugin-page, hvac-no-sidebar, hvac-full-width
- Generic post meta: _sidebar_layout, page_layout (widely supported)
- Standard WordPress hooks: body_class, wp_enqueue_scripts, is_active_sidebar
- CSS uses generic selectors: .site-content, .content-area, #primary
Removed monitoring infrastructure files that were causing PHP segfaults:
- class-hvac-background-jobs.php
- class-hvac-health-monitor.php
- class-hvac-error-recovery.php
- class-hvac-security-monitor.php
- class-hvac-performance-monitor.php
- class-hvac-backup-manager.php
- class-hvac-cache-optimizer.php
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
335 lines
No EOL
7.6 KiB
CSS
335 lines
No EOL
7.6 KiB
CSS
/**
|
|
* HVAC Layout Styles
|
|
* Theme-agnostic styles for HVAC plugin pages
|
|
*
|
|
* @package HVAC_Community_Events
|
|
* @since 2.0.0
|
|
*/
|
|
|
|
/* ===========================
|
|
Base Layout Styles
|
|
=========================== */
|
|
|
|
/* Full-width layout for HVAC pages */
|
|
.hvac-plugin-page .site-content,
|
|
.hvac-plugin-page .content-area,
|
|
.hvac-plugin-page #content,
|
|
.hvac-plugin-page .site-main,
|
|
.hvac-plugin-page #main {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
float: none;
|
|
margin: 0;
|
|
}
|
|
|
|
/* Container wrapper */
|
|
.hvac-plugin-page .hvac-page-wrapper {
|
|
max-width: 1920px;
|
|
margin: 0 auto;
|
|
padding: 0 40px;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* Mobile padding adjustment */
|
|
@media (max-width: 768px) {
|
|
.hvac-plugin-page .hvac-page-wrapper {
|
|
padding: 0 20px;
|
|
}
|
|
}
|
|
|
|
/* ===========================
|
|
Sidebar Removal
|
|
=========================== */
|
|
|
|
/* Hide all common sidebar selectors */
|
|
.hvac-plugin-page .widget-area,
|
|
.hvac-plugin-page .sidebar,
|
|
.hvac-plugin-page #sidebar,
|
|
.hvac-plugin-page #secondary,
|
|
.hvac-plugin-page aside.widget-area,
|
|
.hvac-plugin-page .sidebar-main,
|
|
.hvac-plugin-page .sidebar-primary,
|
|
.hvac-plugin-page .sidebar-secondary,
|
|
.hvac-plugin-page .sidebar-left,
|
|
.hvac-plugin-page .sidebar-right {
|
|
display: none !important;
|
|
width: 0 !important;
|
|
height: 0 !important;
|
|
visibility: hidden !important;
|
|
position: absolute !important;
|
|
left: -9999px !important;
|
|
}
|
|
|
|
/* Ensure primary content takes full width */
|
|
.hvac-plugin-page #primary,
|
|
.hvac-plugin-page .primary,
|
|
.hvac-plugin-page .content-area,
|
|
.hvac-plugin-page .site-main,
|
|
.hvac-plugin-page #main,
|
|
.hvac-plugin-page .main-content {
|
|
width: 100% !important;
|
|
max-width: 100% !important;
|
|
float: none !important;
|
|
margin-left: 0 !important;
|
|
margin-right: 0 !important;
|
|
}
|
|
|
|
/* ===========================
|
|
Find a Trainer Boxed Layout
|
|
=========================== */
|
|
|
|
.hvac-find-trainer-page .site-content,
|
|
.hvac-find-trainer-page .content-area,
|
|
.hvac-find-trainer-page #content,
|
|
.hvac-find-trainer-page .entry-content,
|
|
.hvac-find-trainer-page #primary {
|
|
max-width: 1200px !important;
|
|
width: 100% !important;
|
|
margin: 0 auto !important;
|
|
padding-left: 20px !important;
|
|
padding-right: 20px !important;
|
|
box-sizing: border-box !important;
|
|
}
|
|
|
|
/* Map container constraints */
|
|
.hvac-find-trainer-page .hvac-map-section {
|
|
max-width: 1160px !important;
|
|
margin: 0 auto !important;
|
|
overflow: hidden !important;
|
|
}
|
|
|
|
/* MapGeo plugin compatibility */
|
|
.hvac-find-trainer-page .map_wrapper,
|
|
.hvac-find-trainer-page .map_box,
|
|
.hvac-find-trainer-page .map_container,
|
|
.hvac-find-trainer-page .igm-map-wrapper,
|
|
.hvac-find-trainer-page .igm-container,
|
|
.hvac-find-trainer-page .igm-map-container,
|
|
.hvac-find-trainer-page .interactive-geo-map,
|
|
.hvac-find-trainer-page [id*="igmMap"] {
|
|
max-width: 100% !important;
|
|
width: 100% !important;
|
|
overflow: hidden !important;
|
|
box-sizing: border-box !important;
|
|
}
|
|
|
|
/* ===========================
|
|
Dashboard Pages
|
|
=========================== */
|
|
|
|
.hvac-plugin-page .hvac-dashboard-wrapper {
|
|
background: #f5f5f5;
|
|
min-height: calc(100vh - 200px);
|
|
padding: 40px 0;
|
|
}
|
|
|
|
.hvac-plugin-page .hvac-dashboard-content {
|
|
background: white;
|
|
border-radius: 8px;
|
|
padding: 30px;
|
|
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
}
|
|
|
|
/* ===========================
|
|
Navigation & Breadcrumbs
|
|
=========================== */
|
|
|
|
.hvac-plugin-page .hvac-navigation {
|
|
background: #fff;
|
|
border-bottom: 1px solid #e0e0e0;
|
|
margin-bottom: 30px;
|
|
padding: 0;
|
|
}
|
|
|
|
.hvac-plugin-page .hvac-breadcrumbs {
|
|
padding: 15px 0;
|
|
font-size: 14px;
|
|
color: #666;
|
|
}
|
|
|
|
/* ===========================
|
|
Forms & Inputs
|
|
=========================== */
|
|
|
|
.hvac-plugin-page input[type="text"],
|
|
.hvac-plugin-page input[type="email"],
|
|
.hvac-plugin-page input[type="password"],
|
|
.hvac-plugin-page input[type="tel"],
|
|
.hvac-plugin-page input[type="url"],
|
|
.hvac-plugin-page textarea,
|
|
.hvac-plugin-page select {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* ===========================
|
|
Event Management Styles
|
|
=========================== */
|
|
|
|
.tribe-community-events {
|
|
background: #fff;
|
|
padding: 20px;
|
|
border-radius: 8px;
|
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
}
|
|
|
|
.tribe-community-events .tribe-events-community-details,
|
|
.tribe-community-events .event-dynamic-helper-text,
|
|
.tribe-community-events .tribe-section {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.tribe-community-events h3 {
|
|
margin-top: 30px;
|
|
margin-bottom: 15px;
|
|
padding-bottom: 10px;
|
|
border-bottom: 2px solid #e5e7eb;
|
|
font-size: 1.3em;
|
|
color: #333;
|
|
}
|
|
|
|
.tribe-community-events label {
|
|
display: block;
|
|
margin-bottom: 5px;
|
|
font-weight: 600;
|
|
color: #333;
|
|
}
|
|
|
|
.tribe-community-events input[type="text"],
|
|
.tribe-community-events input[type="email"],
|
|
.tribe-community-events input[type="url"],
|
|
.tribe-community-events input[type="tel"],
|
|
.tribe-community-events input[type="number"],
|
|
.tribe-community-events input[type="date"],
|
|
.tribe-community-events input[type="time"],
|
|
.tribe-community-events select,
|
|
.tribe-community-events textarea {
|
|
width: 100%;
|
|
padding: 10px;
|
|
border: 1px solid #ddd;
|
|
border-radius: 4px;
|
|
font-size: 14px;
|
|
background: #fff;
|
|
transition: border-color 0.2s;
|
|
}
|
|
|
|
.tribe-community-events input:focus,
|
|
.tribe-community-events select:focus,
|
|
.tribe-community-events textarea:focus {
|
|
outline: none;
|
|
border-color: #0073aa;
|
|
box-shadow: 0 0 0 3px rgba(0, 115, 170, 0.1);
|
|
}
|
|
|
|
.tribe-community-events .tribe-button,
|
|
.tribe-community-events input[type="submit"] {
|
|
background: #0073aa;
|
|
color: white;
|
|
padding: 10px 20px;
|
|
border: none;
|
|
border-radius: 4px;
|
|
font-size: 16px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
transition: background 0.2s;
|
|
}
|
|
|
|
.tribe-community-events .tribe-button:hover,
|
|
.tribe-community-events input[type="submit"]:hover {
|
|
background: #005a87;
|
|
}
|
|
|
|
/* ===========================
|
|
Certificate Pages
|
|
=========================== */
|
|
|
|
.hvac-certificate-wrapper {
|
|
background: #fff;
|
|
padding: 20px;
|
|
border-radius: 8px;
|
|
margin: 0;
|
|
}
|
|
|
|
/* ===========================
|
|
Responsive Design
|
|
=========================== */
|
|
|
|
/* Tablet */
|
|
@media (max-width: 1024px) {
|
|
.hvac-plugin-page .hvac-page-wrapper {
|
|
padding: 0 30px;
|
|
}
|
|
|
|
.hvac-find-trainer-page .site-content,
|
|
.hvac-find-trainer-page .content-area {
|
|
max-width: 100% !important;
|
|
}
|
|
}
|
|
|
|
/* Mobile */
|
|
@media (max-width: 768px) {
|
|
.hvac-plugin-page .hvac-page-wrapper {
|
|
padding: 0 15px;
|
|
}
|
|
|
|
.hvac-plugin-page .hvac-dashboard-content {
|
|
padding: 20px;
|
|
}
|
|
|
|
.hvac-find-trainer-page .site-content,
|
|
.hvac-find-trainer-page .content-area,
|
|
.hvac-find-trainer-page #primary {
|
|
padding-left: 15px !important;
|
|
padding-right: 15px !important;
|
|
}
|
|
|
|
.tribe-community-events {
|
|
padding: 15px;
|
|
}
|
|
}
|
|
|
|
/* ===========================
|
|
Utility Classes
|
|
=========================== */
|
|
|
|
.hvac-clearfix::after {
|
|
content: "";
|
|
display: table;
|
|
clear: both;
|
|
}
|
|
|
|
.hvac-hidden {
|
|
display: none !important;
|
|
}
|
|
|
|
.hvac-text-center {
|
|
text-align: center;
|
|
}
|
|
|
|
.hvac-text-left {
|
|
text-align: left;
|
|
}
|
|
|
|
.hvac-text-right {
|
|
text-align: right;
|
|
}
|
|
|
|
/* ===========================
|
|
Print Styles
|
|
=========================== */
|
|
|
|
@media print {
|
|
.hvac-plugin-page .hvac-navigation,
|
|
.hvac-plugin-page .hvac-breadcrumbs,
|
|
.hvac-plugin-page .site-header,
|
|
.hvac-plugin-page .site-footer {
|
|
display: none !important;
|
|
}
|
|
|
|
.hvac-plugin-page .site-content,
|
|
.hvac-plugin-page .content-area {
|
|
max-width: 100% !important;
|
|
padding: 0 !important;
|
|
}
|
|
} |