.hpdp-download-section {
margin: 20px 0;
padding: 20px;
background: #f9f9f9;
border: 1px solid #ddd;
border-radius: 8px;
}
.hpdp-section-title {
margin-top: 0;
margin-bottom: 15px;
font-size: 18px;
color: #333;
}
.hpdp-loading {
text-align: center;
padding: 20px;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
}
.hpdp-spinner {
display: inline-block;
width: 20px;
height: 20px;
border: 3px solid rgba(0,0,0,0.1);
border-radius: 50%;
border-top-color: #0073aa;
animation: hpdp-spin 1s ease-in-out infinite;
}
@keyframes hpdp-spin {
to { transform: rotate(360deg); }
}
.hpdp-files-container {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 15px;
margin: 20px 0;
}
.hpdp-file-item {
background: #fff;
border: 1px solid #ddd;
border-radius: 6px;
padding: 15px;
transition: all 0.3s ease;
display: flex;
flex-direction: column;
gap: 10px;
}
.hpdp-file-item:hover {
border-color: #0073aa;
box-shadow: 0 3px 10px rgba(0,115,170,0.1);
transform: translateY(-2px);
}
.hpdp-file-type {
font-weight: bold;
font-size: 14px;
color: #0073aa;
text-transform: uppercase;
}
.hpdp-file-button,
.hpdp-download-link {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 20px;
background: #0073aa;
color: #fff !important;
text-decoration: none;
border-radius: 4px;
transition: background 0.3s;
border: none;
cursor: pointer;
font-size: 14px;
}
.hpdp-file-button:hover,
.hpdp-download-link:hover {
background: #005a87;
color: #fff !important;
}
.hpdp-icon {
width: 16px;
height: 16px;
display: inline-block;
}
.hpdp-icon-download::before {
content: "⬇";
font-size: 16px;
}
.hpdp-no-files,
.hpdp-error {
text-align: center;
padding: 30px;
color: #666;
}
.hpdp-error {
background: #fff5f5;
border: 1px solid #f5c6cb;
color: #721c24;
}
.hpdp-error-message {
margin: 0;
}
.hpdp-bulk-actions {
margin-top: 20px;
padding-top: 20px;
border-top: 1px solid #ddd;
text-align: center;
}
.hpdp-download-all {
padding: 12px 30px;
font-size: 16px;
} .hpdp-search-wrapper {
margin: 20px 0;
padding: 20px;
background: #fff;
border: 1px solid #ddd;
border-radius: 8px;
}
.hpdp-search-form {
position: relative;
margin-bottom: 20px;
}
.hpdp-product-search {
width: 100%;
padding: 12px 15px;
font-size: 16px;
border: 2px solid #ddd;
border-radius: 4px;
transition: border-color 0.3s;
}
.hpdp-product-search:focus {
border-color: #0073aa;
outline: none;
}
.hpdp-search-results {
position: absolute;
top: 100%;
left: 0;
right: 0;
background: #fff;
border: 1px solid #ddd;
border-top: none;
max-height: 300px;
overflow-y: auto;
z-index: 1000;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.hpdp-search-result-item {
padding: 12px 15px;
cursor: pointer;
border-bottom: 1px solid #eee;
transition: background 0.2s;
}
.hpdp-search-result-item:hover {
background: #f5f5f5;
}
.hpdp-search-result-item strong {
display: block;
margin-bottom: 4px;
}
.hpdp-search-result-item small {
color: #666;
}
.hpdp-search-selected-product h4 {
margin-top: 0;
color: #0073aa;
}
.hpdp-login-required {
text-align: center;
padding: 30px;
background: #fff3cd;
border: 1px solid #ffc107;
border-radius: 4px;
color: #856404;
} .hpdp-shortcode-wrapper {
margin: 20px 0;
} @media (max-width: 768px) {
.hpdp-files-container {
grid-template-columns: 1fr;
}
.hpdp-download-section {
padding: 15px;
}
}