.bl-shell { color: var(--text, #142131); padding: 12px 0; }
.bl-heading,.bl-tabs,.bl-fields,.bl-ingredient,.bl-metrics { display: flex; gap: 12px; flex-wrap: wrap; align-items: end; }
.bl-heading { justify-content: space-between; align-items: center; }.bl-heading h2 { margin: 0; font-size: 1.2rem; }
.bl-shell button,.bl-shell input,.bl-shell select { min-height: 44px; font: inherit; border: 1px solid #bac6d1; border-radius: 8px; padding: 10px 12px; }
.bl-shell button { cursor: pointer; background: #fff; }.bl-shell button:disabled { opacity: .5; cursor: not-allowed; }
.bl-tabs { margin: 14px 0; }.bl-tabs .is-active,.bl-products .is-selected { background: #e1f5ef; border-color: #158562; color: #12563f; }
.bl-layout { display: grid; grid-template-columns: minmax(220px, 32%) 1fr; gap: 20px; }.bl-layout aside>input { width: 100%; box-sizing: border-box; }
.bl-products { display: grid; gap: 7px; max-height: 55vh; overflow: auto; margin-top: 9px; }.bl-products button { display: grid; gap: 4px; text-align: left; }.bl-products small { color: #637487; }
.bl-form { background: #fff; border: 1px solid #d6dee5; border-radius: 12px; padding: 18px; }.bl-form h3 { margin-top: 0; }.bl-fields label { display: grid; gap: 6px; flex: 1 1 180px; }.bl-fields input { width: 100%; box-sizing: border-box; }.bl-fields p,.bl-fields .bl-confirm,.bl-ingredients { flex-basis: 100%; }
.bl-fields .bl-confirm { display: flex; align-items: center; }.bl-confirm input { width: 24px; flex: 0 0 24px; }.bl-form>button[type=submit] { margin-top: 18px; background: #116e52; color: #fff; }
.bl-ingredients { display: grid; gap: 12px; }.bl-ingredient { border-bottom: 1px solid #dde4e9; padding-bottom: 12px; }.bl-ingredient label { min-width: 160px; }
.bl-help,.bl-report p { color: #576879; font-size: .9rem; line-height: 1.5; }.bl-status,.bl-pending { padding: 12px; border-radius: 8px; background: #fff4d8; border: 1px solid #e5c66d; }.bl-pending button { margin-right: 8px; }
.bl-metrics { margin: 18px 0; }.bl-metrics>div { display: grid; gap: 6px; border: 1px solid #d6dee5; border-radius: 9px; padding: 14px; flex: 1 1 150px; }.bl-metrics strong { font-size: 1.2rem; }
.bl-count-preview,.bl-conversion-preview { margin-top: 16px; padding: 14px; border: 1px solid #d6dee5; border-radius: 9px; background: #f7faf9; overflow-wrap: anywhere; }
.bl-count-preview h4,.bl-conversion-preview h4 { margin: 0 0 12px; }.bl-count-preview dl,.bl-conversion-preview dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0; }
.bl-count-preview dt,.bl-conversion-preview dt { color: #576879; font-size: .9rem; }.bl-count-preview dd,.bl-conversion-preview dd { margin: 6px 0 0; font-weight: 600; line-height: 1.5; }.bl-count-preview dd small,.bl-conversion-preview dd small { font-weight: 400; }
.bl-conversion-confirm { margin-top: 16px; }.bl-conversion-confirm .bl-confirm { align-items: flex-start; line-height: 1.5; }.bl-conversion-confirm input { margin: 0; }
.bl-fields select { min-width: 0; max-width: 100%; width: 100%; box-sizing: border-box; }
@media (max-width: 720px) { .bl-count-preview dl,.bl-conversion-preview dl { grid-template-columns: minmax(0, 1fr); }.bl-count-preview,.bl-conversion-preview { padding: 12px; } }
.bl-table-wrap { overflow-x: auto; }.bl-shell table { border-collapse: collapse; width: 100%; }.bl-shell th,.bl-shell td { text-align: left; padding: 10px; border-bottom: 1px solid #d6dee5; white-space: nowrap; }.bl-shell th { background: #f1f5f8; }
.bq-pour-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5px; padding: 7px; }.bq-pour-options button { min-height: 44px; padding: 6px; border-radius: 7px; }.bq-pour-options button span { display: block; font-size: .85rem; }.bq-liquor-summary { padding: 8px; display: grid; gap: 4px; }.bq-liquor-summary .bq-product-image { width: 100%; }
.bq-shell .bq-cart-line > div:first-child > small { display: block; margin: 4px 0 2px; line-height: 1.35; color: #576879; }
@media (max-width: 720px) { .bl-layout { grid-template-columns: 1fr; }.bl-products { max-height: 220px; grid-template-columns: repeat(2,minmax(0,1fr)); }.bl-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }.bl-form { padding: 12px; }.bl-ingredient label { flex-basis: 100%; }.bl-metrics>div { flex-basis: 120px; } }
