/* Classic skin, support area: /support, /support-tickets, /contact, /payment, /authorized-distributors, /upload,
   /about, /customer-service, /terms, /refund-policy, /privacy-policy, /privacy, /page/{slug}.
   Inline <style> blocks of the WordPress templates, plus offsets for this app's layout. */

/* main.md411-main already clears the fixed header + quick bar (skin.css), so the WordPress 140px offsets
   of the page header and the legal pages become the small gap they left under the bar. */
main.md411-main > .md411-page-header { padding-top: 20px !important; }
main.md411-main > .md411-legal-content { padding-top: 20px !important; }
/* Legal content inside a section (privacy pages, about/customer-service panel text) has no offset at all. */
.md411-section .md411-legal-content { padding-top: 0 !important; min-height: 0; }

/* Form field errors (validation) and required marks */
.md411-ticket-form .required, .md411-contact-form .required, .md411-upload-form .required { color: #e74c3c; }
.md411-field-error { display: block; margin-top: 6px; color: #ff3b30; font-size: .83rem; }
.md411-form-message.error div + div { margin-top: 4px; }
.md411-input[readonly] { opacity: .8; cursor: default; }
a.md411-btn[style*="width:100%"] { text-align: center; justify-content: center; }

/* page-support-tickets.php */
.md411-tickets-divider { border-top: 1px solid rgba(212,175,55,.15); margin-bottom: 32px; position: relative; text-align: center; }
.md411-tickets-divider span { position: relative; top: -12px; background: var(--md411-bg-primary); padding: 0 16px; color: var(--md411-text-secondary); font-size: .85rem; }
.md411-tickets-search { display: grid; grid-template-columns: minmax(180px, 1fr) auto; gap: 12px; align-items: end; }
.md411-ticket-detail { background: var(--md411-bg-card); border: 1px solid var(--md411-border-gold); border-radius: var(--md411-radius); padding: 24px; margin-bottom: 16px; }
.md411-ticket-header { display: flex; justify-content: space-between; align-items: start; gap: 12px; margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid rgba(212,175,55,.2); }
.md411-ticket-title { flex: 1; min-width: 0; }
.md411-ticket-title a { color: inherit; }
.md411-ticket-title a:hover { color: var(--md411-gold); }
.md411-ticket-status { padding: 6px 12px; border-radius: 20px; font-size: .85rem; font-weight: bold; white-space: nowrap; }
.status-new { background: #fff3c4; color: #856404; }
.status-review { background: #cce5ff; color: #004085; }
.status-answered { background: #d4edda; color: #155724; }
.status-closed { background: #f8d7da; color: #721c24; }
.md411-ticket-meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; margin-bottom: 16px; }
.md411-meta-item { font-size: .9rem; }
.md411-meta-label { color: var(--md411-text-secondary); display: block; margin-bottom: 4px; }
.md411-ticket-content { background: rgba(0,0,0,.2); padding: 16px; border-radius: 8px; margin-bottom: 16px; line-height: 1.6; overflow-wrap: anywhere; }
.md411-ticket-reply { background: rgba(212,175,55,.1); padding: 16px; border-inline-start: 3px solid var(--md411-gold); border-radius: 4px; overflow-wrap: anywhere; }
.md411-reply-label { font-weight: bold; color: var(--md411-gold); margin-bottom: 8px; }
.md411-pagination-wrap { margin-top: 24px; }
@media (max-width: 768px) {
    .md411-ticket-header { flex-direction: column; }
    .md411-ticket-status { margin-top: 12px; }
    .md411-ticket-meta { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    .md411-tickets-search { grid-template-columns: 1fr; }
}

/* page-upload.php: the lookup box sits where the file drop zone was */
.md411-upload-lookup { cursor: default; margin-bottom: 24px; }

/* page-about.php */
.md411-about-block { margin-bottom: 48px; }
.md411-about-title { font-size: 1.3rem; color: var(--md411-gold); margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid rgba(212,175,55,.2); }
.md411-about-features { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 16px; }
.md411-about-feature { display: flex; gap: 16px; align-items: flex-start; background: var(--md411-bg-card); border: 1px solid var(--md411-border-gold); border-radius: var(--md411-radius); padding: 20px; }
.md411-about-feature-icon { font-size: 1.8rem; flex-shrink: 0; }
.md411-about-feature h3 { font-size: 1rem; margin-bottom: 6px; color: var(--md411-gold); }
.md411-about-feature p { font-size: .88rem; color: var(--md411-text-secondary); line-height: 1.7; margin: 0; }
.md411-about-page .md411-legal-content { max-width: none; padding: 0; }
@media (max-width: 600px) {
    .md411-about-features { grid-template-columns: 1fr; }
}

/* page-privacy.php sub headings; panel pages (h3) in the legal layout */
.md411-legal-content h3 { font-size: 1.05rem; font-weight: 700; margin: 24px 0 10px; color: var(--md411-text-primary); }
.md411-cs-page-body { max-width: none; padding: 0 0 24px; }
html[dir="ltr"] .md411-legal-content ul, html[dir="ltr"] .md411-legal-content ol { padding-right: 0; padding-left: 24px; }
html[dir="ltr"] .md411-legal-content h2 { border-right: 0; padding-right: 0; border-left: 3px solid var(--md411-gold); padding-left: 12px; }

/* The theme resets list bullets; the legal texts are bulleted/numbered lists. */
.md411-legal-content ul { list-style: disc; }
.md411-legal-content ol { list-style: decimal; }
.md411-legal-content a.md411-btn { text-decoration: none; }
