/* Zestaw z kosmogramu — strona produktu w palecie serwisu. */
.tze-strona {
	--tlo: #060716; --panel: rgba( 10, 8, 30, .82 ); --obrys: rgba( 230, 196, 138, .28 );
	--zloto: #fde291; --zloto-cieply: #f9d57a; --zloto-ciemne: #e6c48a; --zloto-etyk: #cda474; --plomien: #f0a35a;
	--lawenda: #ad97d3; --neon: #a06ffb; --tekst: #b3b1c2; --tekst-slaby: #9393a7; --tekst-mocny: #e6e2ea;
	--serif: 'Cormorant Garamond', 'Times New Roman', serif; --sans: 'Jost', system-ui, sans-serif;
	position: relative; margin: 0 auto; padding: 40px 40px 80px; color: var( --tekst ); font: 300 15px/1.6 var( --sans );
	background: radial-gradient( 900px 500px at 50% -5%, rgba( 116, 66, 214, .24 ), transparent 70% ), var( --tlo );
}
.tze-strona * { box-sizing: border-box; }
body:has( .tze-strona ) { background: #060716; }
body:has( .tze-strona ) .wp-site-blocks > header, body:has( .tze-strona ) header.wp-block-template-part, body:has( .tze-strona ) .wp-site-blocks > footer, body:has( .tze-strona ) footer.wp-block-template-part, body:has( .tze-strona ) .wp-block-post-title { display: none !important; }
body:has( .tze-strona ) .wp-site-blocks, body:has( .tze-strona ) .wp-block-group, body:has( .tze-strona ) .wp-block-post-content { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body:has( .tze-strona ) .wp-block-post-content > *, body:has( .tze-strona ) .entry-content > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
body:has( .tze-strona ) .wp-block-post-content > .tze-strona, body:has( .tze-strona ) .entry-content > .tze-strona, .tze-strona { max-width: 1520px !important; margin-left: auto !important; margin-right: auto !important; }

.tze-hero { max-width: 780px; margin: 0 auto 40px; text-align: center; }
.tze-nad, .tze-sekcja__nad { margin: 0 0 10px; text-align: center; font-size: 11px; letter-spacing: .34em; text-transform: uppercase; color: var( --zloto-etyk ); }
.tze-nad i, .tze-sekcja__nad i { font-style: normal; color: var( --zloto ); margin: 0 10px; }
.tze-tytul { margin: 0 0 14px; font: 500 clamp( 36px, 4.6vw, 58px )/1.1 var( --serif ); color: var( --zloto-cieply ); }
.tze-lead { margin: 0 0 16px; font-size: 15.5px; line-height: 1.7; color: var( --tekst-mocny ); }
.tze-znaczek { display: inline-block; margin: 0; padding: 6px 16px; border: 1px solid rgba( 240, 163, 90, .5 ); border-radius: 999px; font-size: 10.5px; letter-spacing: .24em; text-transform: uppercase; color: var( --plomien ); }
.tze-sekcja { max-width: 1180px; margin: 0 auto 46px; }
.tze-sekcja__pod { margin: 0 auto 22px; max-width: 64ch; text-align: center; font-size: 14px; color: var( --lawenda ); }

.tze-pudelko { display: grid; grid-template-columns: repeat( 4, minmax( 0, 1fr ) ); gap: 16px; }
.tze-rzecz { padding: 22px 22px 20px; border: 1px solid var( --obrys ); border-radius: 16px; background: var( --panel ); }
.tze-rzecz b { display: block; font: 400 44px/1 var( --serif ); font-variant-numeric: lining-nums; color: var( --zloto ); }
.tze-rzecz h3 { margin: 4px 0 8px; font: 500 22px var( --serif ); color: var( --zloto-cieply ); }
.tze-rzecz p { margin: 0; font-size: 13px; line-height: 1.6; color: var( --tekst ); }

.tze-form { display: grid; grid-template-columns: 1fr 1fr 1.6fr auto; gap: 14px; align-items: end; max-width: 900px; margin: 0 auto 26px; padding: 20px 22px; border: 1px solid var( --obrys ); border-radius: 18px; background: var( --panel ); }
.tze-form--lista { grid-template-columns: 1fr 1.2fr 1.6fr auto; }
.tze-pole { position: relative; display: grid; gap: 6px; }
.tze-pole > span { font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; color: var( --zloto-etyk ); }
.tze-pole em { font-style: normal; text-transform: none; letter-spacing: 0; color: var( --tekst-slaby ); }
.tze-pole input { width: 100%; height: 44px; padding: 0 14px; border: 1px solid var( --obrys ); border-radius: 10px; background: rgba( 2, 3, 22, .7 ); color: var( --tekst-mocny ); font: 300 15px var( --sans ); color-scheme: dark; outline: none; }
.tze-pole input:focus { border-color: var( --neon ); box-shadow: 0 0 0 3px rgba( 160, 111, 251, .18 ); }
.tze-ukryte { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.tze-podpowiedzi { position: absolute; top: 100%; left: 0; right: 0; z-index: 5; margin: 6px 0 0; padding: 6px 0; list-style: none; border: 1px solid var( --obrys ); border-radius: 10px; background: #0b0820; box-shadow: 0 18px 40px rgba( 0, 0, 0, .5 ); max-height: 240px; overflow: auto; }
.tze-podpowiedzi[hidden] { display: none; }
.tze-podpowiedzi li { padding: 9px 14px; cursor: pointer; font-size: 14px; color: var( --tekst-mocny ); }
.tze-podpowiedzi li:hover { background: rgba( 160, 111, 251, .16 ); }
.tze-podpowiedzi small { color: var( --tekst-slaby ); margin-left: 8px; }
.tze-btn { height: 44px; padding: 0 24px; border: 1px solid var( --zloto-ciemne ); border-radius: 999px; background: linear-gradient( 180deg, rgba( 253, 226, 145, .16 ), rgba( 253, 226, 145, .04 ) ); color: var( --zloto ); font: 400 12px var( --sans ); letter-spacing: .2em; text-transform: uppercase; cursor: pointer; }
.tze-btn:hover { background: rgba( 253, 226, 145, .22 ); box-shadow: 0 0 22px rgba( 253, 226, 145, .18 ); }
.tze-blad, .tze-ok { grid-column: 1 / -1; margin: 0; font-size: 13.5px; }
.tze-blad { color: #f3a1a1; } .tze-ok { color: #9be0b2; }
.tze-blad[hidden], .tze-ok[hidden], .tze-wynik[hidden] { display: none; }

.tze-wynik { display: grid; gap: 22px; }
.tze-grupa__nad { margin: 0 0 10px; font-size: 10.5px; letter-spacing: .28em; text-transform: uppercase; color: var( --zloto ); }
.tze-kafle { display: grid; grid-template-columns: repeat( 5, minmax( 0, 1fr ) ); gap: 14px; }
.tze-kafle--dwa { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); max-width: 560px; }
.tze-kafel { display: grid; justify-items: center; gap: 4px; padding: 16px 12px 14px; border: 1px solid var( --obrys ); border-radius: 14px; background: var( --panel ); text-align: center; }
.tze-kafel__obraz { display: grid; place-items: center; width: 118px; height: 118px; border-radius: 22px; overflow: hidden; background: radial-gradient( circle at 40% 35%, var( --kk, #2a2450 ), #0b0a18 75% ); }
.tze-kafel__obraz img { width: 100%; height: 100%; object-fit: cover; }
.tze-kafel__obraz b { font: 400 44px var( --serif ); color: var( --zloto ); }
.tze-kafel__obraz--karta { border-radius: 12px; font-size: 40px; color: var( --zloto ); border: 1px solid var( --obrys ); }
.tze-kafel__nazwa { margin-top: 8px; font: 500 17px var( --serif ); color: var( --zloto-cieply ); }
.tze-kafel__gdzie { font-size: 11.5px; color: var( --tekst-slaby ); }
.tze-swieca { position: relative; display: block; width: 40px; height: 100px; margin: 12px auto 6px; border-radius: 6px 6px 4px 4px; background: linear-gradient( 90deg, color-mix( in srgb, var( --b ) 80%, #000 ), var( --b ) 45%, color-mix( in srgb, var( --b ) 70%, #fff ) 80%, color-mix( in srgb, var( --b ) 70%, #000 ) ); box-shadow: 0 16px 30px rgba( 0, 0, 0, .5 ); }
.tze-swieca::before { content: ''; position: absolute; left: 50%; top: -8px; width: 2px; height: 10px; margin-left: -1px; background: #2a2118; }
.tze-swieca i { position: absolute; left: 50%; top: -30px; width: 14px; height: 26px; margin-left: -7px; border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; background: radial-gradient( ellipse at 50% 70%, #fff6c8, var( --plomien ) 55%, rgba( 240, 100, 40, 0 ) 100% ); box-shadow: 0 0 18px rgba( 253, 226, 145, .7 ); }

.tze-kroki { display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 16px; margin: 0; padding: 0; list-style: none; }
.tze-kroki li { display: grid; grid-template-columns: auto 1fr; gap: 14px; padding: 18px 20px; border: 1px solid var( --obrys ); border-radius: 14px; background: var( --panel ); }
.tze-kroki b { font: 400 26px/1 var( --serif ); color: var( --lawenda ); }
.tze-kroki strong { display: block; margin: 0 0 4px; font: 500 20px var( --serif ); color: var( --zloto-cieply ); }
.tze-kroki span { font-size: 13.5px; line-height: 1.6; }
.tze-lista { padding: 30px 20px 26px; border: 1px solid var( --obrys ); border-radius: 18px; background: radial-gradient( circle at 50% 0, rgba( 253, 226, 145, .1 ), transparent 60% ), var( --panel ); }
.tze-pytania { display: grid; gap: 10px; max-width: 860px; margin: 0 auto; }
.tze-pytanie { padding: 14px 20px; border: 1px solid var( --obrys ); border-radius: 12px; background: var( --panel ); }
.tze-pytanie summary { cursor: pointer; font: 500 18px var( --serif ); color: var( --zloto-cieply ); list-style: none; }
.tze-pytanie summary::-webkit-details-marker { display: none; }
.tze-pytanie summary::before { content: '✦'; margin-right: 10px; font-size: 12px; color: var( --zloto-etyk ); }
.tze-pytanie p { margin: 10px 0 0; font-size: 13.5px; line-height: 1.65; color: var( --tekst ); }

@media ( max-width: 1100px ) { .tze-pudelko { grid-template-columns: 1fr 1fr; } .tze-kafle { grid-template-columns: repeat( 3, 1fr ); } .tze-form, .tze-form--lista { grid-template-columns: 1fr 1fr; } .tze-kroki { grid-template-columns: 1fr; } }
@media ( max-width: 700px ) { .tze-strona { padding: 24px 16px 60px; } .tze-pudelko, .tze-form, .tze-form--lista, .tze-kafle--dwa { grid-template-columns: 1fr; } .tze-kafle { grid-template-columns: 1fr 1fr; } }
.tze-kafel__obraz--swieca { width: 96px; height: 160px; border-radius: 12px; }

/* OKNO TEZY — przejscie tonalne.
   Wspolna warstwa daje oknu tezy plaska pobialke rgba(255,255,255,.028)
   regulami o swoistosci 0,2,0 i 0,3,0 — jedna wartosc dla wszystkich dzialow
   naraz. Dublowana klasa daje 0,4,0 i zamyka sprawe bez !important.
   Barwy sa z palety TEGO dzialu. Dopisane po stronie SERWERA, bo lokalna
   kopia modulu bywa starsza niz wgrana. */
.tze-strona .tze-hero .tze-okno.zd-okno,
.tze-strona .tze-hero .zd-okno.zd-okno,
.tze-strona .tze-hero .tze-okno.tze-okno {
	background:
		radial-gradient( 720px 240px at 42% 0%, rgba( 10, 8, 30, .10 ), transparent 70% ),
		linear-gradient( 168deg, #111221, #060716 );
}
