/* STRONOSKOP – integracja projektu .snp z motywem blokowym WordPress */

body { margin: 0; background: #F5F7F4; }

/* Sekcje stykają się bez odstępów między częściami szablonu */
.wp-site-blocks > *,
.sk-main > *,
.sk-main > .wp-block-post-content > * { margin-block-start: 0; margin-block-end: 0; }
.wp-site-blocks { padding: 0; }

/* Przyklejony nagłówek (lepki musi być kontener części szablonu) */
.sk-header-part { position: sticky; top: 0; z-index: 50; }
.admin-bar .sk-header-part { top: 32px; }
@media (max-width: 782px) { .admin-bar .sk-header-part { top: 46px; } }
@media (max-width: 600px) { .admin-bar .sk-header-part { top: 0; } }

/* Kotwice z menu nie chowają się pod nagłówkiem */
.snp [id] { scroll-margin-top: 88px; }

/* Szablony „Dokument”, wpisy i blog złożone ze zwykłych bloków */
.snp .doc .wp-block-post-title { font-size: 44px; }
.snp .doc .wp-block-post-content > * + * { margin-top: 1em; }
.snp .doc .wp-block-post-content :is(h2, h3) { margin-top: 1.6em; }
.snp .doc .wp-block-post-date.eyebrow { margin-bottom: 8px; }
.snp .sk-post-list { list-style: none; padding: 0; margin: 32px 0; display: grid; gap: 16px; }
.snp .sk-post-list .card h2 { font-size: 26px; margin: 0 0 8px; }
.snp .sk-post-list .card h2 a { color: inherit; text-decoration: none; }
.snp .sk-post-list .card h2 a:hover { color: var(--skan); }
.snp .sk-post-list .wp-block-post-excerpt__excerpt { margin: 0; }
.snp .wp-block-query-pagination { gap: 12px; font-family: 'JetBrains Mono', monospace; }

/* Formularze z wtyczki (Fluent Forms) w stylu projektu */
.snp .fluentform .ff-el-group { margin-bottom: 18px; }
.snp .fluentform .ff-el-input--label label { font-weight: 600; font-size: 15px; }
.snp .fluentform .ff-el-form-control {
	width: 100%; font: inherit; font-size: 16px; padding: 13px 14px;
	border: 1px solid #C5CFCB; border-radius: 10px; background: #fff; color: var(--ink);
}
.snp .fluentform .ff-el-form-control:focus-visible { outline: 3px solid var(--mieta); outline-offset: 2px; }
.snp .fluentform .ff-el-form-check label { font-weight: 400; font-size: 15px; display: flex; gap: 12px; align-items: flex-start; }
.snp .fluentform .ff-el-form-check input { margin-top: 5px; width: 18px; height: 18px; flex: none; }
.snp .fluentform .ff-btn-submit {
	display: inline-flex; align-items: center; font: inherit; font-weight: 600; font-size: 17px;
	padding: 16px 26px; border-radius: 12px; border: 2px solid transparent; cursor: pointer;
	background: var(--skan) !important; color: #fff !important;
}
#wycena .fluentform .ff-btn-submit { background: transparent !important; color: var(--ink) !important; border-color: currentColor; }
#gratis .fluentform .ff-btn-submit { background: var(--puls) !important; color: var(--ink) !important; }
#gratis .fluentform .ff-el-input--label label,
#gratis .fluentform .ff-el-form-check label { color: var(--papier); }
#gratis .fluentform .ff-el-form-check label { color: #C9D6DB; }
.snp .ff-message-success { background: #E6F4F2; border: 1px solid var(--skan); border-radius: 14px; padding: 18px 22px; color: var(--ink); }

/* Komunikat, gdy formularz nie jest jeszcze podłączony */
.snp .sk-form-missing { margin-top: 8px; }
.snp .sk-form-missing + .sk-form-admin { margin-top: 10px; font-size: 14px; color: var(--grafit); font-family: 'JetBrains Mono', monospace; }
#gratis .sk-form-admin { color: #A9B9C0 !important; }
.snp .notice { color: var(--ink); }
.snp .dark .notice a, #gratis .notice a { color: var(--skan); }
