/* ===== Vánoční cukroví 2026 — sezónní nabídka (viz cukrovi.js) ===== */

/* --- uvítací okno s letákem --- */
.cuk-welcome{width:min(900px,94vw);max-width:none;max-height:92vh;max-height:92dvh;overscroll-behavior:contain;padding:0;border:1px solid #4a3656;border-radius:22px;background:radial-gradient(circle at 100% 0,#4a213d 0,transparent 45%),linear-gradient(150deg,#1d1236,#130b24);color:#fff7f2;overflow:auto;display:none;box-shadow:0 40px 90px #05020dcc}
.cuk-welcome[open]{display:flex;align-items:center}
.cuk-welcome-letak{flex:0 0 46%;min-width:0}
.cuk-welcome-text{flex:1 1 0;min-width:0}
.cuk-welcome::backdrop{background:#0a0616b8;backdrop-filter:blur(4px)}
.cuk-welcome:before{content:"";position:absolute;inset:9px;border:1px solid #d8a27f33;border-radius:16px;pointer-events:none}
.cuk-welcome .close{position:absolute;right:16px;top:16px;z-index:3}
.cuk-welcome-letak{position:relative;align-self:center;margin:0;padding:22px 0 22px 22px;border:0;background:none;cursor:zoom-in;display:block}
.cuk-welcome-letak img{display:block;width:100%;height:auto;aspect-ratio:1024/1536;object-fit:contain;border-radius:12px;box-shadow:0 18px 40px #00000066;transition:transform .35s}
.cuk-welcome-letak:hover img{transform:scale(1.015)}
.cuk-welcome-letak span,.cuk-letak-thumb span{position:absolute;left:50%;bottom:36px;transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:#130b24d9;color:#f6e4dc;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.cuk-welcome-text:focus{outline:none}
.cuk-welcome-text{display:flex;flex-direction:column;justify-content:center;padding:52px clamp(26px,4vw,48px) 44px}
.cuk-kicker{margin:0;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.cuk-welcome h2{margin:12px 0 16px;font:400 clamp(40px,5.4vw,60px)/1 var(--font-display);letter-spacing:-.02em;text-wrap:balance}
.cuk-welcome h2 em{color:var(--rose);font-style:italic}
.cuk-welcome-text>p:not([class]){margin:0;color:#cdbfcc;line-height:1.65;font-size:15px;max-width:42ch}
.cuk-deadline{display:flex;align-items:center;gap:14px;margin:26px 0 0;padding:14px 18px;border:1px solid #d8889b55;border-radius:14px;background:#d8889b14;color:#e9d6dc;font-size:13px;line-height:1.35}
.cuk-deadline svg{flex:none;width:34px;height:34px;fill:none;stroke:var(--rose);stroke-width:1.5;stroke-linecap:round}
.cuk-deadline strong{font:500 22px var(--font-display);color:#fff5ef}
.cuk-welcome-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.cuk-welcome-actions .primary{margin:0;border:0;padding:16px 26px;border-radius:999px;cursor:pointer;min-height:48px}
.cuk-welcome-actions .secondary{min-height:48px}

/* --- prohlížeč letáku --- */
.cuk-letak-dialog{width:100vw;height:100vh;max-width:none;max-height:none;padding:0;border:0;background:#080511f2}
.cuk-letak-dialog[open]{display:grid;place-items:center}
.cuk-letak-dialog img{max-width:min(96vw,760px);max-height:94vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 70px #000;cursor:zoom-out}
.cuk-letak-dialog .close{position:absolute;right:18px;top:18px;z-index:2}

/* --- objednávka v okně „Vánoční cukroví" --- */
.cuk-panel{padding-top:34px}
.cuk-intro{display:flex;align-items:center;gap:28px;max-width:1220px;margin:0 auto 30px}
.cuk-intro h3{margin:8px 0 10px;font:400 clamp(28px,3.2vw,40px)/1.1 var(--font-display);color:#fff5ef;text-wrap:balance}
.cuk-intro h3 em{color:var(--rose);font-style:italic}
.cuk-intro p:last-child{margin:0;color:#c3b6c4;line-height:1.6;max-width:64ch}
.cuk-letak-thumb{position:relative;flex:none;width:118px;padding:0;border:1px solid #4a3656;border-radius:10px;background:none;cursor:zoom-in;overflow:hidden}
.cuk-letak-thumb img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}
.cuk-letak-thumb span{bottom:8px;padding:5px 9px;font-size:9px;letter-spacing:.08em}
.cuk-layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start;max-width:1220px;margin:0 auto}
.cuk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;scroll-margin-top:150px}
.cuk-item{display:flex}
.cuk-pick{display:flex;flex-direction:column;width:100%;padding:0;border:1px solid #3a2b4b;border-radius:16px;background:#1f1535;overflow:hidden;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
.cuk-pick img{display:block;width:100%;height:auto;aspect-ratio:303/157;object-fit:cover;transition:filter .2s}
.cuk-pick:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.cuk-item-body{display:flex;flex-direction:column;gap:12px;flex:1;width:100%;box-sizing:border-box;padding:14px}
.cuk-name{display:block;font:500 19px/1.2 var(--font-display);color:#fff5ef}
.cuk-name small{display:block;margin-top:3px;font:italic 13px var(--font-display);color:#b9adbd}
.cuk-check{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:auto;padding:0 14px 0 6px;border:1px solid #4a3959;border-radius:999px;background:#150e28;color:#e9d9df;font-size:14px;font-weight:600}
.cuk-check i{position:relative;flex:0 0 32px;height:32px;border-radius:50%;border:1.5px solid #6d5a7a}
.cuk-check i:before,.cuk-check i:after{content:"";position:absolute;left:50%;top:50%;background:#e9d9df;border-radius:2px;transform:translate(-50%,-50%)}
.cuk-check i:before{width:12px;height:2px}.cuk-check i:after{width:2px;height:12px}
.cuk-check-on{display:none}
.cuk-item.is-picked .cuk-pick{border-color:var(--rose);box-shadow:0 0 0 1px var(--rose),0 14px 30px #d8889b22}
.cuk-item.is-picked .cuk-check{border-color:transparent;background:linear-gradient(120deg,var(--rose),var(--gold));color:#160d25}
.cuk-item.is-picked .cuk-check i{border-color:#160d25;background:#160d25}
.cuk-item.is-picked .cuk-check i:before{width:7px;height:2px;left:38%;top:55%;background:#f6c9bd;transform:translate(-50%,-50%) rotate(45deg)}
.cuk-item.is-picked .cuk-check i:after{width:2px;height:13px;left:56%;top:47%;background:#f6c9bd;transform:translate(-50%,-50%) rotate(40deg)}
.cuk-item.is-picked .cuk-check-off{display:none}.cuk-item.is-picked .cuk-check-on{display:inline}
.cuk-stepper{display:flex;align-items:center;justify-content:space-between;border:1px solid #e3cabc;border-radius:999px;background:#fff}
.cuk-stepper button{width:48px;height:48px;border:0;border-radius:50%;background:transparent;color:#4a2f3c;font-size:24px;line-height:1;cursor:pointer}
.cuk-stepper button[data-krok="1"]{background:linear-gradient(120deg,var(--rose),var(--gold));color:#160d25;font-weight:700}
.cuk-stepper button.is-idle{opacity:.3}
.cuk-stepper button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.cuk-stepper output{font:500 24px var(--font-display);font-variant-numeric:tabular-nums;color:#351b38}
.cuk-qty{display:grid;gap:8px;margin:16px 0 4px}
.cuk-qty small{color:#7c6c73;font-size:13px}
.cuk-sum-label{margin:0 0 6px;color:#78465a;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.cuk-form{width:auto;margin:0;padding:28px 26px;scroll-margin-top:250px}
.cuk-form h3{margin-bottom:18px;font-size:28px}
.cuk-summary{padding:16px 18px;border:1px solid #ead7cb;border-radius:14px;background:#fff8f0}
.cuk-empty{margin:0;color:#7c6c73;font-size:14px;line-height:1.5}
.cuk-lines{margin:0;padding:0;list-style:none}
.cuk-lines{display:flex;flex-wrap:wrap;gap:6px}
.cuk-lines li{padding:5px 11px;border:1px solid #e3cabc;border-radius:999px;background:#fff;color:#4a2f3c;font-size:13px}
.cuk-msg{margin-top:14px;padding:14px 16px;border:1px solid #f2c0bb;border-radius:12px;background:#fdeceb;color:#8a2b22;font-size:14px;line-height:1.5}
.cuk-msg strong{display:block;margin-bottom:3px;font-size:15px}
.cuk-msg button{display:block;margin-top:10px;padding:9px 16px;border:0;border-radius:999px;background:#a84f67;color:#fff;font-weight:700;cursor:pointer}
.cuk-msg[hidden],.cuk-bar[hidden],.cuk-empty[hidden]{display:none}
.cuk-note{margin:14px 0 0;color:#7c6c73;font-size:13px;line-height:1.55}
.cuk-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.cuk-form .cf-turnstile{margin-top:18px}
.cuk-form .savory-send{width:100%;min-height:50px}
.cuk-bar:not([hidden]){position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:760px;margin:18px auto 0;padding:8px 8px 8px 20px;border:1px solid #d8889b66;border-radius:999px;background:#130b24f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#eadde6;transition:opacity .2s,transform .2s,visibility .2s;font-size:14px;box-shadow:0 12px 30px #00000066}
.cuk-bar span{white-space:nowrap}
.cuk-bar strong{color:#fff;font-variant-numeric:tabular-nums}
.cuk-bar button{min-height:44px;padding:0 18px;border:0;border-radius:999px;background:linear-gradient(120deg,var(--rose),var(--gold));color:#160d25;font-weight:700;cursor:pointer}
.cuk-bar.is-away{opacity:0;visibility:hidden;transform:translateY(12px)}

.cuk-card h3:after{content:"Nabídka 2026";display:block;width:max-content;margin-top:10px;padding:4px 10px;border:1px solid var(--rose);border-radius:999px;font:700 10px var(--font-text);letter-spacing:.14em;text-transform:uppercase;color:var(--rose)}

@media (max-width:1100px){
  .cuk-layout{grid-template-columns:minmax(0,1fr)}
  .cuk-form{width:min(760px,100%);margin:0 auto;scroll-margin-top:150px}
}
@media (max-width:760px){
  .cuk-welcome[open]{flex-direction:column;align-items:stretch}
  .cuk-welcome-letak{flex:none}
  .cuk-welcome-text{flex:none}
  .cuk-welcome-letak{padding:18px 18px 0}
  .cuk-welcome-letak img{width:auto;max-width:100%;margin:0 auto;max-height:34vh;max-height:34svh}
  .cuk-welcome-letak span{bottom:12px}
  .cuk-welcome-text{padding:22px 22px 26px}
  .cuk-welcome h2{font-size:38px;margin:8px 0 10px}
  .cuk-welcome-text>p:not([class]){font-size:14px}
  .cuk-deadline{margin-top:16px;padding:11px 14px}
  .cuk-deadline strong{font-size:19px}
  .cuk-welcome-actions{margin-top:18px}
  .cuk-welcome-actions{flex-wrap:nowrap;gap:10px}
  .cuk-welcome-actions .primary{flex:1 1 auto;padding:14px 18px}
  .cuk-welcome-actions .secondary{flex:0 0 auto;padding:14px 18px}
  .cuk-intro{gap:16px;align-items:flex-start}
  .cuk-letak-thumb{width:78px}
  .cuk-letak-thumb span{display:none}
  .cuk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .cuk-item-body{padding:10px;gap:10px}
  .cuk-name{font-size:16px}
  .cuk-name small{font-size:12px}
  .cuk-check{font-size:13px;gap:8px;padding-right:10px}
  .cuk-form{padding:22px 16px}
}
@media (max-width:760px) and (max-height:700px){
  .cuk-welcome-letak img{max-height:24vh;max-height:24svh}
  .cuk-welcome-text>p:not([class]){display:none}
  .cuk-welcome h2{font-size:34px}
}
@media (max-width:360px){
  .cuk-grid{grid-template-columns:1fr}
  .cuk-pick img{aspect-ratio:2/1}
  .cuk-bar:not([hidden]){padding-left:14px;font-size:13px}
  .cuk-bar button{padding:0 14px}
}
@media (prefers-reduced-motion:reduce){.cuk-welcome-letak img,.cuk-pick{transition:none}}

/* --- objednávky uzavřeny (UZAVRENO v cukrovi.js) --- */
.cuk-closed{max-width:1220px;margin:0 auto 26px;padding:20px 24px;border:1px solid #d8a27f66;border-radius:16px;background:#d8a27f14;color:#e9d6dc}
.cuk-closed strong{display:block;font:500 24px/1.2 var(--font-display);color:#fff5ef}
.cuk-closed p{margin:8px 0 0;line-height:1.55;color:#cdbfcc}
.cuk-closed-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.cuk-closed-actions .primary{margin:0;border:0;padding:12px 22px;border-radius:999px;cursor:pointer;min-height:44px}
.cuk-closed-actions .secondary{min-height:44px}
.cuk-uzavreno .cuk-grid,.cuk-uzavreno .cuk-form{filter:grayscale(1);opacity:.45;pointer-events:none;user-select:none}
.cuk-uzavreno .cuk-check{display:none}
.cuk-uzavreno .cuk-bar{display:none!important}
