/* PRZ from joost.pl for MYKOLAB – https://joost.pl */
/* MYKObyPRZ – strona FAQ (D-290): nagłówek jak strony prawne, wyszukiwarka + kategorie (JS), akordeon core/details, blok kontaktu. Brandbook: biel/ciemny/teal, Recoleta/Roboto. */
.nprz-body .nprz-faqpage-hero .nprz-legal__title { max-width: 26ch; }
.nprz-body .nprz-faqpage__lead { margin: 22px 0 0; max-width: 62ch; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.65; color: var(--nprz-dark); }
.nprz-body .nprz-faqpage__body { max-width: 78ch; }
.nprz-faqpage [hidden] { display: none !important; }

/* narzędzia: wyszukiwarka + kategorie */
.nprz-faq-tools { display: grid; gap: 16px; margin: 0 0 8px; }
.nprz-faq-search { position: relative; }
.nprz-faq-search input[type="search"] { display: block; width: 100%; box-sizing: border-box; height: 56px; padding: 0 56px 0 52px; border: 1px solid var(--nprz-grey); border-radius: 0; background: #fff; font: 400 17px/1 var(--nprz-font-body); color: var(--nprz-dark); -webkit-appearance: none; appearance: none; transition: border-color .25s; }
.nprz-faq-search input[type="search"]::-webkit-search-cancel-button { display: none; }
.nprz-faq-search input[type="search"]::placeholder { color: rgba(20, 41, 39, .55); }
.nprz-faq-search input[type="search"]:hover { border-color: var(--nprz-dark); }
.nprz-faq-search input[type="search"]:focus-visible { outline: 2px solid var(--nprz-teal); outline-offset: 1px; border-color: var(--nprz-teal); }
.nprz-faq-search__ico { position: absolute; left: 18px; top: 50%; width: 20px; height: 20px; margin-top: -10px; pointer-events: none; color: var(--nprz-dark); }
.nprz-faq-search__clear { position: absolute; right: 6px; top: 50%; width: 44px; height: 44px; margin-top: -22px; border: 0; background: none; cursor: pointer; font: 400 26px/1 var(--nprz-font-body); color: var(--nprz-dark); }
.nprz-faq-search__clear:hover { color: var(--nprz-teal); }
.nprz-faq-search__clear:focus-visible { outline: 2px solid var(--nprz-teal); outline-offset: -4px; }

.nprz-faq-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nprz-legal__body ul.nprz-faq-chips li { margin: 0; padding: 0; }
.nprz-legal__body ul.nprz-faq-chips li::before { content: none; }
.nprz-faq-chips button { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 16px; border: 1px solid var(--nprz-dark); border-radius: 0; background: transparent; cursor: pointer; font: 500 13px/1 var(--nprz-font-cap); letter-spacing: var(--nprz-track); text-transform: uppercase; color: var(--nprz-dark); transition: background-color .25s, color .25s, border-color .25s; }
.nprz-faq-chips button span { font-weight: 400; color: var(--nprz-teal); transition: color .25s; }
.nprz-faq-chips button:hover { border-color: var(--nprz-teal); color: var(--nprz-teal); }
.nprz-faq-chips button[aria-pressed="true"] { background: var(--nprz-dark); border-color: var(--nprz-dark); color: var(--nprz-white); }
.nprz-faq-chips button[aria-pressed="true"] span { color: var(--nprz-grey); }
.nprz-faq-chips button:focus-visible { outline: 2px solid var(--nprz-teal); outline-offset: 2px; }
.nprz-faq-status { margin: 0; min-height: 1.4em; font: 500 13px/1.4 var(--nprz-font-cap); letter-spacing: var(--nprz-track); text-transform: uppercase; color: rgba(20, 41, 39, .65); }

/* sekcje */
.nprz-body .nprz-faqpage .nprz-faq-sec h2.wp-block-heading { margin-top: 1.6em; }
.nprz-body .nprz-faqpage .nprz-faq-sec:first-of-type h2.wp-block-heading { margin-top: 1.2em; }
.nprz-faq-sec__intro { margin: 0 0 20px; color: rgba(20, 41, 39, .8); }

/* akordeon: wygląd jak FAQ w artykułach (D-278) */
.nprz-body .nprz-faqpage .wp-block-details { margin: 0; border-bottom: 1px solid var(--nprz-grey); scroll-margin-top: calc(var(--nprz-header-h, 84px) + 20px); }
.nprz-body .nprz-faqpage .nprz-faq-sec__intro + .wp-block-details { border-top: 1px solid var(--nprz-grey); }
.nprz-body .nprz-faqpage .wp-block-details > summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px 0; min-height: 44px; }
.nprz-body .nprz-faqpage .wp-block-details > summary::-webkit-details-marker { display: none; }
.nprz-body .nprz-faqpage .wp-block-details > summary h3 { margin: 0; font-family: var(--nprz-font-head); font-weight: 600; text-transform: uppercase; letter-spacing: .01em; font-size: clamp(18px, 1.55vw, 23px); line-height: 1.15; transition: color .25s var(--nprz-ease); }
.nprz-body .nprz-faqpage .wp-block-details > summary::after { content: "+"; flex: none; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font: 400 22px/1 var(--nprz-font-body); background: var(--nprz-dark); color: var(--nprz-white); transition: transform .3s var(--nprz-ease), background .3s; }
.nprz-body .nprz-faqpage .wp-block-details[open] > summary::after { transform: rotate(45deg); background: var(--nprz-teal); }
.nprz-body .nprz-faqpage .wp-block-details > summary:hover h3 { color: var(--nprz-teal); }
.nprz-body .nprz-faqpage .wp-block-details > summary:focus-visible { outline: 2px solid var(--nprz-teal); outline-offset: 2px; }
.nprz-body .nprz-faqpage .wp-block-details[open] { padding-bottom: 10px; }
.nprz-body .nprz-faqpage .wp-block-details > p { margin: 0 0 1em; max-width: 68ch; }
.nprz-body .nprz-faqpage .wp-block-details:target > summary h3 { color: var(--nprz-teal); }

