/* Éléments communs des démos KLÉWEB (barre démo, toast, modale, tiroir panier) */
#kw-bar{position:fixed;left:16px;bottom:16px;z-index:90;display:flex;align-items:center;gap:4px;background:#111;color:#fff;border-radius:999px;padding:6px 6px 6px 14px;font:600 13px/1 system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.25)}
#kw-bar b{margin-right:6px;color:#FF7A45}#kw-bar a{color:#ddd;text-decoration:none;padding:8px 11px;border-radius:999px}#kw-bar a.on,#kw-bar a:hover{background:#fff;color:#111}
#kw-bar button{background:none;border:0;color:#ddd;font-size:16px;width:32px;height:32px;border-radius:50%;cursor:pointer}#kw-bar button:hover{background:#333}
#kw-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);opacity:0;z-index:100;background:#111;color:#fff;padding:13px 20px;border-radius:12px;font:600 14px system-ui,sans-serif;transition:.25s;pointer-events:none;max-width:90vw;text-align:center}
#kw-toast.show{opacity:1;transform:translate(-50%,0)}
#kw-modal{position:fixed;inset:0;z-index:95;background:rgba(0,0,0,.45);display:grid;place-items:center;padding:16px}
.kw-box{background:#fff;color:#111;border-radius:20px;padding:30px;width:100%;max-width:460px;position:relative;font-family:system-ui,sans-serif;text-align:left}
.kw-box h3{margin:0 0 10px;font-size:22px}.kw-box p{margin:0 0 12px;line-height:1.5}.kw-small{font-size:13px;color:#666}
.kw-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:0;background:#f1f1f1;font-size:20px;cursor:pointer;color:#111}
.kw-ok{width:54px;height:54px;border-radius:50%;background:var(--kw-acc,#111);color:var(--kw-on,#fff);display:grid;place-items:center;font-size:26px;font-weight:700;margin-bottom:14px}
.kw-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.kw-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--kw-acc,#111);color:var(--kw-on,#fff);border:0;border-radius:999px;padding:12px 20px;font:700 14px system-ui,sans-serif;text-decoration:none;cursor:pointer}
.kw-btn.kw-ghost{background:#f1f1f1;color:#111}
.kw-form{display:flex;flex-direction:column;gap:12px}.kw-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}
.kw-form input,.kw-form select,.kw-form textarea{font:15px system-ui,sans-serif;padding:11px 12px;border:1.5px solid #ccc;border-radius:10px;width:100%;box-sizing:border-box}
.kw-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#kw-drawer{position:fixed;inset:0;z-index:92;background:rgba(0,0,0,0);pointer-events:none;transition:.25s}
#kw-drawer.open{background:rgba(0,0,0,.45);pointer-events:auto}
.kw-dr-in{position:absolute;right:0;top:0;bottom:0;width:min(420px,100vw);background:var(--kw-dbg,#fff);color:var(--kw-dtx,#111);transform:translateX(100%);transition:.3s;display:flex;flex-direction:column}
#kw-drawer.open .kw-dr-in{transform:none}
.kw-dr-h{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid rgba(127,127,127,.25)}.kw-dr-h b{font-size:20px}.kw-dr-h .kw-x{position:static}
.kw-dr-lines{flex:1;overflow:auto;padding:8px 24px}
.kw-dr-f{padding:18px 24px 24px;border-top:1px solid rgba(127,127,127,.25);display:flex;flex-direction:column;gap:6px}
.kw-line{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(127,127,127,.2)}
.kw-li-img{width:56px;height:56px;border-radius:12px;background:rgba(127,127,127,.15);display:grid;place-items:center;flex:none}.kw-li-img svg{width:48px;height:48px}
.kw-li-t{flex:1;min-width:0}.kw-li-t b{display:block}.kw-li-t small{opacity:.65}
.kw-qty{display:flex;align-items:center;gap:6px;border:1px solid rgba(127,127,127,.4);border-radius:999px;padding:2px}
.kw-qty button{width:28px;height:28px;border-radius:50%;border:0;background:none;color:inherit;font-size:16px;cursor:pointer}.kw-qty button:hover{background:rgba(127,127,127,.2)}
.kw-qty span{min-width:16px;text-align:center;font-weight:700}.kw-li-p{min-width:64px;text-align:right}
.kw-promo{display:flex;gap:6px}.kw-promo input{flex:1;font:inherit;padding:11px 12px;border:1px solid rgba(127,127,127,.5);border-radius:10px;background:transparent;color:inherit;text-transform:uppercase}
.kw-promo button{font:inherit;font-weight:700;border:0;border-radius:10px;padding:0 16px;background:var(--kw-acc,#111);color:var(--kw-on,#fff);cursor:pointer}
[data-promo-msg]{font-size:13px;min-height:16px}[data-promo-msg].ok{color:#1E8E3E}[data-promo-msg].err{color:#C0392B}
.kw-row{display:flex;justify-content:space-between;padding:4px 0}.kw-row[hidden]{display:none}.kw-tot{font-size:20px;font-weight:700;padding-top:10px}
.kw-pay{margin-top:10px;border:0;border-radius:999px;padding:16px;font:700 16px inherit;font-family:inherit;background:var(--kw-acc,#111);color:var(--kw-on,#fff);cursor:pointer}
.kw-note{text-align:center;opacity:.6;font-size:12px}.kw-empty{opacity:.7;padding:20px 0}
button,[data-add],[data-choice],[data-filter],[data-check],[data-toggle],[data-acc],[data-thumb],[data-open-cart],[data-view-btn],[data-goto]{cursor:pointer}
[hidden]{display:none!important}
