/* Commande à table (table.js) : couleurs du site (variables du plugin Commande et du thème), sinon valeurs de repli. */
.bsk-tb{--tb-accent:var(--bs-orange,#d34f28);--tb-button:var(--bs-button-orange,#c54823);--tb-dark:var(--bs-orange-dark,#ae3919);--tb-ink:var(--bs-ink,#292b2d);--tb-cream:var(--bs-cream,#fff8ee);--tb-line:#e8decf;--tb-muted:#6c6258;font-family:var(--bs-body-font,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif);color:var(--tb-ink);box-sizing:border-box}
.bsk-tb *,.bsk-tb *::before,.bsk-tb *::after{box-sizing:border-box}
.bsk-tb button{font:inherit;cursor:pointer}
.bsk-tb button:disabled{cursor:default;opacity:.55}
.bsk-tb :focus-visible{outline:3px solid #245f88;outline-offset:2px}

/* Bandeau en haut de page */
.bsk-tb-banner{position:relative;z-index:9997;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px 16px;background:var(--tb-ink);color:#fff;text-align:center;font-size:.9375rem;line-height:1.45}
.bsk-tb-banner[hidden]{display:none}
.bsk-tb-banner strong{font-weight:800}
.bsk-tb-banner button{color:#fff;background:transparent;border:1.5px solid #fff9;border-radius:30px;padding:5px 14px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}

/* Pastille flottante (en bas à gauche ; au-dessus du bouton panier sur téléphone) */
.bsk-tb-chip{position:fixed;z-index:1000;left:24px;bottom:24px;display:flex;align-items:center;gap:8px;padding:12px 18px;border:0;border-radius:30px;background:#fff;color:var(--tb-ink);box-shadow:0 5px 25px #0003;font-size:.9375rem;font-weight:700}
.bsk-tb-chip[hidden]{display:none}
.bsk-tb-chip-icon{font-size:1.15rem;line-height:1}
.bsk-tb-dot{padding:2px 9px;border-radius:20px;background:var(--tb-accent);color:#fff;font-size:.75rem;font-weight:800}
.bsk-tb-dot.is-soft{background:#e5eef5;color:#2d4a63}
.bsk-tb-dot.is-ready{background:#2f662d;animation:bsk-tb-pulse 1.6s ease-in-out infinite}
@keyframes bsk-tb-pulse{50%{box-shadow:0 0 0 6px #2f662d33}}
@media(max-width:600px){.bsk-tb-chip{left:12px;bottom:calc(max(12px,env(safe-area-inset-bottom)) + 66px);padding:10px 15px;font-size:.875rem}body.bs-commande{padding-bottom:140px}}

/* Fenêtres : panneau de la table et validation */
.bsk-tb-panel,.bsk-tb-check{border:0;padding:0;width:min(520px,100vw - 24px);max-height:min(92vh,900px);border-radius:22px;background:var(--tb-cream);box-shadow:0 24px 70px #0006;overflow:hidden;display:none;flex-direction:column}
.bsk-tb-panel[open],.bsk-tb-check[open]{display:flex;animation:bsk-tb-in .3s cubic-bezier(.2,1.2,.4,1) both}
.bsk-tb-panel::backdrop,.bsk-tb-check::backdrop{background:#292b2dab;backdrop-filter:blur(3px)}
@keyframes bsk-tb-in{from{transform:translateY(20px);opacity:0}}
@media(max-width:600px){.bsk-tb-panel,.bsk-tb-check{width:100vw;max-width:100vw;max-height:94dvh;margin:auto 0 0;border-radius:22px 22px 0 0}}
.bsk-tb-head{flex:0 0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 14px;border-bottom:1px solid var(--tb-line)}
.bsk-tb-head h2{margin:2px 0 0;font:400 1.75rem/1.2 var(--bs-heading-font,Georgia,serif);color:var(--tb-dark)}
.bsk-tb-eyebrow{margin:0;color:var(--tb-muted);font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em}
.bsk-tb-close{flex:0 0 42px;width:42px;height:42px;border:1px solid #ddcfbd;border-radius:50%;background:#fffaf3;font-size:1.6rem!important;line-height:1;color:inherit}
.bsk-tb-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:8px 22px 22px}
.bsk-tb-body h3{margin:22px 0 10px;font-size:.8125rem;text-transform:uppercase;letter-spacing:.07em;color:var(--tb-muted)}
.bsk-tb-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.bsk-tb-actions button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;border:1.5px solid var(--tb-line);border-radius:16px;background:#fff;color:inherit;font-weight:700;font-size:.9375rem}
.bsk-tb-actions button span{font-size:1.5rem}
.bsk-tb-actions button[aria-pressed="true"]{border-color:var(--tb-accent);background:#fff1e8}
.bsk-tb-callstate{margin:10px 0 0;padding:10px 14px;border-radius:12px;background:#fff1e8;color:var(--tb-dark);font-weight:600}
.bsk-tb-callstate.is-seen{background:#e7f2e5;color:#2f662d}
.bsk-tb-empty{margin:0 0 12px;color:var(--tb-muted)}
.bsk-tb-order{margin:0 0 10px;padding:14px 16px;border:1px solid var(--tb-line);border-radius:16px;background:#fff}
.bsk-tb-order.is-off{opacity:.6}
.bsk-tb-order-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bsk-tb-pill{padding:3px 10px;border-radius:20px;background:#e5eef5;color:#2d4a63;font-size:.8125rem;font-weight:700}
.is-wait .bsk-tb-pill,.is-pay .bsk-tb-pill{background:#fff1d6;color:#8a5200}
.is-ready .bsk-tb-pill{background:#2f662d;color:#fff}
.is-done .bsk-tb-pill{background:#e7f2e5;color:#2f662d}
.is-off .bsk-tb-pill{background:#eee;color:#555}
.bsk-tb-order ul{margin:8px 0;padding:0 0 0 18px;font-size:.9375rem}
.bsk-tb-order-sum{display:flex;justify-content:space-between;margin:0;color:var(--tb-muted);font-size:.875rem}
.bsk-tb-order-sum strong{color:var(--tb-ink)}
.bsk-tb-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}
.bsk-tb-sums{margin:0;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--tb-line)}
.bsk-tb-sums div{display:flex;justify-content:space-between;padding:3px 0}
.bsk-tb-sums dt,.bsk-tb-sums dd{margin:0}
.bsk-tb-due{margin-top:6px;padding-top:9px!important;border-top:1px solid var(--tb-line);font-size:1.125rem;font-weight:800}
.bsk-tb-pay{display:grid;gap:10px;margin-top:14px}
.bsk-tb-split{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:6px}
.bsk-tb-split button{width:38px;height:38px;border:1.5px solid var(--tb-line);border-radius:50%;background:#fff;color:inherit;font-size:1.2rem;font-weight:700}
.bsk-tb-done{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#e7f2e5;color:#2f662d;font-weight:700}
.bsk-tb-note{margin:10px 0 0;color:var(--tb-muted);font-size:.8125rem}
.bsk-tb-warn{margin:12px 0 0;padding:10px 14px;border-radius:12px;background:#fff1d6;color:#7a4a00;font-weight:600}
.bsk-tb-error{margin:12px 0 0;padding:10px 14px;border-radius:12px;background:#fde8e4;color:#9b2c16;font-weight:600}
.bsk-tb-leave{margin:22px 0 0;text-align:center}
.bsk-tb-primary,.bsk-tb-secondary{display:block;width:100%;padding:15px 18px;border-radius:30px;font-weight:750;font-size:1rem;text-align:center}
.bsk-tb-primary{border:0;background:var(--tb-button);color:#fff}
.bsk-tb-secondary{border:1.5px solid var(--tb-ink);background:transparent;color:var(--tb-ink)}
.bsk-tb-row .bsk-tb-primary{width:auto;padding:10px 22px}
.bsk-tb-link{border:0;background:none;padding:4px 0;color:var(--tb-dark);font-weight:700;text-decoration:underline;font-size:.875rem}
.bsk-tb-tips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 4px}
.bsk-tb-tips span{font-weight:700;margin-right:4px}
.bsk-tb-tips button{padding:7px 13px;border:1.5px solid var(--tb-line);border-radius:20px;background:#fff;color:inherit;font-size:.875rem;font-weight:700}
.bsk-tb-tips button[aria-pressed="true"]{border-color:var(--tb-accent);background:var(--tb-accent);color:#fff}

/* Validation */
.bsk-tb-sum{margin:14px 0 4px;font-size:1.0625rem}
.bsk-tb-field{display:block;margin:14px 0 0}
.bsk-tb-field>span{display:block;margin-bottom:6px;font-weight:700}
.bsk-tb-field small{font-weight:400;color:var(--tb-muted)}
.bsk-tb-field input,.bsk-tb-field textarea{width:100%;padding:12px 14px;border:1.5px solid #d9ccba;border-radius:12px;background:#fff;color:inherit;font:inherit;font-size:1rem}
.bsk-tb-modes{margin:16px 0 0;padding:0;border:0;display:grid;gap:8px}
.bsk-tb-modes legend{padding:0;margin-bottom:8px;font-weight:700}
.bsk-tb-modes label{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1.5px solid var(--tb-line);border-radius:14px;background:#fff;cursor:pointer}
.bsk-tb-modes label:has(input:checked){border-color:var(--tb-accent);background:#fff6f0}
.bsk-tb-modes input{margin-top:3px;accent-color:var(--tb-accent)}
.bsk-tb-modes span{display:grid}
.bsk-tb-modes small{color:var(--tb-muted)}
.bsk-tb-check form>.bsk-tb-primary{margin-top:20px}

/* Message bref */
.bsk-tb-toast{position:fixed;left:16px;right:16px;top:16px;z-index:99999;margin:0 auto;width:fit-content;max-width:560px;padding:14px 18px;border-radius:16px;background:#2f662d;color:#fff;font-weight:600;font-size:.9375rem;line-height:1.4;box-shadow:0 12px 40px #0004;animation:bsk-tb-in .3s both}
.bsk-tb-toast.is-warn{background:var(--tb-ink)}
dialog.bsk-tb .bsk-tb-toast{top:auto;bottom:max(16px,env(safe-area-inset-bottom))}
@media(prefers-reduced-motion:reduce){.bsk-tb-panel[open],.bsk-tb-check[open],.bsk-tb-toast,.bsk-tb-dot.is-ready{animation:none}}
