/* QuickEye site CSS. Colours and type come from theme.json. */

/* Header */
.qe-header .wp-block-site-title a { text-decoration: none; }
.qe-header .wp-block-navigation a:hover { text-decoration: none; color: var(--wp--preset--color--primary); }
.qe-header .qe-logo-mark, .qe-footer .qe-logo-mark { margin: 0; }
.qe-btn-outline .wp-block-button__link:hover { background: var(--wp--preset--color--tertiary) !important; color: var(--wp--preset--color--main) !important; }
.qe-btn-ghost .wp-block-button__link:hover { background: rgba(255,255,255,0.08) !important; color: #fff !important; }
.wp-block-button__link { white-space: nowrap; transition: background-color .15s ease; }

@media (max-width: 960px) {
	.qe-hide-tablet { display: none !important; }
	/* Logo left, CTA + menu button right. */
	.qe-header .alignwide > .wp-block-group:first-child { display: contents; }
	.qe-header .alignwide > .wp-block-group:last-child { margin-left: auto; }
	.qe-header .qe-nav { order: 3; }
	.qe-header .qe-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.qe-header .qe-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.qe-header .qe-nav .wp-block-navigation__responsive-container-open {
		width: 40px; height: 40px; align-items: center; justify-content: center;
		border: 1px solid #CFD8E3; border-radius: 8px;
	}
	.qe-header-cta .wp-block-button__link { padding: 9px 14px !important; font-size: 14px !important; }
}

/* Screenshots */
.qe-shot { margin-left: 0; margin-right: 0; margin-bottom: 0; }
.qe-shot img { display: block; width: 100%; height: auto; background: #fff; }

/* Section helpers */
.qe-placeholder p { text-align: center; }
.qe-measure { max-width: 720px; }

/* Carrier chips */
.qe-chip {
	display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 0 16px;
	border: 1px solid #E6EBF2; border-radius: 8px; font-size: 15px; font-weight: 500; background: #fff;
}

/* FAQ */
.qe-faq { border-top: 1px solid #E6EBF2; }
.qe-faq-item { border-bottom: 1px solid #E6EBF2; padding: 20px 0; margin: 0 !important; }
.qe-faq-item summary {
	display: flex; justify-content: space-between; gap: 16px; cursor: pointer; list-style: none;
	font-weight: 500 !important; font-size: 17px;
}
.qe-faq-item summary::-webkit-details-marker { display: none; }
.qe-faq-item summary::after { content: "+"; color: var(--wp--preset--color--secondary); font-weight: 400; }
.qe-faq-item[open] summary::after { content: "–"; }
.qe-faq-item > p { margin: 12px 0 0; }

/* API card */
.wp-block-code { overflow-x: auto; }
.wp-block-code code { white-space: pre; }

/* Footer */
.qe-footer a { text-decoration: none; }
.qe-footer a:hover { color: var(--wp--preset--color--main); text-decoration: none; }
.qe-footer .wp-block-site-title a { color: var(--wp--preset--color--main); }

@media (max-width: 781px) {
	.qe-cta-buttons { justify-content: flex-start !important; }
	.qe-footer-cols { display: grid !important; grid-template-columns: 1fr 1fr; }
	.qe-footer-cols > .wp-block-column:first-child { grid-column: 1 / -1; }
}

/* Let wide content (code, screenshots) shrink inside columns and flex stacks. */
.wp-block-columns > .wp-block-column, .is-layout-flex.is-vertical > * { min-width: 0; }
.wp-block-code { max-width: 100%; }

/* Menu items shown only inside the mobile menu. */
@media (min-width: 961px) { .qe-nav .qe-mobile-only { display: none !important; } }
