:root{
    --qb-bg:#f7f8fb;--qb-card:#fff;--qb-border:#e6e8ef;--qb-text:#111827;--qb-muted:#6b7280;
    --qb-primary:#2563eb;--qb-green:#22c55e;--qb-orange:#f59e0b;--qb-red:#ef4444;--qb-radius:14px
}
*{box-sizing:border-box}
.qb-body{margin:0;background:var(--qb-bg);color:var(--qb-text);font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}
.qb-wrap{max-width:1000px;margin:28px auto;padding:0 16px}
.qb-header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.qb-title{font-size:28px;font-weight:800}
.qb-actions{display:flex;gap:10px;align-items:center}
.qb-btn{background:var(--qb-card);border:1px solid var(--qb-border);border-radius:999px;padding:8px 12px;cursor:pointer}
.qb-btn--green{background:var(--qb-green);border-color:var(--qb-green);color:#fff;font-weight:700}
.qb-btn--green:hover:not(:disabled){background:#16a34a;border-color:#16a34a}
.qb-btn--green:focus-visible{outline:3px solid rgba(34,197,94,.3);outline-offset:2px}
.qb-btn:disabled{opacity:.5;cursor:not-allowed}
.qb-badge{background:var(--qb-card);border:1px solid var(--qb-border);border-radius:999px;padding:6px 10px}
.qb-card{background:var(--qb-card);border:1px solid var(--qb-border);border-radius:var(--qb-radius);box-shadow:0 2px 12px rgba(16,24,40,.04);margin-top:14px}
.qb-card-h{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--qb-border)}
.qb-card-title{font-weight:700}
.qb-muted{color:var(--qb-muted);font-size:14px}
.qb-card-b{padding:16px}
.qb-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.qb-between{justify-content:space-between}
.qb-input{border:1px solid var(--qb-border);border-radius:10px;padding:8px 10px}
.qb-cal-head{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:8px;color:var(--qb-muted);font-weight:700}
.qb-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:8px}
.qb-day{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;border:1px solid var(--qb-border);border-radius:12px;background:#fff;min-height:52px}
.qb-day:hover{border-color:var(--qb-primary)}
.qb-day.qb-disabled{opacity:.35;pointer-events:none}
.qb-day-num{font-weight:800}
.qb-dot{width:10px;height:10px;border-radius:999px;display:inline-block}
.qb-green{background:var(--qb-green)}.qb-orange{background:var(--qb-orange)}.qb-red{background:var(--qb-red)}.qb-gray{background:#9ca3af}
.qb-times{display:flex;flex-wrap:wrap;gap:10px}
.qb-chip{border:1px solid var(--qb-border);border-radius:999px;padding:10px 14px;background:#fff;cursor:pointer}
.qb-chip[aria-selected="true"]{border-color:var(--qb-primary);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.qb-chip.qb-disabled{opacity:.45;pointer-events:none}
.mt-8{margin-top:8px}.mt-10{margin-top:10px}
@media (max-width:700px){ .qb-day{min-height:46px} }
/* micro transition */
.qb-fade-out{opacity:1;transition:opacity .12s ease-out;opacity:.01}
.qb-fade-in{opacity:.01;transition:opacity .18s ease-in;opacity:1}
/* Layout utils (pour book.php, sans inline styles) */
.qb-flex{display:flex}
.qb-wrap{flex-wrap:wrap}
.qb-gap-14{gap:14px}
.qb-mt-6{margin-top:6px}
.qb-mt-8{margin-top:8px}
.qb-mt-10{margin-top:10px}
.qb-mt-14{margin-top:14px}
.qb-mt-16{margin-top:16px}
.qb-col{flex:1 1 220px}
.qb-col-wide{flex:1 1 260px}
.qb-col-mid{flex:1 1 200px}
.qb-col-auto{flex:0 1 auto}
.qb-danger{color:#b91c1c}

/* --- UI tweaks (2025-08-11) --- */
.qb-card-h .qb-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.qb-unit-price{color:var(--qb-muted);font-weight:500}
.qb-input{height:40px}
.qb-sep{opacity:.5}
.qb-test-mode {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 9999;
  padding: 7px 11px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #d7264f;
  color: #fff;
  box-shadow: 0 4px 16px rgba(31, 20, 32, .22);
  font: 800 12px/1 system-ui, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  pointer-events: none;
}

