/* ============================================================
   Dee.A.Mond e-shop · sdílené styly obchodu
   Používá CSS proměnné z hlavičky živého webu (--bg, --text, --accent, ...),
   takže automaticky funguje světlý i tmavý režim.
   ============================================================ */

/* --- tlačítka obchodu (plné, samostatné; vzhled 1:1 s .btn-primary / .btn-ghost) --- */
.ddm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;border:1px solid var(--text);background:var(--text);color:var(--bg);font-family:'Inter',sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;padding:16px 32px;border-radius:999px;cursor:pointer;text-decoration:none;transition:transform .2s ease,opacity .2s ease,background .2s ease;white-space:nowrap}
.ddm-btn:hover{transform:translateY(-1px);opacity:.92}
.ddm-btn:disabled,.ddm-btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none}
.ddm-btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}
.ddm-btn.ghost{background:transparent;color:var(--text);border-color:var(--text)}
.ddm-btn.ghost:hover{background:var(--text);color:var(--bg)}
.ddm-btn.small{padding:10px 20px;font-size:11px}
.ddm-btn.full{width:100%}

/* --- košík v hlavičce --- */
.ddm-cartbtn{position:relative;width:42px;height:42px;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-right:2px;transition:border-color .2s}
.ddm-cartbtn:hover{border-color:var(--accent)}
.ddm-count{position:absolute;top:-6px;right:-6px;background:var(--accent);color:#fff;font-family:'Inter',sans-serif;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}
.ddm-count[hidden]{display:none}
.ddm-cartbtn.ddm-bump{animation:ddmBump .55s ease}
@keyframes ddmBump{0%{transform:scale(1)}28%{transform:scale(1.32)}55%{transform:scale(.9)}100%{transform:scale(1)}}

/* --- panel košíku (drawer) --- */
.ddm-ov{position:fixed;inset:0;background:rgba(20,12,6,.45);opacity:0;pointer-events:none;transition:opacity .3s;z-index:1000}
.ddm-ov.on{opacity:1;pointer-events:auto}
.ddm-panel{position:fixed;top:0;right:0;bottom:0;width:min(440px,94vw);background:var(--bg);color:var(--text);z-index:1001;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;box-shadow:-24px 0 70px rgba(0,0,0,.22)}
.ddm-panel.on{transform:none}
.ddm-hd{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--border)}
.ddm-hd .t{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:500}
.ddm-x{background:none;border:none;font-size:22px;color:var(--text-muted);cursor:pointer;line-height:1}
.ddm-body{flex:1;overflow:auto;padding:6px 26px}
.ddm-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--border)}
.ddm-item img{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:10px;padding:4px;flex:none}
.ddm-item .n{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;line-height:1.2}
.ddm-item .v{color:var(--text-muted);font-size:12px;margin-top:2px}
.ddm-item .l{font-weight:600;white-space:nowrap}
.ddm-qty{display:inline-flex;align-items:center;gap:9px;margin-top:8px}
.ddm-qty button{width:26px;height:26px;border:1px solid var(--border);background:var(--bg-card,#fff);color:var(--text);border-radius:7px;cursor:pointer;font-size:15px;line-height:1}
.ddm-qty span,.ddm-qty input{min-width:22px;text-align:center;font-size:14px}
.ddm-qty input{width:44px;border:1px solid var(--border);border-radius:7px;padding:3px;background:var(--bg-card,#fff);color:var(--text)}
.ddm-qty.big button{width:40px;height:40px;font-size:18px;border-radius:10px}
.ddm-qty.big input{width:56px;padding:8px;font-size:16px}
.ddm-rm{background:none;border:none;color:var(--text-faint);font-size:11px;text-decoration:underline;cursor:pointer;margin-left:4px}
.ddm-empty{text-align:center;color:var(--text-muted);padding:56px 20px;line-height:1.6}
.ddm-foot{padding:20px 26px;border-top:1px solid var(--border)}
.ddm-row{display:flex;justify-content:space-between;font-size:14px;color:var(--text-muted);margin-bottom:5px}
.ddm-tot{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--text);margin:8px 0 4px}
.ddm-note{font-size:12px;color:var(--accent);margin-bottom:12px}

/* --- toast + animace přidání do košíku --- */
.ddm-fly{position:fixed;z-index:1003;width:26px;height:26px;border-radius:50%;background:var(--accent);box-shadow:0 8px 26px rgba(168,128,74,.55);pointer-events:none;transition:transform .62s cubic-bezier(.5,.05,.4,1),opacity .62s ease}
#ddmToast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,160%);z-index:1004;background:var(--text);color:var(--bg);padding:12px 14px 12px 18px;border-radius:999px;display:flex;align-items:center;gap:13px;font-family:'Inter',sans-serif;font-size:14px;box-shadow:0 18px 50px rgba(0,0,0,.3);transition:transform .42s cubic-bezier(.2,.7,.2,1);white-space:nowrap;max-width:94vw}
#ddmToast.on{transform:translate(-50%,0)}
#ddmToast .tk{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#3d7a3d;color:#fff;font-size:12px;flex:none}
#ddmToast button{background:var(--accent);color:#fff;border:none;border-radius:999px;padding:6px 14px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}

/* --- hlavička podstránky --- */
.ddm-pagehero{padding:140px 0 48px;text-align:center}
.ddm-pagehero .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}
.ddm-pagehero .eyebrow:before,.ddm-pagehero .eyebrow:after{content:"";width:40px;height:1px;background:var(--accent)}
.ddm-pagehero h1{font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(38px,6vw,64px);line-height:1.1;margin:0 0 16px}
.ddm-pagehero p{color:var(--text-muted);max-width:620px;margin:0 auto;font-weight:300;font-size:17px;line-height:1.6}
@media(max-width:640px){.ddm-pagehero{padding:134px 0 32px}}

/* --- kroky pokladny --- */
.ddm-steps{display:flex;justify-content:center;gap:0;margin:0 auto 34px;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}
.ddm-steps span{display:flex;align-items:center;gap:8px;padding:0 14px;position:relative}
.ddm-steps span:not(:last-child):after{content:"";width:34px;height:1px;background:var(--border);margin-left:14px}
.ddm-steps b{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);font-size:11px;font-weight:600}
.ddm-steps .on{color:var(--text)} .ddm-steps .on b{background:var(--accent);border-color:var(--accent);color:#fff}
.ddm-steps .done{color:var(--text-muted)} .ddm-steps .done b{background:var(--text);border-color:var(--text);color:var(--bg)}
@media(max-width:560px){.ddm-steps span:not(:last-child):after{width:14px;margin-left:8px}.ddm-steps span{padding:0 6px}.ddm-steps i{display:none}}

/* --- formuláře --- */
.ddm-lbl{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin:26px 0 12px;display:flex;align-items:center;gap:12px}
.ddm-lbl:after{content:"";flex:1;height:1px;background:var(--border)}
.ddm-field{margin-bottom:14px}
.ddm-field label{display:block;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}
.ddm-field label .req{color:var(--accent)}
.ddm-field input,.ddm-field select,.ddm-field textarea{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card,#fff);font-family:'Inter',sans-serif;font-size:15px;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.ddm-field input:focus,.ddm-field select:focus,.ddm-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(168,128,74,.15)}
.ddm-field input.err,.ddm-field select.err{border-color:#b3452f}
.ddm-field .hint{font-size:12px;color:var(--text-faint);margin-top:5px}
.ddm-field .msg{font-size:12px;color:#b3452f;margin-top:5px}
.ddm-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.ddm-two{grid-template-columns:1fr}}
.ddm-check{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--text-muted);line-height:1.5;margin:14px 0}
.ddm-check input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--accent)}
.ddm-check a{color:var(--accent);text-decoration:underline}

/* --- volby dopravy / platby --- */
.ddm-opt{border:1px solid var(--border);border-radius:14px;padding:16px 18px;margin-bottom:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--bg-card,#fff);transition:border-color .2s,box-shadow .2s;position:relative}
.ddm-opt:hover{border-color:var(--accent-light)}
.ddm-opt.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.ddm-opt b{font-family:'Inter',sans-serif;font-weight:600;font-size:15px;color:var(--text)}
.ddm-opt small{display:block;color:var(--text-muted);font-size:12px;margin-top:3px;line-height:1.4}
.ddm-opt .p{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;white-space:nowrap;color:var(--text)}
.ddm-opt .p.free{color:var(--accent)}
.ddm-opt.disabled{opacity:.45;cursor:not-allowed}
.ddm-opt input[type=radio]{position:absolute;opacity:0;pointer-events:none}

/* --- souhrn objednávky --- */
.ddm-sum{background:var(--bg-card,#fff);border:1px solid var(--border);border-radius:16px;padding:22px}
.ddm-sum .l{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:var(--text-muted);padding:6px 0}
.ddm-sum .l b{color:var(--text);font-weight:600;white-space:nowrap}
.ddm-sum .g{display:flex;justify-content:space-between;font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--text);margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.ddm-sticky{position:sticky;top:96px}
@media(max-width:900px){.ddm-sticky{position:static}}

/* --- upozornění --- */
.ddm-alert{border-radius:14px;padding:16px 18px;font-size:14px;line-height:1.5;border:1px solid var(--border);background:var(--bg-alt)}
.ddm-alert.err{border-color:#b3452f;background:rgba(179,69,47,.08);color:var(--text)}
.ddm-alert.ok{border-color:#3d7a3d;background:rgba(61,122,61,.08)}

/* --- štítky --- */
.ddm-badge{display:inline-block;padding:5px 12px;font-family:'Inter',sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;border-radius:999px;background:var(--accent);color:#fff;font-weight:600}
.ddm-badge.soft{background:var(--bg-alt);color:var(--accent)}

/* --- dlouhé texty (podmínky, GDPR, legenda) --- */
.ddm-prose{max-width:760px;margin:0 auto;font-weight:300;line-height:1.75;color:var(--text)}
.ddm-prose h2{font-family:'Playfair Display',serif;font-weight:500;font-size:30px;margin:44px 0 14px;line-height:1.2}
.ddm-prose h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:22px;margin:30px 0 10px}
.ddm-prose p{margin:0 0 16px}
.ddm-prose ol,.ddm-prose ul{margin:0 0 16px 22px}
.ddm-prose li{margin-bottom:8px}
.ddm-prose a{color:var(--accent);text-decoration:underline}
.ddm-prose .lead{font-family:'Cormorant Garamond',serif;font-size:24px;line-height:1.4;color:var(--text-muted);margin-bottom:30px}
.ddm-prose table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:15px}
.ddm-prose td,.ddm-prose th{padding:12px 10px;border-bottom:1px solid var(--border);text-align:left}
.ddm-prose th{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:500}

/* --- patička: právní odkazy --- */
.ddm-legal-links{display:flex;flex-wrap:wrap;gap:8px 26px;justify-content:center;padding-top:28px;margin-top:28px;border-top:1px solid var(--border);font-family:'Inter',sans-serif;font-size:12px;letter-spacing:.06em}
.ddm-legal-links a{color:var(--text-muted);text-decoration:none;transition:color .2s}
.ddm-legal-links a:hover{color:var(--accent)}

/* --- QR / platební údaje --- */
.ddm-pay{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center;background:var(--bg-card,#fff);border:1px solid var(--border);border-radius:18px;padding:26px}
.ddm-pay .qr{width:200px;height:200px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:center}
.ddm-pay .qr canvas,.ddm-pay .qr img,.ddm-pay .qr svg{width:100%;height:100%}
.ddm-pay dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0;font-size:15px}
.ddm-pay dt{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);align-self:center}
.ddm-pay dd{margin:0;font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600}
@media(max-width:640px){.ddm-pay{grid-template-columns:1fr;text-align:center}.ddm-pay .qr{margin:0 auto}.ddm-pay dl{text-align:left}}

/* --- detail produktu --- */
.ddm-detail{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:start}
@media(max-width:900px){.ddm-detail{grid-template-columns:1fr;gap:32px}}
.ddm-gallery .main{background:#fff;border:1px solid var(--border);border-radius:24px;padding:36px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.ddm-gallery .main img{max-width:78%;max-height:78%;object-fit:contain}
.ddm-gallery .thumbs{display:flex;gap:10px;margin-top:12px}
.ddm-gallery .thumbs button{width:64px;height:64px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:6px;cursor:pointer}
.ddm-gallery .thumbs button.on{border-color:var(--accent)}
.ddm-gallery .thumbs img{width:100%;height:100%;object-fit:contain}
.ddm-price{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:500;line-height:1}
.ddm-price small{font-size:20px;color:var(--text-muted);margin-left:6px}
.ddm-price .old{font-size:22px;color:var(--text-faint);text-decoration:line-through;margin-left:14px}
.ddm-variants{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 6px}
.ddm-variants a{display:inline-flex;flex-direction:column;align-items:center;padding:10px 16px;border:1px solid var(--border);border-radius:12px;text-decoration:none;color:var(--text);background:var(--bg-card,#fff);min-width:92px;transition:border-color .2s}
.ddm-variants a.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.ddm-variants a b{font-family:'Cormorant Garamond',serif;font-size:18px}
.ddm-variants a small{font-size:11px;color:var(--text-muted)}
.ddm-usp{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.ddm-usp div{border:1px solid var(--border);border-radius:14px;padding:14px;font-size:13px;color:var(--text-muted);line-height:1.45}
.ddm-usp b{display:block;color:var(--text);font-family:'Cormorant Garamond',serif;font-size:17px;margin-bottom:2px}
@media(max-width:560px){.ddm-usp{grid-template-columns:1fr}}

/* --- admin --- */
.ddm-table{width:100%;border-collapse:collapse;font-size:15px}
.ddm-table th{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:500;text-align:left;padding:12px 12px;border-bottom:1px solid var(--border)}
.ddm-table td{padding:14px 12px;border-bottom:1px solid var(--border);vertical-align:top}
.ddm-table tr:hover td{background:var(--bg-alt)}
.ddm-status{display:inline-block;padding:4px 10px;border-radius:999px;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.ddm-status.nova{background:rgba(168,128,74,.15);color:var(--accent)}
.ddm-status.zaplaceno{background:rgba(61,122,61,.15);color:#3d7a3d}
.ddm-status.odeslano{background:rgba(44,24,16,.1);color:var(--text)}
.ddm-status.hotovo{background:rgba(44,24,16,.06);color:var(--text-muted)}
.ddm-status.storno{background:rgba(179,69,47,.12);color:#b3452f}

/* --- tisk (dodací list / objednávka) --- */
@media print{
  nav,footer,.ddm-ov,.ddm-panel,#ddmToast,.ddm-legal-links,.no-print,[id^="cookie"],.cookie-bar{display:none!important}
  body{background:#fff!important;color:#000!important}
  .ddm-print{padding:0}
}

/* --- drobnosti --- */
.ddm-muted{color:var(--text-muted)} .ddm-faint{color:var(--text-faint)}
.ddm-center{text-align:center}
.ddm-hidden{display:none!important}
.ddm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
