/* =========================================================
   Sushrut — WordPress compatibility layer
   Bridges core WP markup (admin bar, alignments, CF7, comments,
   pagination, search) into the existing design system in style.css.
   ========================================================= */

/* --- Admin bar offsets --- */
body.admin-bar .site-header { top: 32px; }
@media screen and (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
}
body.admin-bar .nav-links { /* off-canvas mobile menu sits below header+bar */ }
@media (max-width: 960px) {
  body.admin-bar .nav-links { inset: 108px 0 auto 0; }
}

/* --- Content alignments (classic + block editor output) --- */
.entry-content { line-height: 1.8; }
.entry-content > * { margin-bottom: 1.2em; }
.entry-content h2 { margin: 1.4em 0 0.5em; }
.entry-content h3 { margin: 1.2em 0 0.4em; }
.entry-content a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.entry-content ul, .entry-content ol { margin-left: 1.4em; }
.entry-content ul { list-style: disc; }
.entry-content ol { list-style: decimal; }
.entry-content li { margin-bottom: 0.4em; color: var(--text-muted); }
.entry-content img,
.entry-content .wp-caption { max-width: 100%; height: auto; }
.entry-content blockquote {
  border-left: 3px solid var(--accent);
  padding: 8px 0 8px 22px;
  margin: 1.4em 0;
  color: var(--text);
  font-style: italic;
}
.entry-content code,
.entry-content pre {
  font-family: var(--font-mono);
  background: var(--bg-elev);
  border: 1px solid var(--border);
}
.entry-content pre { padding: 18px; overflow-x: auto; }
.entry-content code { padding: 2px 6px; font-size: 0.9em; }

.alignwide   { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; }
.alignfull   { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; width: 100vw; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignleft   { float: left; margin: 0 24px 16px 0; }
.alignright  { float: right; margin: 0 0 16px 24px; }
.wp-caption-text { font-family: var(--font-mono); font-size: 0.8rem; color: var(--text-dim); margin-top: 8px; }

/* --- Sticky-post / states --- */
.sticky .blog-card { border-color: var(--border-strong); }

/* (Careers list spacing now lives in style.css — .role-list gap 18px.) */

/* --- Pagination (override the header .nav-links collision) --- */
.pagination .nav-links,
.comment-navigation .nav-links {
  position: static;
  display: flex;
  gap: 10px;
  background: none;
  border: 0;
  padding: 0;
  transform: none;
  flex-wrap: wrap;
}
.pagination { margin-top: 48px; }
.page-numbers {
  display: inline-grid;
  place-items: center;
  min-width: 42px; height: 42px;
  padding: 0 12px;
  border: 1px solid var(--border-strong);
  color: var(--text-muted);
  font-family: var(--font-mono);
  font-size: 0.85rem;
  letter-spacing: 1px;
  transition: all var(--t-base);
  clip-path: polygon(0 0, calc(100% - 6px) 0, 100% 6px, 100% 100%, 6px 100%, 0 calc(100% - 6px));
}
.page-numbers.current,
.page-numbers:hover { border-color: var(--accent); color: var(--accent); background: var(--accent-soft); }
.pagination .nav-links a::before,
.pagination .nav-links a::after { content: none; } /* kill the header bracket pseudo-elements */

/* --- Search form --- */
.search-form { display: flex; gap: 10px; }
.search-form .search-field {
  flex: 1;
  background: var(--bg-card);
  border: 1px solid var(--border-strong);
  padding: 14px 18px;
  color: var(--text);
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
}
.search-form .search-field:focus { border-color: var(--accent); }
.search-form .search-submit {
  background: var(--accent); color: #000; font-weight: 700; letter-spacing: 2px;
  text-transform: uppercase; padding: 0 22px; cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
}

/* --- Contact Form 7 — reuse the .form look --- */
.sushrut-cf7 .wpcf7-form p { margin: 0 0 18px; color: var(--text); }
.sushrut-cf7 label {
  display: block;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--accent);
  text-transform: uppercase;
  text-shadow: 0 0 8px var(--accent-glow);
  margin-bottom: 8px;
}
.sushrut-cf7 input[type="text"],
.sushrut-cf7 input[type="email"],
.sushrut-cf7 input[type="tel"],
.sushrut-cf7 input[type="url"],
.sushrut-cf7 textarea,
.sushrut-cf7 select {
  width: 100%;
  background: var(--bg-card);
  border: 1px solid var(--border-strong);
  padding: 15px 18px;
  color: var(--text);
  font-family: var(--font-body);
  font-size: 0.98rem;
  transition: all var(--t-fast);
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
}
.sushrut-cf7 textarea { min-height: 140px; resize: vertical; }
.sushrut-cf7 input:focus,
.sushrut-cf7 textarea:focus,
.sushrut-cf7 select:focus { border-color: var(--accent); box-shadow: 0 0 20px var(--accent-soft); }
.sushrut-cf7 .wpcf7-submit {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 16px 38px;
  background: var(--accent); color: #000;
  font-family: var(--font-body); font-size: 14px; font-weight: 700;
  letter-spacing: 3px; text-transform: uppercase; cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px));
  transition: all var(--t-base);
}
.sushrut-cf7 .wpcf7-submit:hover { background: var(--accent-2); transform: translateX(6px); box-shadow: -8px 8px 0 var(--accent-soft); }
.sushrut-cf7--inline .wpcf7-form { display: flex; gap: 10px; flex-wrap: wrap; }
.sushrut-cf7--inline .wpcf7-form p { margin: 0; flex: 1; }
.wpcf7-response-output {
  border: 1px solid var(--border-strong) !important;
  padding: 12px 18px !important;
  font-family: var(--font-mono); font-size: 0.85rem;
  color: var(--text);
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output { border-color: var(--danger) !important; color: var(--danger); }
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--accent) !important; color: var(--accent); }
.wpcf7-not-valid-tip { color: var(--danger); font-size: 0.8rem; }

/* --- Comments --- */
.comments-area { margin-top: 56px; border-top: 1px solid var(--border); padding-top: 32px; }
.comment-list { display: grid; gap: 18px; }
.comment-body { border: 1px solid var(--border); padding: 20px; }
.comment-author .fn { color: var(--accent); font-family: var(--font-mono); }
.comment-meta { font-size: 0.8rem; color: var(--text-dim); }
.comment-respond input[type="text"],
.comment-respond input[type="email"],
.comment-respond input[type="url"],
.comment-respond textarea {
  width: 100%; background: var(--bg-card); border: 1px solid var(--border-strong);
  padding: 12px 16px; color: var(--text); margin-bottom: 14px;
}

/* --- Page links (paginated posts) --- */
.page-links { margin-top: 24px; font-family: var(--font-mono); letter-spacing: 2px; }
.page-links a { color: var(--accent); padding: 2px 8px; border: 1px solid var(--border-strong); margin: 0 4px; }

/* --- Custom logo sizing --- */
.custom-logo { max-height: 40px; width: auto; }
