/* DSLEvents – Moja lista: wspólny moduł dla wszystkich podstron */
:root{
  --dsl-list-bg:#111821;
  --dsl-list-bg2:#171f2b;
  --dsl-list-border:#394557;
  --dsl-list-text:#eef3f8;
  --dsl-list-muted:#aeb8c5;
  --dsl-list-accent:#ffc000;
  --dsl-list-danger:#7b2626;
}
#dsl-cart-toggle{
  position:fixed;right:18px;bottom:18px;z-index:10010;border:0;border-radius:999px;
  background:var(--dsl-list-accent);color:#111;padding:12px 18px;font:700 15px Arial,sans-serif;
  box-shadow:0 8px 26px rgba(0,0,0,.35);cursor:pointer;
}
#dsl-cart-panel{
  position:fixed;top:0;right:0;bottom:0;width:min(430px,94vw);z-index:10030;
  transform:translateX(105%);transition:transform .22s ease;background:var(--dsl-list-bg);
  color:var(--dsl-list-text);box-shadow:-14px 0 36px rgba(0,0,0,.45);padding:22px;
  box-sizing:border-box;overflow:auto;
}
#dsl-cart-panel.open{transform:translateX(0)}
.dsl-cart-close{
  position:absolute;right:14px;top:10px;border:0;background:transparent;color:#fff;
  font-size:32px;line-height:1;cursor:pointer
}
#dsl-cart-panel h2{margin:0 40px 7px 0}
.dsl-cart-note{color:var(--dsl-list-muted);margin:0 0 16px}
.dsl-cart-item{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 0;border-bottom:1px solid #2e3744}
.dsl-cart-item small,.dsl-limit-note{color:var(--dsl-list-muted)}
.dsl-limit-note{display:block;margin-top:4px;font-size:.88em}
.dsl-cart-controls{display:flex;align-items:center;gap:8px}
.dsl-cart-controls button{
  width:32px;height:32px;border-radius:5px;border:1px solid #465268;background:#1b2431;color:#fff;
  cursor:pointer;font-size:20px
}
.dsl-cart-controls button:disabled{opacity:.35;cursor:not-allowed}
.dsl-cart-summary{margin-top:18px;padding-top:14px;border-top:1px solid var(--dsl-list-border)}
.dsl-cart-total{display:flex;justify-content:space-between;gap:10px;font-weight:700;font-size:1.08em}
.dsl-cart-summary small{display:block;color:var(--dsl-list-muted);margin:7px 0 12px}
.dsl-cart-cta,.dsl-cart-clear{
  width:100%;box-sizing:border-box;padding:11px 13px;border-radius:5px;font-weight:700;cursor:pointer
}
.dsl-cart-cta{border:0;background:var(--dsl-list-accent);color:#111}
.dsl-cart-clear{margin-top:8px;background:transparent;color:#d9e0e8;border:1px solid #4b5668}
.dsl-cross-sell{margin-top:15px}
.dsl-cross-sell h3{font-size:1em;font-weight:400;color:#cfd6df;margin:0 0 7px}
.dsl-cross-options{display:block}
.dsl-cross-option{
  display:flex;justify-content:space-between;align-items:center;padding:9px 2px;border-bottom:1px solid #2e3540;
  text-decoration:none;color:#e7edf7
}
.dsl-cross-option:hover{color:var(--dsl-list-accent)}
.dsl-go{color:var(--dsl-list-accent);font-size:.9em}
.dsl-v3-toast{
  position:fixed;left:50%;bottom:76px;z-index:10060;transform:translate(-50%,15px);
  background:#202a37;color:#fff;border:1px solid #4b5869;padding:10px 14px;border-radius:6px;
  opacity:0;pointer-events:none;transition:.18s ease
}
.dsl-v3-toast.show{opacity:1;transform:translate(-50%,0)}
.dsl-cart-add{
  border:0;border-radius:4px;background:var(--dsl-list-accent);color:#111;padding:8px 11px;font-weight:700;cursor:pointer
}
.dsl-cart-add:disabled{opacity:.5;cursor:not-allowed}
.dsl-cart-add.is-added{outline:1px solid rgba(255,255,255,.35)}
.dsl-stock-info{display:block;margin:4px 0;color:#cbd4df;font-size:.9em}
.dsl-stock-info.is-zero{color:#ff8e8e}

/* Checkout */
#dsl-checkout{
  position:fixed;inset:0;z-index:10050;background:rgba(0,0,0,.78);display:none;overflow:auto;
  padding:22px 12px;box-sizing:border-box
}
#dsl-checkout.open{display:block}
.dsl-checkout-card{
  max-width:760px;margin:0 auto;background:var(--dsl-list-bg);color:#fff;border:1px solid var(--dsl-list-border);
  border-radius:8px;padding:20px;box-sizing:border-box;box-shadow:0 12px 40px rgba(0,0,0,.5)
}
.dsl-checkout-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.dsl-checkout-head h2{margin:0 0 5px}
.dsl-checkout-close{border:0;background:transparent;color:#fff;font-size:31px;cursor:pointer;line-height:1}
.dsl-checkout-intro{color:#c7cfda;margin:0 0 18px}
.dsl-checkout-summary{padding:13px;background:#1a2230;border-left:4px solid var(--dsl-list-accent);margin:0 0 18px}
.dsl-checkout-summary ul{padding-left:20px;margin:8px 0}
.dsl-checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dsl-checkout-field{margin-bottom:12px}
.dsl-checkout-field.full{grid-column:1/-1}
.dsl-checkout-field label{display:block;margin-bottom:5px;font-weight:700}
.dsl-checkout-field input,.dsl-checkout-field select,.dsl-checkout-field textarea{
  width:100%;box-sizing:border-box;padding:11px;border:1px solid #465166;border-radius:5px;background:#0d121a;color:#fff
}
.dsl-checkout-field textarea{min-height:90px;resize:vertical}
.dsl-date-info{padding:11px 13px;background:#242c3b;border-left:4px solid var(--dsl-list-accent);color:#d5dbea;margin:3px 0 14px}
.dsl-checkout-note{padding:11px 13px;background:#1b2431;color:#d5dbea;margin:12px 0}
.dsl-checkout-error{display:none;padding:10px 12px;margin:10px 0;background:#5a1d1d;color:#fff;border-radius:5px}
.dsl-checkout-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}
.dsl-checkout-actions button{padding:11px 16px;border-radius:5px;font-weight:700;cursor:pointer}
.dsl-checkout-back{background:transparent;border:1px solid #596577;color:#fff}
.dsl-checkout-send{background:var(--dsl-list-accent);border:0;color:#111}
.dsl-checkout-send:disabled{opacity:.6;cursor:wait}
.dsl-checkout-success{text-align:center;padding:24px 8px;display:none}
.dsl-checkout-success .check{font-size:54px;color:var(--dsl-list-accent)}
.dsl-readonly{opacity:.82}
@media(max-width:700px){
  #dsl-cart-toggle{right:12px;bottom:12px}
  #dsl-cart-panel{width:96vw;padding:18px}
  .dsl-checkout-grid{grid-template-columns:1fr}
  .dsl-checkout-actions{flex-direction:column}
  .dsl-checkout-actions button{width:100%}
}

.dsl-date-button{width:100%;box-sizing:border-box;padding:11px;border:1px solid #465166;border-radius:5px;background:#0d121a;color:#fff;text-align:left;cursor:pointer}
.dsl-calendar-modal{position:fixed;inset:0;z-index:10080;background:rgba(0,0,0,.78);display:none;padding:22px 12px;box-sizing:border-box}
.dsl-calendar-modal.open{display:flex;align-items:center;justify-content:center}
.dsl-calendar-card{width:min(390px,96vw);background:#111821;border:1px solid #3b4658;border-radius:8px;padding:16px;color:#fff;box-sizing:border-box}
.dsl-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;text-align:center;gap:8px;margin-bottom:12px}
.dsl-calendar-head button,.dsl-calendar-actions button{border:1px solid #465166;background:#1a2230;color:#fff;border-radius:5px;padding:8px;cursor:pointer}
.dsl-calendar-week,.dsl-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.dsl-calendar-week{color:#aeb8c5;font-size:.82em;text-align:center;margin-bottom:6px}
.dsl-calendar-day{aspect-ratio:1;border:1px solid #394557;border-radius:5px;background:#0d121a;color:#fff;cursor:pointer}
.dsl-calendar-day:hover{border-color:#ffc000}
.dsl-calendar-day.today{outline:1px solid #ffc000}
.dsl-calendar-day.selected{background:#ffc000;color:#111;font-weight:700}
.dsl-calendar-day.disabled{opacity:.28;cursor:not-allowed}
.dsl-calendar-day.empty{visibility:hidden}
.dsl-calendar-actions{margin-top:12px;text-align:right}
.dsl-checkout-success{max-width:560px;margin:0 auto}
.dsl-checkout-success p{line-height:1.55;color:#d8e0e8}
.dsl-success-number{margin:22px 0;font-size:1.08em}
.dsl-success-signature{margin-top:22px}
.dsl-checkout-success a{color:#ffc000}

.dsl-date-button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.dsl-date-icon{
  flex:0 0 auto;
  font-size:1.15em;
  line-height:1;
}

.dsl-native-date-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) 48px;
  gap:8px;
  align-items:stretch;
}
.dsl-native-date-wrap input[type="date"]{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:11px;
  border:1px solid #465166;
  border-radius:5px;
  background:#0d121a;
  color:#fff;
  color-scheme:dark;
  font:inherit;
  min-height:46px;
}
.dsl-native-date-open{
  border:1px solid #465166;
  border-radius:5px;
  background:#1a2230;
  color:#fff;
  font-size:1.2rem;
  cursor:pointer;
  min-height:46px;
}
