
        .preload,.preload *,.preload *::before,.preload *::after{transition:none!important;animation:none!important}
        :root {
            --bg:    #0a0a0a; --bg2: #0f1012; --bg3: #131518;
            --bg-deep: #080808; --bg-overlay: rgba(10,10,10,.97);
            --green: #00ff41; --gd:  #008f11; --primary: #00ff41; --text-inverse:#0a0a0a;
            --cyan:  #00bfff; --cd:  #006b8f;
            --bdr:   #1e2124; --bdr2:#2a2d31;
            --text:  #e0e0e0; --muted:#888;
            --text-placeholder: #333;
            --red:   #ff3333; --yellow:#ffcc00; --yellow-glow: rgba(255,204,0,.4);
            --red-tint: rgba(255,51,51,.08); --red-glow: rgba(255,51,51,.15);
            --primary-a05: rgba(0,255,65,.05); --primary-a06: rgba(0,255,65,.06);
            --primary-a08: rgba(0,255,65,.08); --primary-a18: rgba(0,255,65,.18);
            --primary-a30: rgba(0,255,65,.3);
            --cyan-glow: rgba(0,191,255,.15);
            --ft: 'VT323', monospace; --fm: 'Roboto Mono', monospace;
        }
        * { box-sizing: border-box; margin: 0; padding: 0; }
        body { background: var(--bg); color: var(--text); font-family: var(--fm); min-height: 100vh; }
        body::before { content:''; position:fixed; inset:0; background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.07) 2px,rgba(0,0,0,.07) 4px); pointer-events:none; z-index:9999; }
        body::after  { content:''; position:fixed; inset:0; background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.6) 100%); pointer-events:none; z-index:9998; }
        ::-webkit-scrollbar{width:8px} ::-webkit-scrollbar-track{background:var(--bg)} ::-webkit-scrollbar-thumb{background:var(--bdr)} ::-webkit-scrollbar-thumb:hover{background:var(--green)}
        [data-theme="light"] {
            --bg:#F4F4F5; --bg2:#EAEAEC; --bg3:#E0E0E2;
            --bg-deep:#DDDDE0; --bg-overlay:rgba(244,244,245,.97);
            --green:#006B2D; --gd:#004D1F; --primary:#006B2D;
            --cyan:#0369A1; --cd:#024E7A;
            --bdr:#C4C4C8; --bdr2:#8C8C90;
            --text:#18181B; --muted:#5A5A63;
            --text-placeholder:#9A9AA0; --text-inverse:#fff;
            --red:#CB1515; --yellow:#CE7700; --yellow-glow:rgba(206,119,0,.3);
            --red-tint:rgba(203,21,21,.06); --red-glow:rgba(203,21,21,.12);
            --primary-a05:rgba(0,107,45,.05); --primary-a06:rgba(0,107,45,.06);
            --primary-a08:rgba(0,107,45,.08); --primary-a18:rgba(0,107,45,.18);
            --primary-a30:rgba(0,107,45,.30); --cyan-glow:rgba(3,105,161,.12);
        }
        [data-theme="light"] body::before { opacity: 0.3; }
        [data-theme="light"] body::after { opacity: 0.15; }
        [data-theme="light"] ::-webkit-scrollbar-track{background:var(--bg)} [data-theme="light"] ::-webkit-scrollbar-thumb{background:var(--bdr)}
        [data-theme="light"] .topbar { background:rgba(244,244,245,.97) !important; }
        [data-theme="light"] .bdots span { box-shadow:none !important; }
        /* ── Light-theme: remove text-shadows, fix hardcoded dark elements ── */
        [data-theme="light"] .btxt { text-shadow:none; }
        [data-theme="light"] .user-display,
        [data-theme="light"] .price-big,
        [data-theme="light"] .tier-col.active .t-rate { text-shadow:none; }
        [data-theme="light"] #dpa-wrap { background:var(--bg3) !important; border-color:var(--bdr) !important; }
        [data-theme="light"] #dpa-wrap span[style] { color:var(--muted) !important; }
        [data-theme="light"] #dpa-wrap a[style] { color:var(--cyan) !important; }
        [data-theme="light"] #dpa-wrap input[type="checkbox"] { accent-color:var(--green) !important; }
        [data-theme="light"] #dpa-wrap span[style*="color:#00ff41"] { color:var(--green) !important; }
        [data-theme="light"] .btog-btn.active { box-shadow:none; }
        [data-theme="light"] .badge-save { color:#18181B !important; }
        [data-theme="light"] #annual-teaser { opacity:1 !important; color:#3F3F46 !important; }
        [data-theme="light"] #annual-teaser strong { color:#004D1F !important; }
        [data-theme="light"] .price-enterprise { text-shadow:none; }
        [data-theme="light"] [style*="text-shadow:0 0 10px"],
        [data-theme="light"] [style*="text-shadow:0 0 12px"],
        [data-theme="light"] [style*="text-shadow: 0 0 10px"],
        [data-theme="light"] [style*="text-shadow: 0 0 12px"] { text-shadow:none !important; }
        [data-theme="light"] [style*="color:#444"] { color:var(--muted) !important; }
        [data-theme="light"] [style*="color:#555"] { color:var(--muted) !important; }
        [data-theme="light"] [style*="color:#888"] { color:var(--muted) !important; }
        [data-theme="light"] [style*="color:#00ff41"] { color:var(--green) !important; }
        [data-theme="light"] [style*="color:#00bfff"] { color:var(--cyan) !important; }
        [data-theme="light"] [style*="background:#080808"] { background:var(--bg3) !important; }
        [data-theme="light"] [style*="border:1px solid #1e2124"],
        [data-theme="light"] [style*="border: 1px solid #1e2124"] { border-color:var(--bdr) !important; }
        [data-theme="light"] [style*="background:rgba(0,255,65"] { background:rgba(0,107,45,.04) !important; }
        [data-theme="light"] [style*="border:1px solid rgba(0,255,65"] { border-color:rgba(0,107,45,.15) !important; }
        .page-theme-toggle {
            min-width:36px; min-height:36px; display:inline-flex; align-items:center; justify-content:center;
            background:transparent; border:1px solid var(--bdr); color:var(--muted); border-radius:6px; cursor:pointer;
            font-size:1rem; padding:4px; transition:border-color .2s, color .2s;
        }
        .page-theme-toggle:hover { border-color:var(--cyan); color:var(--cyan); }
        .topbar { background:var(--bg-overlay); border-bottom:1px solid var(--bdr2); height:56px; display:flex; align-items:center; position:sticky; top:0; z-index:100; }
        .ti { max-width:1120px; margin:0 auto; padding:0 24px; width:100%; display:flex; align-items:center; justify-content:space-between; }
        .brand { display:flex; align-items:center; gap:10px; text-decoration:none; }
        .bdots { display:flex; gap:5px; }
        .bdots span { width:10px; height:10px; border-radius:50%; display:block; }
        .btxt { font-family:var(--ft); font-size:1.6rem; color:var(--cyan); letter-spacing:3px; text-shadow:0 0 10px var(--cd); }
        .back { font-family:var(--ft); font-size:1.1rem; color:var(--muted); text-decoration:none; letter-spacing:1px; white-space:nowrap; }
        .back:hover { color:var(--green); }
        .lang-sw { display:flex; border:1px solid var(--bdr2); overflow:hidden; }
        .lang-sw a { font-family:var(--ft); font-size:.95rem; color:var(--muted); text-decoration:none; padding:3px 9px; border-right:1px solid var(--bdr2); transition:.15s; }
        .lang-sw a:last-child { border-right:none; }
        .lang-sw a.active, .lang-sw a:hover { color:var(--green); }
        /* Telefon: logo + jezyk + motyw + powrot nie mieszcza sie w 390 px (uklad rosl do 411 px,
           przelacznik jezyka nachodzil na "OPS"). Ciasniejsze odstepy, logo moze sie skurczyc,
           przycisk jezyka bez ikony globusa. */
        @media(max-width:640px){
            .ti { padding:0 12px; gap:10px; }
            .ti > a:first-child { min-width:0; overflow:hidden; }
            .topbar-actions { gap:8px; flex-shrink:0; }
            .lang-switcher-btn { padding:5px 8px; font-size:.72rem; }
            .lang-switcher-btn .fa-globe { display:none; }
            .page-theme-toggle { min-width:32px; min-height:32px; }
            .back { font-size:1rem; }
        }
        .pw { max-width:1120px; margin:0 auto; padding:48px 24px 80px; }
        .eyebrow { font-family:var(--ft); font-size:1rem; color:var(--cyan); letter-spacing:4px; text-transform:uppercase; margin-bottom:6px; }
        .ptitle  { font-family:var(--ft); font-size:clamp(2rem,5vw,3.2rem); text-transform:uppercase; letter-spacing:2px; line-height:1; margin-bottom:6px; }
        .ptitle span { color:var(--green); text-shadow:0 0 12px var(--gd); }
        .psub    { font-size:.82rem; color:var(--muted); line-height:1.7; margin-bottom:40px; }
        .tiers-bar { display:flex; gap:0; border:1px solid var(--bdr2); margin-bottom:32px; overflow-x:auto; }
        .tier-col { flex:1; min-width:80px; padding:10px 8px; text-align:center; border-right:1px solid var(--bdr); }
        .tier-col:last-child { border-right:none; }
        /* Telefon: 7 progow nie miesci sie w 400 px — zawijamy w siatke zamiast ucinac przewijaniem */
        @media(max-width:640px){
            .tiers-bar { display:grid; grid-template-columns:repeat(auto-fill, minmax(96px, 1fr)); overflow:visible; }
            .tier-col { min-width:0; border-right:1px solid var(--bdr); border-bottom:1px solid var(--bdr); }
            .tier-col:last-child { border-right:1px solid var(--bdr); }
        }
        .tier-col.active { background:var(--primary-a06); }
        .tier-col.active .t-range { color:var(--green); }
        .tier-col.active .t-rate  { color:var(--green); text-shadow:0 0 8px var(--gd); }
        .t-range { font-family:var(--ft); font-size:1rem; color:var(--text); letter-spacing:1px; display:block; }
        .t-rate  { font-family:var(--ft); font-size:1.6rem; color:var(--text); display:block; line-height:1.1; }
        .t-unit  { font-size:.85rem; color:var(--muted); letter-spacing:2px; }
        .calc-panel { background:var(--bg2); border:1px solid var(--bdr2); padding:28px; margin-bottom:24px; }
        .calc-title { font-family:var(--ft); font-size:1.1rem; color:var(--cyan); letter-spacing:3px; text-transform:uppercase; margin-bottom:20px; display:flex; align-items:center; gap:8px; }
        .calc-title::after { content:''; flex:1; height:1px; background:var(--bdr); }
        .user-display { font-family:var(--ft); font-size:clamp(1.8rem,6vw,3rem); color:var(--green); text-shadow:0 0 12px var(--gd); line-height:1; display:block; margin-bottom:4px; }
        .user-lbl { font-family:var(--ft); font-size:.85rem; color:var(--muted); letter-spacing:2px; margin-bottom:12px; display:block; }
        input[type="range"] { width:100%; accent-color:var(--green); cursor:pointer; height:6px; }
        input[type="number"]::-webkit-inner-spin-button,
        input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
        .range-marks { display:flex; justify-content:space-between; font-size:.85rem; color:var(--muted); margin-top:6px; margin-bottom:8px; letter-spacing:1px; font-family:var(--ft); }
        .billing-toggle { display:flex; gap:0; width:fit-content; margin-top:24px; }
        .btog-btn { font-family:var(--ft); font-size:1.1rem; letter-spacing:1px; padding:10px 22px; border:1px solid var(--bdr2); background:transparent; color:var(--muted); cursor:pointer; transition:all .2s; display:flex; flex-direction:column; align-items:center; gap:4px; line-height:1.2; }
        .btog-btn:first-child { border-right:none; }
        .btog-btn.active { background:var(--primary-a08); color:var(--green); border-color:var(--green); box-shadow:0 0 14px var(--primary-a18), inset 0 0 10px var(--primary-a05); }
        .btog-btn:not(.active):hover { color:var(--text); border-color:var(--bdr2); background:rgba(255,255,255,.03); }
        .btog-btn .badge-save { display:inline-block; background:var(--yellow); color:var(--text-inverse); font-family:var(--ft); font-size:.85rem; font-weight:700; padding:1px 8px; letter-spacing:1px; border-radius:2px; animation:badge-pulse 1.8s ease-in-out infinite; }
        @keyframes badge-pulse { 0%,100%{ box-shadow:0 0 4px var(--yellow); } 50%{ box-shadow:0 0 12px var(--yellow), 0 0 20px var(--yellow-glow); } }
        .price-panel { background:var(--bg3); border:1px solid var(--bdr2); padding:20px 24px; margin-top:20px; }
        .price-main { display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
        .price-big  { font-family:var(--ft); font-size:clamp(2rem,7vw,3.5rem); color:var(--text); line-height:1; }
        .price-big span.cur { font-size:1.8rem; color:var(--muted); vertical-align:super; }
        .price-per  { font-family:var(--ft); font-size:1rem; color:var(--muted); }
        .price-rate { font-family:var(--fm); font-size:.85rem; color:var(--muted); margin-top:4px; }
        .price-rate strong { color:var(--cyan); }
        .price-savings { font-family:var(--ft); font-size:1rem; color:var(--yellow); margin-top:6px; display:none; }
        .price-enterprise { font-family:var(--ft); font-size:1.25rem; letter-spacing:1px; color:var(--cyan); display:none; }
        .price-anchor { display:none; margin-top:14px; padding:14px 16px; background:var(--bg2); border:1px solid var(--bdr2); border-left:3px solid var(--cyan); }
        .price-anchor .pa-amount { font-family:var(--ft); font-size:2rem; line-height:1; color:var(--text); }
        .price-anchor .pa-per { font-size:1rem; color:var(--muted); white-space:nowrap; }
        .price-anchor .pa-basis { font-family:var(--fm); font-size:.82rem; color:var(--muted); margin-top:6px; }
        .price-anchor .pa-basis div + div { margin-top:5px; }
        .price-anchor .pa-note { font-family:var(--fm); font-size:.84rem; color:var(--muted); line-height:1.6; margin-top:10px; padding-top:10px; border-top:1px solid var(--bdr2); }
        .plan-info { background:var(--bg2); border:1px solid var(--bdr); padding:24px; margin-bottom:24px; }
        .plan-info-title { font-family:var(--ft); font-size:1.05rem; color:var(--cyan); letter-spacing:3px; text-transform:uppercase; margin-bottom:16px; display:flex; align-items:center; gap:8px; }
        .plan-info-title::after { content:''; flex:1; height:1px; background:var(--bdr); }
        .plan-info-name { font-family:var(--ft); font-size:1.8rem; color:var(--green); letter-spacing:2px; margin-bottom:4px; }
        .plan-info-desc { font-size:.88rem; color:var(--muted); margin-bottom:14px; line-height:1.6; }
        .plan-info-features { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:6px 20px; }
        @media(max-width:640px){ .plan-info-features { grid-template-columns:1fr; } }
        .plan-info-features li { font-family:var(--fm); font-size:.88rem; color:var(--muted); padding:5px 0; display:flex; align-items:center; gap:8px; }
        .plan-info-features li i { color:var(--green); font-size:.85rem; width:14px; flex-shrink:0; }
        .form-section { background:var(--bg2); border:1px solid var(--bdr); padding:24px; margin-bottom:12px; }
        .fs-title { font-family:var(--ft); font-size:1.05rem; color:var(--cyan); letter-spacing:3px; text-transform:uppercase; margin-bottom:18px; display:flex; align-items:center; gap:8px; }
        .fs-title::after { content:''; flex:1; height:1px; background:var(--bdr); }
        .fg { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
        @media(max-width:640px){ .fg { grid-template-columns:1fr; } }
        .ff { grid-column:1/-1; }
        .fl { font-family:var(--ft); font-size:.95rem; color:var(--muted); letter-spacing:2px; text-transform:uppercase; display:block; margin-bottom:5px; }
        .fl .req { color:var(--green); }
        .fi, .fta { background:var(--bg-deep); border:1px solid var(--bdr2); color:var(--text); font-family:var(--fm); font-size:.85rem; padding:11px 13px; outline:none; transition:.2s; width:100%; }
        .fi:focus,.fta:focus { border-color:var(--cyan); box-shadow:0 0 8px var(--cyan-glow); }
        .fi.invalid { border-color:var(--red); box-shadow:0 0 6px var(--red-glow); }
        .fi::placeholder { color:var(--text-placeholder); }
        .fta { resize:vertical; min-height:80px; }
        .err { font-size:.85rem; color:var(--red); margin-top:3px; font-family:var(--fm); }
        .sum-panel { background:var(--bg2); border:1px solid var(--bdr2); padding:24px; position:sticky; top:68px; }
        /* transform usunięty — powoduje Turnstile Error 600010 */
        @media(max-width:992px){ .sum-panel { position:static; margin-top:16px; } }
        .sum-title { font-family:var(--ft); font-size:1.1rem; letter-spacing:2px; text-transform:uppercase; margin-bottom:16px; border-bottom:1px solid var(--bdr); padding-bottom:10px; }
        .sum-row   { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px dashed var(--bdr); gap:10px; }
        .sum-row:last-of-type { border-bottom:none; }
        .sk { font-size:.85rem; color:var(--muted); }
        .sv { font-family:var(--ft); font-size:1.05rem; color:var(--text); text-align:right; }
        .sv.cyan  { color:var(--cyan); }
        .btn-pay { width:100%; background:var(--green); border:1px solid var(--green); color:#0a0a0a; font-family:var(--ft); font-size:1.45rem; letter-spacing:3px; text-transform:uppercase; padding:15px; cursor:pointer; transition:.2s; display:block; text-align:center; margin-top:20px; font-weight:700; }
        .btn-pay:hover { background:transparent; color:var(--green); box-shadow:0 0 20px var(--primary-a30); }
        .btn-contact { width:100%; background:transparent; border:1px solid var(--bdr2); color:var(--muted); font-family:var(--ft); font-size:1.1rem; letter-spacing:2px; text-transform:uppercase; padding:10px; cursor:pointer; transition:.2s; display:block; text-align:center; margin-top:8px; }
        .btn-contact:hover { border-color:var(--cyan); color:var(--cyan); }
        .btn-enterprise { display:none; }
        .trust { margin-top:16px; }
        .ti2 { display:flex; align-items:center; gap:8px; padding:5px 0; font-size:.85rem; color:var(--muted); }
        .ti2 i { color:var(--green); font-size:.80rem; width:12px; }
        .stripe-err { background:var(--red-tint); border:1px solid var(--red); color:var(--red); padding:10px 14px; font-family:var(--ft); font-size:1rem; margin-bottom:16px; }
        /* price-rate sub-elements */
        #dispRate-rate { color:var(--cyan); font-weight:bold; }
    
/* ── Selektor planu (plan = osobny wymiar od liczby osób, 14.09.2026) ── */
.plan-select { display:flex; gap:10px; margin-bottom:14px; flex-wrap:wrap; }
.plan-btn { flex:1 1 150px; background:var(--bg2); border:1px solid var(--bdr2); color:var(--muted); padding:12px 14px; text-align:left; cursor:pointer; transition:border-color .15s, box-shadow .15s; font-family:var(--fm); }
.plan-btn .pb-name { display:block; font-family:var(--ft); font-size:1.15rem; letter-spacing:2px; color:var(--text); }
.plan-btn .pb-desc { display:block; font-size:.74rem; margin-top:3px; line-height:1.4; }
.plan-btn:hover { border-color:var(--green); }
.plan-btn.active { border-color:var(--green); box-shadow:0 0 12px var(--gd); }
.plan-btn.active .pb-name { color:var(--green); text-shadow:0 0 8px var(--gd); }
.tiers-ent .tier-col { text-align:center; }
