.chk-wrap{--chk-accent:#b30d1b;--chk-accent-light:#e43242;--chk-bg:#0c0d11;--chk-panel:#15171e;--chk-text:#f4f4f4;display:grid;grid-template-columns:minmax(270px,36%) 1fr;background:var(--chk-bg);color:var(--chk-text);min-height:700px;border-radius:4px;overflow:hidden;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.chk-intro{position:relative;background:linear-gradient(145deg,var(--chk-accent-light),var(--chk-accent));overflow:hidden}.chk-intro-pattern{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(30deg,transparent 40%,#fff 41%,#fff 43%,transparent 44%),linear-gradient(150deg,transparent 40%,#fff 41%,#fff 43%,transparent 44%);background-size:90px 130px}.chk-intro-content{position:relative;z-index:1;padding:clamp(35px,6vw,90px) clamp(28px,5vw,70px)}.chk-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;opacity:.78}.chk-intro h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,56px);line-height:1.02;margin:16px 0 28px}.chk-intro-copy{font-size:18px;line-height:1.7;max-width:560px}.chk-legend{display:grid;gap:12px;margin-top:36px;font-size:14px}.chk-legend span{display:flex;gap:10px;align-items:center}.chk-legend i{width:13px;height:13px;border-radius:50%;background:#fff}.chk-legend i.open{background:#ff7b86}.chk-legend i.pending{background:transparent;border:2px solid #fff}.chk-calendar-panel{padding:clamp(24px,4vw,60px)}.chk-cal-head{display:grid;grid-template-columns:50px 1fr 50px;align-items:center;margin-bottom:36px}.chk-cal-head h3{text-align:center;letter-spacing:.14em;margin:0;font-size:clamp(20px,2.5vw,34px)}.chk-nav{border:0;background:none;color:var(--chk-text);font-size:42px;cursor:pointer;line-height:1}.chk-weekdays,.chk-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.chk-weekdays{margin-bottom:12px;text-align:center;opacity:.65;font-weight:700}.chk-day{min-height:128px;background:#11131a;border:1px solid #363a48;border-radius:4px;color:var(--chk-text);padding:14px;text-align:left;cursor:pointer;transition:.2s;overflow:hidden}.chk-day:hover{transform:translateY(-2px);border-color:var(--chk-accent-light);box-shadow:0 10px 30px #0005}.chk-day.is-muted{opacity:.25;cursor:default}.chk-day.is-muted:hover{transform:none;border-color:#363a48;box-shadow:none}.chk-day.is-occupied{border-color:var(--chk-accent)}.chk-day.is-pending{outline:1px dashed var(--chk-accent-light);outline-offset:-5px}.chk-daynum{display:block;font-size:24px;font-weight:800;margin-bottom:18px}.chk-badge{display:block;background:#25212a;border-left:3px solid var(--chk-accent);padding:8px 9px;margin-top:6px;border-radius:2px;font-size:12px;color:#f6c7cb}.chk-badge strong,.chk-badge small{display:block}.chk-badge small{opacity:.75;margin-top:3px}.chk-badge.open{border-left-color:#ff6b78}.chk-badge.pending{border-left-color:#fff;color:#fff}.chk-more{font-size:11px;opacity:.65;display:block;margin-top:7px}.chk-calendar.is-loading{opacity:.5;pointer-events:none}.chk-modal{position:fixed!important;inset:0!important;z-index:2147483647!important;display:none}.chk-modal.is-open{display:block}.chk-modal-backdrop{position:absolute;inset:0;background:#000c;backdrop-filter:blur(5px)}.chk-modal-dialog{position:relative;background:#12141b;color:#f5f5f5;width:min(760px,calc(100% - 30px));max-height:90vh;overflow:auto;margin:5vh auto;padding:34px;border:1px solid #343744;border-radius:8px;box-shadow:0 30px 100px #000}.chk-modal-close{position:absolute;right:14px;top:10px;background:none;border:0;color:#fff;font-size:32px;cursor:pointer}.chk-modal-header h3{font-size:32px;margin:6px 0 24px}.chk-event-list{display:grid;gap:14px}.chk-event-card{display:grid;grid-template-columns:1fr auto;gap:20px;padding:20px;background:#1b1d25;border-left:4px solid var(--chk-accent);border-radius:4px}.chk-event-type{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#ff8d97;font-weight:800}.chk-event-card h4{font-size:22px;margin:7px 0}.chk-event-meta{display:flex;gap:18px;flex-wrap:wrap;opacity:.8}.chk-event-description{margin-top:14px;line-height:1.6}.chk-poster img{width:120px;max-height:170px;object-fit:cover;border-radius:3px}.chk-status-box{padding:16px 18px;margin:16px 0;border-radius:4px;background:#1b1d25;border-left:4px solid var(--chk-accent)}.chk-status-box.free{border-color:#5fce91}.chk-status-box.pending{border-color:#efb74d}.chk-primary{display:inline-flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--chk-accent-light),var(--chk-accent));color:#fff!important;border:0;border-radius:3px;padding:14px 22px;font-weight:800;cursor:pointer;margin-top:16px}.chk-form{margin-top:24px;border-top:1px solid #30333e;padding-top:24px}.chk-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chk-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.chk-form label.full{grid-column:1/-1}.chk-form input,.chk-form select,.chk-form textarea{width:100%;box-sizing:border-box;background:#0b0d12;border:1px solid #3a3d48;color:#fff;border-radius:3px;padding:12px}.chk-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;margin-top:18px;font-weight:400!important;line-height:1.5}.chk-consent input{width:auto;margin-top:4px}.chk-form-message{margin-top:14px}.chk-form-message.success{color:#70db9f}.chk-form-message.error,.chk-error{color:#ff7b86}.chk-no-scroll{overflow:hidden}@media(max-width:1000px){.chk-wrap{grid-template-columns:1fr}.chk-intro-content{padding:36px}.chk-calendar-panel{padding:25px}.chk-day{min-height:105px;padding:10px}.chk-daynum{font-size:19px}.chk-weekdays,.chk-grid{gap:7px}}@media(max-width:650px){.chk-calendar-panel{overflow-x:auto}.chk-calendar{min-width:700px}.chk-modal-dialog{padding:26px 18px}.chk-form-grid{grid-template-columns:1fr}.chk-form label.full{grid-column:auto}.chk-event-card{grid-template-columns:1fr}.chk-poster img{width:100%;max-height:none}}

/* Czytelność nagłówka miesiąca i daty w oknie rezerwacji */
.chk-wrap .chk-cal-head h3,
.chk-modal .chk-modal-header h3,
.chk-modal #chk-modal-title{
  color:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Czytelne pola daty i godziny w ciemnym formularzu */
.chk-modal .chk-form input[type="date"],
.chk-modal .chk-form input[type="time"]{
  color:#fff!important;
  background-color:#0b0d12!important;
  color-scheme:dark;
}
.chk-modal .chk-form input[type="date"]::-webkit-calendar-picker-indicator,
.chk-modal .chk-form input[type="time"]::-webkit-calendar-picker-indicator{
  filter:invert(1);
  opacity:.9;
  cursor:pointer;
}

/* Wyraźne, eleganckie czerwone przyciski */
.chk-wrap .chk-primary,
.chk-modal .chk-primary{
  appearance:none;
  -webkit-appearance:none;
  min-height:50px;
  padding:15px 28px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:6px!important;
  background:linear-gradient(135deg,var(--chk-accent-light),var(--chk-accent))!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.035em;
  text-transform:uppercase;
  text-decoration:none!important;
  box-shadow:0 8px 22px rgba(179,13,27,.34),inset 0 1px 0 rgba(255,255,255,.16);
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.chk-modal .chk-primary:hover,
.chk-modal .chk-primary:focus-visible{
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:0 12px 30px rgba(179,13,27,.46),inset 0 1px 0 rgba(255,255,255,.2);
}
.chk-modal .chk-primary:active{transform:translateY(0)}
.chk-modal .chk-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}


/* Układ 1.0.2: panel informacyjny nad kalendarzem */
.chk-wrap{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
}
.chk-intro{
  width:100%!important;
}
.chk-intro-content{
  padding:clamp(28px,4vw,52px)!important;
  max-width:none!important;
}
.chk-intro h2{
  font-size:clamp(28px,3vw,44px)!important;
  margin:12px 0 18px!important;
}
.chk-intro-copy{
  max-width:1100px!important;
}
.chk-calendar-panel{
  width:100%!important;
  box-sizing:border-box!important;
}
.chk-legend{display:none!important;}

/* Wymuszenie jasnych nagłówków, miesięcy, dat i etykiet w obrębie pluginu */
.chk-wrap,
.chk-wrap h1,.chk-wrap h2,.chk-wrap h3,.chk-wrap h4,.chk-wrap h5,.chk-wrap h6,
.chk-wrap .chk-eyebrow,
.chk-wrap .chk-cal-head h3,
.chk-wrap .chk-weekdays,
.chk-wrap .chk-weekdays span,
.chk-wrap .chk-day,
.chk-wrap .chk-daynum,
.chk-modal,
.chk-modal h1,.chk-modal h2,.chk-modal h3,.chk-modal h4,.chk-modal h5,.chk-modal h6,
.chk-modal .chk-eyebrow,
.chk-modal .chk-modal-header,
.chk-modal #chk-modal-title,
.chk-modal label,
.chk-modal label span{
  color:#fff!important;
}
.chk-wrap .chk-weekdays{opacity:.78!important;}
.chk-wrap .chk-day.is-muted,
.chk-wrap .chk-day.is-muted .chk-daynum{color:#fff!important;opacity:.34!important;}
.chk-modal .chk-event-meta,
.chk-modal .chk-event-description,
.chk-modal .chk-status-box{color:#f5f5f5!important;}

/* 1.0.3 — pełny widok mobilny. Desktop pozostaje bez zmian. */
@media (max-width:650px){
  .chk-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    border-radius:0!important;
  }
  .chk-intro-content{
    padding:24px 18px!important;
  }
  .chk-intro h2{
    font-size:27px!important;
    line-height:1.08!important;
    margin:8px 0 14px!important;
  }
  .chk-intro-copy{
    font-size:15px!important;
    line-height:1.55!important;
  }
  .chk-intro-copy p{margin:0!important;}

  .chk-calendar-panel{
    width:100%!important;
    max-width:100%!important;
    padding:20px 8px 24px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .chk-calendar{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .chk-cal-head{
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    gap:4px!important;
    margin-bottom:20px!important;
  }
  .chk-cal-head h3{
    min-width:0!important;
    font-size:18px!important;
    line-height:1.15!important;
    letter-spacing:.07em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .chk-nav{
    width:42px!important;
    height:42px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:34px!important;
  }
  .chk-weekdays,
  .chk-grid{
    width:100%!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:4px!important;
  }
  .chk-weekdays{
    margin-bottom:6px!important;
    font-size:11px!important;
  }
  .chk-day{
    width:100%!important;
    min-width:0!important;
    min-height:68px!important;
    height:68px!important;
    padding:7px 5px!important;
    border-radius:4px!important;
    overflow:hidden!important;
  }
  .chk-day:hover{transform:none!important;box-shadow:none!important;}
  .chk-daynum{
    font-size:16px!important;
    line-height:1!important;
    margin:0 0 7px!important;
  }
  .chk-badge{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-height:4px!important;
    margin:3px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:4px!important;
    background:var(--chk-accent)!important;
    font-size:0!important;
    line-height:0!important;
    overflow:hidden!important;
  }
  .chk-badge.open{background:#ff6b78!important;}
  .chk-badge.pending{background:#efb74d!important;outline:0!important;}
  .chk-badge strong,
  .chk-badge small,
  .chk-more{display:none!important;}
  .chk-day.is-pending{outline:1px dashed #efb74d!important;outline-offset:-3px!important;}

  .chk-modal{
    padding:0!important;
  }
  .chk-modal-dialog{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 16px)!important;
    margin:8px auto!important;
    padding:26px 16px 22px!important;
    border-radius:8px!important;
    box-sizing:border-box!important;
  }
  .chk-modal-close{
    position:sticky!important;
    float:right!important;
    top:0!important;
    right:0!important;
    z-index:3!important;
    width:42px!important;
    height:42px!important;
    margin:-12px -7px 0 0!important;
    border-radius:50%!important;
    background:#20232c!important;
  }
  .chk-modal-header{padding-right:42px!important;}
  .chk-modal-header h3,
  .chk-modal #chk-modal-title{
    font-size:24px!important;
    line-height:1.15!important;
    margin:5px 0 18px!important;
    overflow-wrap:anywhere!important;
  }
  .chk-event-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:16px!important;
  }
  .chk-event-card h4{font-size:19px!important;}
  .chk-event-meta{gap:8px!important;display:grid!important;}
  .chk-poster img{width:100%!important;max-height:none!important;}
  .chk-status-box{padding:14px!important;margin:12px 0!important;}
  .chk-primary{
    width:100%!important;
    min-height:52px!important;
    padding:14px 16px!important;
    margin-top:14px!important;
    box-sizing:border-box!important;
    text-align:center!important;
  }
  .chk-form{margin-top:18px!important;padding-top:18px!important;}
  .chk-form-grid{grid-template-columns:1fr!important;gap:13px!important;}
  .chk-form label.full{grid-column:auto!important;}
  .chk-form input,.chk-form select,.chk-form textarea{
    min-height:46px!important;
    font-size:16px!important; /* zapobiega automatycznemu zoomowi iOS */
  }
  .chk-form textarea{min-height:110px!important;}
}

@media (max-width:380px){
  .chk-calendar-panel{padding-left:5px!important;padding-right:5px!important;}
  .chk-weekdays,.chk-grid{gap:3px!important;}
  .chk-day{height:62px!important;min-height:62px!important;padding:6px 4px!important;}
  .chk-daynum{font-size:15px!important;}
  .chk-cal-head h3{font-size:16px!important;}
}


/* 1.0.4 — modal zawsze ponad sticky/floating headerem motywu */
body > .chk-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  isolation:isolate!important;
}
body > .chk-modal .chk-modal-backdrop{z-index:0!important;}
body > .chk-modal .chk-modal-dialog{z-index:1!important;}
body.chk-no-scroll{overflow:hidden!important;}


/* 1.0.5 — kolory wydarzeń zależne od kategorii */
.chk-wrap .chk-badge.busy{
  background:rgba(183,28,28,.18)!important;
  border-left-color:#d73737!important;
  color:#ffd5d5!important;
}
.chk-wrap .chk-badge.open{
  background:rgba(46,158,111,.18)!important;
  border-left-color:#42c58a!important;
  color:#d9ffec!important;
}
.chk-wrap .chk-badge.closed{
  background:rgba(93,103,120,.22)!important;
  border-left-color:#8e98a8!important;
  color:#eef1f5!important;
}
.chk-wrap .chk-badge.wedding{
  background:rgba(178,58,122,.20)!important;
  border-left-color:#d85d9f!important;
  color:#ffe0f0!important;
}
.chk-wrap .chk-badge.pending{
  background:rgba(209,154,42,.18)!important;
  border-left-color:#e6ad3b!important;
  color:#fff0c7!important;
}

/* Te same akcenty w szczegółach dnia */
.chk-modal .chk-event-card.busy{border-left-color:#d73737!important;}
.chk-modal .chk-event-card.open{border-left-color:#42c58a!important;}
.chk-modal .chk-event-card.closed{border-left-color:#8e98a8!important;}
.chk-modal .chk-event-card.wedding{border-left-color:#d85d9f!important;}

/* Na telefonie etykiety są paskami kolorystycznymi */
@media (max-width:650px){
  .chk-wrap .chk-badge.busy{background:#d73737!important;}
  .chk-wrap .chk-badge.open{background:#42c58a!important;}
  .chk-wrap .chk-badge.closed{background:#8e98a8!important;}
  .chk-wrap .chk-badge.wedding{background:#d85d9f!important;}
  .chk-wrap .chk-badge.pending{background:#e6ad3b!important;}
}


/* 1.0.6 — dodatkowe kategorie */
.chk-wrap .chk-badge.birthday{
  background:rgba(126,76,190,.20)!important;
  border-left-color:#9b6bd3!important;
  color:#f0e5ff!important;
}
.chk-wrap .chk-badge.corporate{
  background:rgba(39,105,164,.20)!important;
  border-left-color:#4d91cf!important;
  color:#e1f1ff!important;
}
.chk-modal .chk-event-card.birthday{border-left-color:#9b6bd3!important;}
.chk-modal .chk-event-card.corporate{border-left-color:#4d91cf!important;}
@media (max-width:650px){
  .chk-wrap .chk-badge.birthday{background:#9b6bd3!important;}
  .chk-wrap .chk-badge.corporate{background:#4d91cf!important;}
}
