/* dataBAS — Formularz kontaktowy. Kolory biorą się z motywu dataBAS (zmienne --surface, --accent…), w innych motywach z wartości poniżej. */
.dbsk{--dbsk-surface:var(--surface,#0f2338);--dbsk-bg:var(--bg,#081321);--dbsk-text:var(--text,#eff8ff);--dbsk-muted:var(--muted,#a6bbc9);--dbsk-line:var(--line,#284154);--dbsk-dim:var(--dim,#0b1b2d);--dbsk-acc:var(--dbsk-accent,var(--accent,#36d6bd));--dbsk-ink:#062029;--dbsk-err:#ff8f7e;--dbsk-ok:var(--dbsk-acc);
 position:relative;max-width:820px;margin:0 auto;padding:34px;border-radius:24px;background:var(--dbsk-surface);color:var(--dbsk-text);border:1px solid var(--dbsk-line);box-shadow:0 30px 80px rgba(0,8,18,.35);font:inherit;overflow:hidden;isolation:isolate}
.dbsk.dbsk-light{--dbsk-surface:var(--surface,#ffffff);--dbsk-bg:var(--bg,#f5f8fc);--dbsk-text:var(--text,#10243a);--dbsk-muted:var(--muted,#536779);--dbsk-line:var(--line,#d8e4ee);--dbsk-dim:var(--dim,#eaf1f7);--dbsk-acc:var(--dbsk-accent,var(--accent,#087e76));--dbsk-ink:#fff;--dbsk-err:#b3261e;box-shadow:0 30px 70px rgba(16,36,58,.12)}
.dbsk::before{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-160px;top:-200px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--dbsk-acc) 30%,transparent),transparent 65%);pointer-events:none}
.dbsk *,.dbsk *::before,.dbsk *::after{box-sizing:border-box}
.dbsk-head{margin-bottom:24px}
.dbsk-title{margin:0 0 6px;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.15;letter-spacing:-.025em;color:var(--dbsk-text)}
.dbsk-intro{margin:0;color:var(--dbsk-muted)}
.dbsk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.dbsk-wide{grid-column:1/-1}
.dbsk-field label{display:block;font-weight:650;font-size:.92rem;margin:0 0 7px;color:var(--dbsk-text)}
.dbsk-opt{font-weight:500;color:var(--dbsk-muted)}
.dbsk input[type=text],.dbsk input[type=email],.dbsk input[type=tel],.dbsk textarea,.dbsk select{display:block;width:100%;margin:0;padding:13px 15px;border:1.5px solid var(--dbsk-line);border-radius:13px;background:var(--dbsk-bg);color:var(--dbsk-text);font:inherit;font-size:1rem;line-height:1.45;transition:border-color .2s,box-shadow .2s,background-color .2s;-webkit-appearance:none;appearance:none}
.dbsk textarea{min-height:150px;resize:vertical}
.dbsk input:hover,.dbsk textarea:hover,.dbsk select:hover{border-color:color-mix(in srgb,var(--dbsk-acc) 45%,var(--dbsk-line))}
.dbsk input:focus,.dbsk textarea:focus,.dbsk select:focus{outline:0;border-color:var(--dbsk-acc);box-shadow:0 0 0 4px color-mix(in srgb,var(--dbsk-acc) 20%,transparent)}
.dbsk ::placeholder{color:var(--dbsk-muted);opacity:.7}
.dbsk-select{position:relative}
.dbsk-select::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;border-right:2px solid var(--dbsk-muted);border-bottom:2px solid var(--dbsk-muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.dbsk select{padding-right:42px;cursor:pointer}
.dbsk select option{background:var(--dbsk-surface);color:var(--dbsk-text)}
.dbsk-under{display:flex;justify-content:space-between;gap:12px}
.dbsk-count{font-size:.78rem;color:var(--dbsk-muted);margin-top:6px;white-space:nowrap;font-variant-numeric:tabular-nums}
.dbsk-count.warn{color:var(--dbsk-err)}
.dbsk-err{margin:6px 0 0;min-height:0;font-size:.85rem;color:var(--dbsk-err);font-weight:600}
.dbsk-err:empty{display:none}
.dbsk .has-err input,.dbsk .has-err textarea,.dbsk .has-err select{border-color:var(--dbsk-err);animation:dbskShake .35s}
@keyframes dbskShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.dbsk-hp{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden}
.dbsk-consent{margin-top:20px}
.dbsk-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:.9rem;line-height:1.55;color:var(--dbsk-muted)}
.dbsk-check input{position:absolute;opacity:0;width:22px;height:22px;margin:0}
.dbsk-box{flex:none;width:22px;height:22px;margin-top:1px;border:1.5px solid color-mix(in srgb,var(--dbsk-muted) 50%,var(--dbsk-line));border-radius:7px;background:var(--dbsk-bg);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s,border-color .2s}
.dbsk-box::after{content:"";width:6px;height:11px;border:solid var(--dbsk-ink);border-width:0 2.5px 2.5px 0;transform:rotate(45deg) scale(0);margin-top:-2px;transition:transform .2s cubic-bezier(.2,.9,.3,1.4)}
.dbsk-check input:checked+.dbsk-box{background:var(--dbsk-acc);border-color:var(--dbsk-acc)}
.dbsk-check input:checked+.dbsk-box::after{transform:rotate(45deg) scale(1)}
.dbsk-check input:focus-visible+.dbsk-box{box-shadow:0 0 0 4px color-mix(in srgb,var(--dbsk-acc) 25%,transparent)}
.dbsk-check a{color:var(--dbsk-acc)}
.dbsk-consent.has-err .dbsk-box{border-color:var(--dbsk-err)}
.dbsk-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px}
.dbsk-shield{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.82rem;color:var(--dbsk-muted)}
.dbsk-shield svg{flex:none}
.dbsk-tick{stroke-dasharray:14;stroke-dashoffset:14;transition:stroke-dashoffset .5s .1s}
.dbsk-shield[data-state=busy] svg{animation:dbskPulse 1s ease-in-out infinite;color:var(--dbsk-acc)}
.dbsk-shield[data-state=ready]{color:var(--dbsk-text)}
.dbsk-shield[data-state=ready] svg{color:var(--dbsk-acc)}
.dbsk-shield[data-state=ready] .dbsk-tick{stroke-dashoffset:0}
@keyframes dbskPulse{50%{opacity:.4;transform:scale(.9)}}
.dbsk-send{position:relative;display:inline-flex;align-items:center;gap:10px;border:0;border-radius:14px;padding:14px 24px;background:var(--dbsk-acc);color:var(--dbsk-ink);font:inherit;font-weight:750;font-size:1rem;cursor:pointer;overflow:hidden;box-shadow:0 10px 26px color-mix(in srgb,var(--dbsk-acc) 30%,transparent);transition:transform .2s,box-shadow .2s,filter .2s}
.dbsk-send:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 14px 32px color-mix(in srgb,var(--dbsk-acc) 40%,transparent)}
.dbsk-send:active{transform:translateY(0) scale(.98)}
.dbsk-send:focus-visible{outline:3px solid #f4b860;outline-offset:3px}
.dbsk-send:disabled{cursor:wait}
.dbsk-plane{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.dbsk-send:hover .dbsk-plane{transform:translate(3px,-3px) rotate(-8deg)}
.dbsk-spin{display:none;width:18px;height:18px;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:dbskSpin .7s linear infinite}
.dbsk-send.is-busy .dbsk-spin{display:inline-block}
.dbsk-send.is-busy .dbsk-plane{display:none}
@keyframes dbskSpin{to{transform:rotate(360deg)}}
.dbsk-alert{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--dbsk-err) 12%,transparent);border:1px solid color-mix(in srgb,var(--dbsk-err) 40%,transparent);color:var(--dbsk-err);font-weight:600;font-size:.92rem}
.dbsk-alert a{color:inherit}
.dbsk-done{text-align:center;padding:30px 10px 14px;outline:0;animation:dbskIn .5s cubic-bezier(.2,.7,.2,1)}
.dbsk-done-ico{color:var(--dbsk-acc)}
.dbsk-done-ico circle{stroke-dasharray:151;stroke-dashoffset:151;animation:dbskDraw .7s .1s cubic-bezier(.6,.1,.3,1) forwards}
.dbsk-done-ico path{stroke-dasharray:40;stroke-dashoffset:40;animation:dbskDraw .45s .7s cubic-bezier(.6,.1,.3,1) forwards}
.dbsk-done h3{margin:16px 0 6px;font-size:1.5rem;color:var(--dbsk-text)}
.dbsk-done p{margin:0 auto;max-width:460px;color:var(--dbsk-muted)}
.dbsk-again{margin-top:22px;background:transparent;border:1.5px solid var(--dbsk-line);color:var(--dbsk-text);border-radius:12px;padding:10px 18px;font:inherit;font-weight:650;cursor:pointer}
.dbsk-again:hover{border-color:var(--dbsk-acc);color:var(--dbsk-acc)}
@keyframes dbskDraw{to{stroke-dashoffset:0}}
@keyframes dbskIn{from{opacity:0;transform:translateY(12px) scale(.98)}}
.dbsk [hidden]{display:none!important}
@media(max-width:640px){.dbsk{padding:22px 18px;border-radius:18px}.dbsk-grid{grid-template-columns:1fr}.dbsk-foot{flex-direction:column-reverse;align-items:stretch}.dbsk-send{justify-content:center}}
@media(prefers-reduced-motion:reduce){.dbsk *,.dbsk *::before,.dbsk *::after{animation:none!important;transition:none!important}.dbsk-done-ico circle,.dbsk-done-ico path{stroke-dashoffset:0}}
/* 1.1: zamówienie na fakturę */
.dbsk-set{border:1px solid var(--dbsk-line);border-radius:16px;padding:16px 18px 18px;margin:4px 0 0;min-width:0}
.dbsk-set legend{padding:0 8px;font-weight:750;color:var(--dbsk-text)}
.dbsk-set .dbsk-grid{gap:14px 18px}
.dbsk input[type=number]{display:block;width:100%;padding:13px 15px;border:1.5px solid var(--dbsk-line);border-radius:13px;background:var(--dbsk-bg);color:var(--dbsk-text);font:inherit;font-size:1rem}
.dbsk input[type=number]:focus{outline:0;border-color:var(--dbsk-acc);box-shadow:0 0 0 4px color-mix(in srgb,var(--dbsk-acc) 20%,transparent)}
.dbsk-hint{margin:6px 0 0;font-size:.8rem;color:var(--dbsk-muted)}
.dbsk-set textarea{min-height:76px}
