/* Kalendarz rezerwacji strefy Wellness (14.10.2026). Styl: olive + miod, jak reszta /wellness. */
.wkal{position:relative;margin-top:2.2rem;border-radius:var(--r-large,24px);overflow:hidden;color:var(--cream,#FADEBC);
  background:radial-gradient(120% 90% at 85% -10%,rgba(222,160,97,.22),rgba(222,160,97,0) 55%),
             radial-gradient(90% 70% at -10% 110%,rgba(250,222,188,.08),rgba(250,222,188,0) 60%),#403E2A;
  border:1px solid rgba(222,160,97,.28);box-shadow:0 30px 70px -40px rgba(0,0,0,.7)}
.wkal *{box-sizing:border-box}
.wkal button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wkal-glowa{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;align-items:flex-end;justify-content:space-between;padding:1.8rem 2rem 1.2rem;border-bottom:1px solid rgba(250,222,188,.1)}
.wkal-glowa h3{font-family:var(--serif,'Instrument Serif',serif);font-weight:400;font-size:clamp(1.5rem,3vw,2rem);line-height:1.1;margin:.2rem 0 0}
.wkal-glowa h3 em{color:var(--tan,#DEA061);font-style:italic}
.wkal-oko{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--tan,#DEA061);font-weight:600}
.wkal-osoby{display:flex;align-items:center;gap:.7rem}
.wkal-osoby>span{font-size:.78rem;opacity:.75}
.wkal-zeton{width:44px;height:44px;border-radius:50%;border:1px solid rgba(222,160,97,.45);background:transparent;font-family:var(--serif,serif);font-size:1.15rem;transition:.2s}
.wkal-zeton:hover{background:rgba(222,160,97,.14)}
.wkal-zeton[aria-pressed=true]{background:var(--tan,#DEA061);color:#1B1914;border-color:var(--tan,#DEA061)}
.wkal-blisko{padding:1.1rem 2rem;border-bottom:1px solid rgba(250,222,188,.1);background:rgba(27,25,20,.22)}
.wkal-blisko>p{margin:0 0 .65rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.wkal-chipy{display:flex;flex-wrap:wrap;gap:.6rem}
.wkal-chip{display:flex;align-items:center;gap:.55rem;padding:.55rem .95rem;border-radius:999px;border:1px solid rgba(250,222,188,.25);background:rgba(250,222,188,.05);font-size:.88rem;transition:.2s;text-align:left}
.wkal-chip:hover{border-color:var(--tan,#DEA061);background:rgba(222,160,97,.14)}
.wkal-chip b{font-weight:600}
.wkal-chip small{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tan,#DEA061)}
.wkal-szkielet{height:38px;width:150px;border-radius:999px;background:linear-gradient(90deg,rgba(250,222,188,.05),rgba(250,222,188,.14),rgba(250,222,188,.05));background-size:200% 100%;animation:wkalPulse 1.4s linear infinite}
@keyframes wkalPulse{to{background-position:-200% 0}}
.wkal-cialo{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:0}
.wkal-kol{padding:1.6rem 2rem 2rem;min-width:0}
.wkal-kol+.wkal-kol{border-left:1px solid rgba(250,222,188,.1)}
.wkal-mies{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}
.wkal-mies h4{margin:0;font-family:var(--serif,serif);font-weight:400;font-size:1.45rem;text-transform:capitalize}
.wkal-strz{width:40px;height:40px;border-radius:50%;border:1px solid rgba(250,222,188,.28);background:transparent;font-size:1.1rem;transition:.2s}
.wkal-strz:hover:not(:disabled){background:rgba(250,222,188,.12)}
.wkal-strz:disabled{opacity:.25;cursor:default}
.wkal-dni,.wkal-siatka{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.wkal-dni span{text-align:center;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;opacity:.55;padding:.2rem 0 .5rem}
.wkal-d{position:relative;aspect-ratio:1/1;min-height:42px;border-radius:12px;border:1px solid transparent;background:rgba(250,222,188,.06);font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:.18s}
.wkal-d.pusty{background:none;pointer-events:none;border:0}
.wkal-d:disabled{opacity:.22;cursor:default;background:none}
.wkal-d.d-wolne:hover{border-color:var(--tan,#DEA061);background:rgba(222,160,97,.16)}
.wkal-d.d-load{animation:wkalPulse 1.4s linear infinite;background:linear-gradient(90deg,rgba(250,222,188,.05),rgba(250,222,188,.12),rgba(250,222,188,.05));background-size:200% 100%}
.wkal-d.d-brak{opacity:.3;text-decoration:line-through;text-decoration-thickness:1px}
.wkal-d.d-rano::after{content:"";position:absolute;bottom:6px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--tan,#DEA061)}
.wkal-d.d-lm{box-shadow:inset 0 0 0 1.5px var(--tan,#DEA061)}
.wkal-d.dzis{font-weight:700}
.wkal-d[aria-pressed=true]{background:var(--tan,#DEA061);color:#1B1914;border-color:var(--tan,#DEA061);font-weight:700}
.wkal-d[aria-pressed=true]::after{background:#1B1914}
.wkal-legenda{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:1.1rem;font-size:.74rem;opacity:.78}
.wkal-legenda i{display:inline-block;vertical-align:middle;margin-right:.4rem}
.wkal-l-kropka{width:6px;height:6px;border-radius:50%;background:var(--tan,#DEA061)}
.wkal-l-pierscien{width:14px;height:14px;border-radius:5px;box-shadow:inset 0 0 0 1.5px var(--tan,#DEA061)}
.wkal-pusto{padding:2.4rem 1rem;text-align:center;opacity:.7;font-size:.92rem;line-height:1.6;border:1px dashed rgba(250,222,188,.22);border-radius:16px}
.wkal-dzien-nag{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}
.wkal-dzien-nag h4{margin:0;font-family:var(--serif,serif);font-weight:400;font-size:1.45rem}
.wkal-lm{display:inline-block;padding:.18rem .6rem;border-radius:999px;background:rgba(222,160,97,.2);color:var(--tan,#DEA061);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.wkal-grupa{margin-bottom:1.3rem}
.wkal-grupa-nag{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem;margin-bottom:.65rem;font-size:.82rem}
.wkal-rabat{padding:.18rem .55rem;border-radius:999px;background:var(--tan,#DEA061);color:#1B1914;font-size:.68rem;font-weight:700;letter-spacing:.06em}
.wkal-grupa-nag s{opacity:.55}
.wkal-grupa-nag b{font-family:var(--serif,serif);font-weight:400;font-size:1.1rem;color:var(--tan,#DEA061)}
.wkal-sloty{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}
.wkal-slot{height:44px;border-radius:12px;border:1px solid rgba(250,222,188,.28);background:transparent;font-size:.95rem;transition:.18s}
.wkal-slot:hover{border-color:var(--tan,#DEA061);background:rgba(222,160,97,.16)}
.wkal-slot[aria-pressed=true]{background:var(--tan,#DEA061);color:#1B1914;border-color:var(--tan,#DEA061);font-weight:700}
.wkal-podsum{margin:1.4rem 0 1rem;padding:1.1rem 1.2rem;border-radius:16px;background:rgba(27,25,20,.3);border:1px solid rgba(222,160,97,.22)}
.wkal-podsum div{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;font-size:.88rem}
.wkal-podsum div span:first-child{opacity:.7}
.wkal-podsum .suma{margin-top:.4rem;padding-top:.7rem;border-top:1px solid rgba(250,222,188,.16);font-size:1rem}
.wkal-podsum .suma span:last-child{font-family:var(--serif,serif);font-size:1.6rem;color:var(--tan,#DEA061)}
.wkal-podsum s{opacity:.55}
.wkal label{display:block;margin:.8rem 0 .3rem;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.wkal input,.wkal textarea{width:100%;padding:.8rem .95rem;border-radius:12px;border:1px solid rgba(250,222,188,.28);background:rgba(250,222,188,.06);color:var(--cream,#FADEBC);font:inherit;font-size:16px}
.wkal input:focus,.wkal textarea:focus{outline:2px solid var(--tan,#DEA061);outline-offset:1px}
.wkal textarea{min-height:64px;resize:vertical}
.wkal details{margin-top:.8rem;font-size:.85rem}
.wkal summary{cursor:pointer;opacity:.8}
.wkal-kodrz{display:flex;gap:.5rem;margin-top:.5rem}
.wkal-kodrz input{text-transform:uppercase}
.wkal-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.6rem;border-radius:999px;border:1px solid var(--tan,#DEA061);background:var(--tan,#DEA061);color:#1B1914;font-weight:600;letter-spacing:.04em;transition:.2s}
.wkal-btn:hover:not(:disabled){background:transparent;color:var(--tan,#DEA061)}
.wkal-btn:disabled{opacity:.6;cursor:wait}
.wkal-btn.cien{background:transparent;color:var(--cream,#FADEBC);border-color:rgba(250,222,188,.35)}
.wkal-wyslij{width:100%;margin-top:1.1rem}
.wkal-blad{margin-top:.8rem;color:#ffb4a2;font-size:.88rem;min-height:1px}
.wkal-info{margin-top:.8rem;font-size:.78rem;opacity:.65;line-height:1.55}
.wkal-gotowe{padding:3rem 2rem;text-align:center}
.wkal-gotowe h3{font-family:var(--serif,serif);font-weight:400;font-size:2rem;margin:.4rem 0 1rem}
.wkal-kod{display:inline-block;padding:.7rem 1.4rem;border-radius:14px;border:1px dashed var(--tan,#DEA061);font-family:var(--serif,serif);font-size:1.9rem;letter-spacing:.18em;color:var(--tan,#DEA061)}
.wkal-gotowe p{max-width:48ch;margin:1rem auto 0;opacity:.85;line-height:1.6}
@media(max-width:860px){
  .wkal-cialo{grid-template-columns:1fr}
  .wkal-kol+.wkal-kol{border-left:0;border-top:1px solid rgba(250,222,188,.1)}
  .wkal-glowa,.wkal-blisko,.wkal-kol{padding-left:1.1rem;padding-right:1.1rem}
}
@media(max-width:380px){.wkal-dni,.wkal-siatka{gap:4px}.wkal-d{min-height:38px;font-size:.88rem}}
@media(prefers-reduced-motion:reduce){.wkal *{animation:none!important;transition:none!important}}
.wkal [hidden]{display:none!important}
/* v3: minimalnie */
.wkal{margin-top:1.6rem}
.wkal-glowa{padding:1.2rem 1.6rem;align-items:center;border-bottom:1px solid rgba(250,222,188,.08)}
.wkal-glowa h3{font-size:1.5rem;margin:0}
.wkal-osoby{flex-wrap:wrap}
.wkal-zeton{width:40px;height:40px;font-size:1rem}
.wkal-wiecej{border-style:dashed}
.wkal-uwaga{flex-basis:100%;font-size:.72rem;opacity:.6}
@media(min-width:861px){.wkal-uwaga{flex-basis:auto;margin-left:.3rem}}
.wkal-kol{padding:1.3rem 1.6rem 1.5rem}
.wkal-legenda{font-size:.7rem;margin-top:.8rem;opacity:.6}
.wkal-dzien-nag{margin-bottom:.8rem}
.wkal-dzien-nag h4{font-size:1.2rem}
.wkal-pusto{border:0;padding:1.5rem 0;text-align:left;font-size:.9rem}
.wkal-grupa{margin-bottom:.6rem}
.wkal-kafel{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(250,222,188,.22);background:rgba(250,222,188,.04);text-align:left;font-size:.95rem;transition:.2s}
.wkal-kafel:hover,.wkal-kafel[aria-expanded=true]{border-color:var(--tan,#DEA061);background:rgba(222,160,97,.1)}
.wkal-kafel-l,.wkal-kafel-c{display:flex;align-items:center;gap:.6rem}
.wkal-kafel-c b{font-family:var(--serif,serif);font-weight:400;font-size:1.15rem;color:var(--tan,#DEA061)}
.wkal-kafel-c s{opacity:.5;font-size:.8rem}
.wkal-strz2{font-style:normal;opacity:.6;transition:transform .2s}
.wkal-kafel[aria-expanded=true] .wkal-strz2{transform:rotate(180deg)}
.wkal-sloty{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;margin-top:.6rem}
.wkal-slot{height:38px;border-radius:10px;font-size:.88rem}
.wkal-podsum{margin:1rem 0 .4rem;padding:.8rem 1rem}
.wkal-podsum div{font-size:.85rem;padding:.2rem 0}
.wkal-podsum .suma span:last-child{font-size:1.35rem}
.wkal label{margin:.6rem 0 .25rem}
.wkal input,.wkal textarea{padding:.65rem .85rem}
.wkal details textarea{margin-top:.5rem}
/* v4: wstep i tabela wylacznosci */
.ws-dwa{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1.6rem;text-align:left}
.ws-dwa>div{padding:1.1rem 1.3rem;border-radius:16px;background:#fff8ee;border:1px solid rgba(64,62,42,.12);border-top:3px solid #DEA061}
.ws-dwa strong{display:block;font-family:var(--serif,serif);font-weight:400;font-size:1.35rem;color:#403E2A;margin-bottom:.35rem}
.ws-dwa span{display:block;font-size:.95rem;line-height:1.55;color:rgba(27,25,20,.75)}
@media(max-width:700px){.ws-dwa{grid-template-columns:1fr;gap:.8rem}}
.price-body.dark .ptable{border-collapse:separate;border-spacing:0 8px}
.price-body.dark .ptable th{padding:.2rem .7rem;border-bottom:0;white-space:nowrap}
.price-body.dark .ptable th:last-child{text-align:right}
.price-body.dark .ptable td{padding:.85rem .7rem;border:0;white-space:nowrap;background:rgba(250,222,188,.05)}
.price-body.dark .ptable td:first-child{border-radius:12px 0 0 12px}
.price-body.dark .ptable td:last-child{border-radius:0 12px 12px 0;text-align:right}
.price-body.dark .ptable tr.hit td{background:rgba(222,160,97,.2);box-shadow:inset 0 1px 0 var(--tan,#DEA061),inset 0 -1px 0 var(--tan,#DEA061)}
.price-body.dark .ptable tr.hit td:first-child{box-shadow:inset 0 1px 0 var(--tan,#DEA061),inset 0 -1px 0 var(--tan,#DEA061),inset 1px 0 0 var(--tan,#DEA061)}
.price-body.dark .ptable tr.hit td:last-child{box-shadow:inset 0 1px 0 var(--tan,#DEA061),inset 0 -1px 0 var(--tan,#DEA061),inset -1px 0 0 var(--tan,#DEA061)}
.price-body.dark .ptable tr.hit .amt{font-size:1.7rem}
.price-body.dark .hit-tag{display:table;margin:.35rem 0 0}
.price-body.dark .hit td{padding-top:1rem;padding-bottom:1rem}
@media(max-width:560px){
.price-body.dark .ptable{table-layout:fixed;width:100%}
.price-body.dark .ptable th:nth-child(1){width:23%}.price-body.dark .ptable th:nth-child(2){width:37%}
.price-body.dark .ptable td,.price-body.dark .ptable th{padding-left:.5rem;padding-right:.5rem}
.price-body.dark .ptable td{font-size:.95rem}
.price-body.dark .ptable td.amt{font-size:1.5rem}
.price-body.dark .ptable tr.hit .amt{font-size:1.6rem}
.price-body.dark .hit-tag{font-size:.56rem;letter-spacing:.05em;padding:.2rem .5rem}
}
.price-body.dark .ptable tr.hit td{background:rgba(222,160,97,.2)!important}
@media(max-width:560px){
.price-body.dark .ptable th:nth-child(1){width:21%}.price-body.dark .ptable th:nth-child(2){width:41%}
.price-body.dark .hit-tag{white-space:normal;max-width:100%;line-height:1.25;text-align:center;font-size:.54rem}
.price-body.dark .ptable td{white-space:normal}
}
.price-body.dark .ptable td.sub{opacity:1;color:rgba(250,222,188,.65)}
@media(max-width:560px){
.price-body.dark .ptable th:nth-child(1){width:26%}.price-body.dark .ptable th:nth-child(2){width:38%}
.price-body.dark .ptable td:first-child{white-space:nowrap}
}