/* blok kontaktu na końcu */
.nprz-body .nprz-faqpage .nprz-faq-cta { margin-top: clamp(48px, 6vw, 88px); padding: clamp(28px, 4vw, 52px); background: var(--nprz-dark); color: var(--nprz-white); }
.nprz-body .nprz-faqpage .nprz-faq-cta h2.wp-block-heading { margin: 0 0 12px; padding: 0; border: 0; color: var(--nprz-white); font-family: var(--nprz-font-head); font-weight: 600; text-transform: uppercase; font-size: clamp(26px, 2.8vw, 40px); line-height: 1.02; }
.nprz-body .nprz-faqpage .nprz-faq-cta p { margin: 0 0 22px; color: var(--nprz-grey); }
.nprz-body .nprz-faqpage .nprz-faq-cta p.nprz-faq-cta__btn { margin: 0; }
.nprz-body .nprz-faqpage .nprz-faq-cta__btn a { display: inline-flex; align-items: center; min-height: 48px; padding: 0 30px; border: 0; background: var(--nprz-teal); color: var(--nprz-white); font: 500 15px/1 var(--nprz-font-cap); letter-spacing: var(--nprz-track); text-transform: uppercase; text-decoration: none; transition: background-color .3s var(--nprz-ease); }
.nprz-body .nprz-faqpage .nprz-faq-cta__btn a:hover { background: var(--nprz-teal-hover); color: var(--nprz-white); }
.nprz-body .nprz-faqpage .nprz-faq-cta__btn a:focus-visible { outline: 2px solid var(--nprz-white); outline-offset: 3px; }
.nprz-body .nprz-faqpage p.nprz-faq-empty { margin: 28px 0 0; padding: 18px 0; border-top: 1px solid var(--nprz-grey); border-bottom: 1px solid var(--nprz-grey); }

@media (max-width: 960px) {
	.nprz-faq-chips { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(var(--nprz-gutter, 16px) * -1); padding: 2px var(--nprz-gutter, 16px) 6px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.nprz-faq-chips::-webkit-scrollbar { display: none; }
	.nprz-faq-chips li { flex: none; }
}
@media (max-width: 560px) {
	.nprz-faq-search input[type="search"] { font-size: 16px; }
	.nprz-body .nprz-faqpage .wp-block-details > summary { gap: 14px; padding: 16px 0; }
	.nprz-body .nprz-faqpage .wp-block-details > summary::after { width: 32px; height: 32px; }
}
/* telefon: jaśniejsza grzybnia i mniejszy tytuł – tekst nagłówka ma być czytelny (D-291) */
@media (max-width: 640px) {
	.nprz-body .nprz-faqpage-hero::before, .nprz-body .nprz-faqpage-hero::after { opacity: .3; }
	.nprz-body .nprz-faqpage-hero .nprz-legal__title { font-size: clamp(30px, 8.6vw, 40px); line-height: 1.02; }
	.nprz-body .nprz-faqpage__lead { margin-top: 16px; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .nprz-body .nprz-faqpage .wp-block-details > summary::after { transition: none; } }
@media print { .nprz-faq-tools, .nprz-faq-cta { display: none; } .nprz-faqpage .wp-block-details > * { display: block; } }
