/* Zapisy online - korzysta ze zmiennych motywu */
.kbg-zapisy,.kbg-box{--g:var(--green,#344A3D);--c:var(--copper,#B88E77);background:var(--cream,#FFFCF9);border-radius:var(--r-lg,32px);padding:clamp(22px,4vw,48px);box-shadow:0 30px 60px -40px rgba(52,74,61,.35);max-width:1040px;margin:0 auto}
.kbg-loading{padding:40px 0;text-align:center;color:var(--muted,#5d625e);font-weight:600}
.kbg-loading::before{content:"";display:block;width:34px;height:34px;margin:0 auto 14px;border-radius:50%;border:3px solid var(--sand,#F0EBE7);border-top-color:var(--g);animation:kbgspin .9s linear infinite}
@keyframes kbgspin{to{transform:rotate(360deg)}}
.kbg-kroki{display:flex;gap:10px;list-style:none;margin:0 0 30px;padding:0;flex-wrap:wrap}
.kbg-kroki li{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;color:var(--muted,#5d625e);padding:8px 16px 8px 8px;border-radius:999px;background:var(--sand-2,#F7F2EE)}
.kbg-kroki li span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;font-weight:700;color:var(--g)}
.kbg-kroki li.on{background:var(--g);color:#fff}
.kbg-kroki li.done span{background:var(--c);color:#fff}
.kbg-step{animation:kbgin .5s cubic-bezier(.22,.8,.24,1)}
@keyframes kbgin{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.kbg-h{font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 24px}
.kbg-usl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.kbg-usl{display:grid;gap:8px;text-align:left;padding:26px;border-radius:var(--r-md,20px);border:1.5px solid var(--line,#e3d9d1);background:#fff;cursor:pointer;font:inherit;color:inherit;transition:transform .4s,border-color .3s,box-shadow .4s}
.kbg-usl:hover,.kbg-usl:focus-visible{transform:translateY(-4px);border-color:var(--g);box-shadow:0 20px 40px -26px rgba(52,74,61,.4)}
.kbg-usl-ico{width:52px;height:52px;border-radius:50%;background:var(--sand,#F0EBE7);display:grid!important;place-items:center;font-size:24px;color:var(--g);transition:background .3s,color .3s}
.kbg-usl:hover .kbg-usl-ico{background:var(--g);color:#fff}
.kbg-usl-n{font-size:1.15rem;font-weight:600;color:var(--g)}
.kbg-usl-o{font-size:.9rem;color:var(--muted,#5d625e)}
.kbg-usl-m{display:flex;gap:8px;margin-top:6px}
.kbg-usl-m span{font-size:.78rem;font-weight:700;letter-spacing:.05em;color:var(--copper-text,#8A6450);background:var(--sand,#F0EBE7);padding:5px 11px;border-radius:999px}
.kbg-pom{font-size:.9rem;color:var(--muted,#5d625e);margin-top:18px}
.kbg-pom a,.kbg-alert a{color:var(--copper-text,#8A6450);font-weight:700}
.kbg-wybor{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;background:var(--sand-2,#F7F2EE);border-radius:999px;padding:10px 12px 10px 20px;margin-bottom:24px;font-size:.92rem}
.kbg-zmien{border:0;background:#fff;border-radius:999px;padding:7px 14px;font:600 .82rem Raleway,sans-serif;color:var(--g);cursor:pointer}
.kbg-zmien:hover{background:var(--g);color:#fff}
.kbg-alert{background:#fbeee8;color:#8a3b23;border-radius:12px;padding:12px 16px;font-size:.92rem;margin:0 0 18px}
.kbg-termin{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:34px;align-items:start}
.kbg-kal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.kbg-kal-h strong{font-size:1.15rem;color:var(--g);font-weight:600}
.kbg-kal-h strong::first-letter{text-transform:uppercase}
.kbg-nav{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--line,#e3d9d1);background:#fff;cursor:pointer;display:grid;place-items:center;font-size:18px;color:var(--g)}
.kbg-nav:hover:not(:disabled){background:var(--g);color:#fff;border-color:var(--g)}
.kbg-nav:disabled{opacity:.3;cursor:default}
.kbg-tyg,.kbg-dni{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.kbg-tyg span{text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted,#5d625e);padding:6px 0}
.kbg-d{position:relative;aspect-ratio:1;border-radius:14px;display:grid;place-items:center;font-weight:600;font-size:.95rem;border:0;background:none;font-family:inherit;color:#b9b2ac}
.kbg-d.wolny{background:#fff;border:1.5px solid var(--line,#e3d9d1);color:var(--g);cursor:pointer;transition:transform .3s,background .3s,color .3s,border-color .3s}
.kbg-d.wolny i{position:absolute;bottom:7px;width:6px;height:6px;border-radius:50%;background:#5a9a6e}
.kbg-d.wolny:hover{transform:scale(1.06);border-color:var(--g)}
.kbg-d.wyb{background:var(--g)!important;color:#fff!important;border-color:var(--g)!important}
.kbg-d.wyb i{background:var(--copper-soft,#E6D5CA)}
.kbg-d.dzis::after{content:"";position:absolute;top:6px;right:8px;width:5px;height:5px;border-radius:50%;background:var(--c)}
.kbg-leg{display:flex;gap:8px;align-items:center;font-size:.78rem;color:var(--muted,#5d625e);margin-top:12px}
.kbg-leg span{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:8px}
.l-w{background:#5a9a6e}.l-b{background:#ddd5ce}
.kbg-godz h3{font-size:1.1rem;margin:4px 0 16px}
.kbg-godz h3::first-letter{text-transform:uppercase}
.kbg-sloty{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px}
.kbg-slot{padding:14px 0;border-radius:14px;border:1.5px solid var(--line,#e3d9d1);background:#fff;font:700 1rem Raleway,sans-serif;color:var(--g);cursor:pointer;opacity:0;animation:kbgin .45s cubic-bezier(.22,.8,.24,1) forwards;animation-delay:calc(var(--i,0) * 40ms);transition:background .3s,color .3s,border-color .3s,transform .3s}
.kbg-slot:hover,.kbg-slot:focus-visible{background:var(--g);color:#fff;border-color:var(--g);transform:translateY(-2px)}
.kbg-dane{padding:0;background:none;border-radius:0;max-width:720px}
.kbg-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.btn.wait{pointer-events:none;opacity:.7}
.btn.wait .arr{animation:kbgspin 1s linear infinite}
.kbg-ok{text-align:center;display:grid;justify-items:center;gap:14px;padding:20px 0}
.kbg-check{width:86px;height:86px;border-radius:50%;background:var(--g);position:relative;animation:kbgpop .6s cubic-bezier(.22,1.4,.4,1)}
.kbg-check::after{content:"";position:absolute;left:31px;top:20px;width:20px;height:38px;border:solid #fff;border-width:0 4px 4px 0;transform:rotate(45deg);animation:kbgtick .4s .3s both}
@keyframes kbgpop{from{transform:scale(0)}}
@keyframes kbgtick{from{opacity:0;transform:rotate(45deg) scale(.4)}}
.kbg-sum{background:var(--sand-2,#F7F2EE);border-radius:16px;padding:16px 22px;font-size:1.02rem}
.kbg-sum strong{color:var(--g)}
.kbg-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.kbg-odwolaj{text-align:center;display:grid;gap:16px;justify-items:center}
.kbg-msg{color:#8a3b23;font-weight:600}
@media (max-width:760px){.kbg-termin,.kbg-2{grid-template-columns:1fr}.kbg-kroki li{font-size:0;padding:6px}.kbg-kroki li span{font-size:.85rem}.kbg-kroki li.on{font-size:.85rem;padding-right:16px}}
@media (prefers-reduced-motion:reduce){.kbg-step,.kbg-slot,.kbg-check,.kbg-check::after{animation:none;opacity:1}}
