/**
 * Canadian Yardie Jetpack Pro - Frontend Styles
 */

:root {
  --cy-jetpack-accent: #10B981;
  --cy-jetpack-accent-hover: #059669;
  --cy-jetpack-bg-dark: #0D1117;
  --cy-jetpack-card-bg: #161B22;
  --cy-jetpack-border: #30363D;
  --cy-jetpack-text: #F0F6FC;
  --cy-jetpack-muted: #8B949E;
}

/* Reading Time Badge */
.cy-reading-time-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(16, 185, 129, 0.1);
  color: #34D399;
  border: 1px solid rgba(16, 185, 129, 0.25);
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 16px;
}

/* Social Share Bar */
.cy-social-share-container {
  margin: 36px 0;
  padding: 20px 24px;
  background: #10141D;
  border: 1px solid var(--cy-jetpack-border);
  border-radius: 12px;
}

.cy-social-share-title {
  display: block;
  font-size: 13px;
  font-weight: 800;
  color: #CBD5E1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 14px;
}

.cy-social-share-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cy-share-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #FFFFFF !important;
  text-decoration: none !important;
  transition: all 0.2s ease;
  border: 1px solid transparent;
  cursor: pointer;
}

.cy-share-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
}

.cy-share-x {
  background: #000000;
  border-color: #333333;
}
.cy-share-x:hover {
  background: #111111;
  border-color: #555555;
}

.cy-share-whatsapp {
  background: #128C7E;
}
.cy-share-whatsapp:hover {
  background: #075E54;
}

.cy-share-facebook {
  background: #1877F2;
}
.cy-share-facebook:hover {
  background: #0E5AC0;
}

.cy-share-linkedin {
  background: #0A66C2;
}
.cy-share-linkedin:hover {
  background: #084E96;
}

.cy-share-copy {
  background: #21262D;
  border-color: #363B42;
  color: #C9D1D9 !important;
}
.cy-share-copy:hover {
  background: #30363D;
  color: #FFFFFF !important;
}

/* Related Posts Section */
.cy-related-posts-section {
  margin: 48px 0;
  padding-top: 32px;
  border-top: 2px solid var(--cy-jetpack-border);
}

.cy-related-posts-heading {
  font-size: 22px;
  font-weight: 900;
  color: #FFFFFF;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.cy-related-posts-heading span {
  color: var(--cy-jetpack-accent);
}

.cy-related-posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
}

.cy-related-post-card {
  background: #10141D;
  border: 1px solid var(--cy-jetpack-border);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.25s ease;
  text-decoration: none !important;
}

.cy-related-post-card:hover {
  transform: translateY(-4px);
  border-color: var(--cy-jetpack-accent);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.cy-related-post-thumb-wrap {
  width: 100%;
  height: 160px;
  background: #161B22;
  overflow: hidden;
}

.cy-related-post-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.cy-related-post-card:hover .cy-related-post-thumb {
  transform: scale(1.05);
}

.cy-related-post-content {
  padding: 16px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.cy-related-post-date {
  font-size: 11.5px;
  color: var(--cy-jetpack-muted);
  margin-bottom: 8px;
  font-weight: 600;
}

.cy-related-post-title {
  font-size: 15px;
  font-weight: 800;
  color: #F0F6FC;
  line-height: 1.4;
  margin: 0;
}

.cy-related-post-card:hover .cy-related-post-title {
  color: var(--cy-jetpack-accent);
}

/* Contact Form Shortcode */
.cy-contact-form-wrap {
  background: #10141D;
  border: 1px solid var(--cy-jetpack-border);
  border-radius: 12px;
  padding: 28px;
  max-width: 680px;
  margin: 30px auto;
}

.cy-contact-form-title {
  font-size: 20px;
  font-weight: 900;
  color: #FFFFFF;
  margin-bottom: 8px;
}

.cy-contact-form-desc {
  font-size: 13.5px;
  color: var(--cy-jetpack-muted);
  margin-bottom: 20px;
}

.cy-contact-form-group {
  margin-bottom: 16px;
}

.cy-contact-form-group label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #CBD5E1;
  margin-bottom: 6px;
}

.cy-contact-input,
.cy-contact-textarea {
  width: 100%;
  box-sizing: border-box;
  background: #0B0E14;
  border: 1px solid #2D3748;
  border-radius: 6px;
  color: #FFFFFF;
  padding: 10px 14px;
  font-size: 14px;
  font-family: inherit;
  transition: border-color 0.2s ease;
}

.cy-contact-input:focus,
.cy-contact-textarea:focus {
  border-color: var(--cy-jetpack-accent);
  outline: none;
}

.cy-contact-submit-btn {
  background: var(--cy-jetpack-accent);
  color: #022C22;
  font-size: 14px;
  font-weight: 800;
  padding: 12px 24px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.cy-contact-submit-btn:hover {
  background: var(--cy-jetpack-accent-hover);
  color: #FFFFFF;
}

.cy-contact-msg {
  margin-top: 14px;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13.5px;
  font-weight: 600;
  display: none;
}
