.blend-sensei-box{
  max-width:980px;
  margin:14px auto;
  padding:16px;
  border:1px solid #d7ece9;
  border-radius:16px;
  background:#f8fcfc;
  box-shadow:0 8px 24px rgba(0,137,123,.06);
  color:#243b3a;
}
.blend-sensei-box *{box-sizing:border-box}
.bs-form-head{margin-bottom:10px}
.blend-sensei-box h3{margin:0 0 8px;font-size:1.35rem;color:#00695c;border-bottom:2px solid #80cbc4;padding-bottom:8px}
.blend-sensei-help{margin:6px 0 10px;font-size:.9em;color:#55706d}.bs-compact-help{margin-top:0}
.bs-accordion{display:grid;gap:10px}.blend-sensei-group{margin:0;padding:0;border:1px solid #d7ece9;border-radius:14px;background:#fff;overflow:hidden}.bs-accordion-title{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border:0;background:#e8f7f5;color:#00695c;font-weight:700;font-size:1.02rem;cursor:pointer;text-align:left}.bs-accordion-title:hover{background:#dcf2ef}.bs-accordion-icon{font-size:1.2rem;transition:transform .18s ease}.bs-accordion-item.is-open .bs-accordion-icon{transform:rotate(180deg)}.bs-accordion-panel{display:none;padding:8px 14px 12px}.bs-accordion-item.is-open .bs-accordion-panel{display:block}
.bs-field{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #edf3f2}.bs-field:last-child{border-bottom:none}.bs-field-label{font-weight:700;color:#243b3a}.bs-slider-row{display:grid;grid-template-columns:auto minmax(160px,1fr) auto 34px;align-items:center;gap:9px}.bs-scale-text{font-size:.78rem;color:#6a817f;white-space:nowrap}.bs-slider-value{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#00897b;color:#fff;font-size:.92rem}
.bs-concern-slider{width:100%;accent-color:#00897b;-webkit-appearance:none;appearance:none;height:24px;background:transparent;cursor:pointer;--bs-fill:0%}
.bs-concern-slider::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(to right,#00897b 0%,#00897b var(--bs-fill),#d7ece9 var(--bs-fill),#d7ece9 100%);box-shadow:inset 0 0 0 1px rgba(0,137,123,.08)}
.bs-concern-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:#00897b;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,137,123,.28)}
.bs-concern-slider::-moz-range-track{height:6px;border-radius:999px;background:#d7ece9;box-shadow:inset 0 0 0 1px rgba(0,137,123,.08)}
.bs-concern-slider::-moz-range-progress{height:6px;border-radius:999px;background:#00897b}
.bs-concern-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#00897b;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,137,123,.28)}
.bs-concern-slider:focus{outline:none}.bs-concern-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(0,137,123,.18),0 2px 8px rgba(0,137,123,.28)}.bs-flavor-choices{display:flex;gap:6px;flex-wrap:wrap}.bs-flavor-choices label{cursor:pointer}.bs-flavor-choices input{position:absolute;opacity:0}.bs-flavor-choices span{display:inline-block;min-width:58px;text-align:center;padding:7px 11px;border:1px solid #cfe5e2;border-radius:999px;background:#fff;color:#355350;font-size:.92rem}.bs-flavor-choices input:checked+span{background:#00897b;border-color:#00897b;color:#fff;font-weight:700}.bs-submit,.blend-sensei-box button[type=submit]{margin-top:12px;padding:11px 24px;border:0;border-radius:999px;background:#00897b;color:#fff;font-weight:700;cursor:pointer;box-shadow:0 3px 10px rgba(0,137,123,.18)}.bs-submit:hover,.blend-sensei-box button[type=submit]:hover{background:#00796b}.blend-sensei-order{display:inline-block;margin-top:10px;padding:10px 16px;border-radius:999px;background:#00897b;color:#fff;text-decoration:none}.blend-sensei-order:hover{background:#00796b;color:#fff}
#blend-sensei-result{margin-top:14px;padding:0}#blend-sensei-result h3{border:0;margin-top:0}#blend-sensei-result ul{margin:8px 0 0 1.2em}
@media(max-width:700px){.blend-sensei-box{margin:10px auto;padding:12px;border-radius:12px}.bs-field{grid-template-columns:1fr;gap:6px;padding:10px 0}.bs-slider-row{grid-template-columns:1fr 36px}.bs-scale-text{display:none}.bs-accordion-panel{padding:8px 12px 10px}.bs-flavor-choices span{min-width:54px;padding:7px 9px}}
.bs-check-line{display:block;margin:8px 0;font-weight:700;color:#243b3a}.bs-wide-input{width:100%;max-width:520px;margin:0 0 8px;padding:9px 10px;border:1px solid #cfe5e2;border-radius:8px;background:#fff}
.bs-front-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 12px}.bs-front-check-grid label{background:#fff;border:1px solid #d8eeee;border-radius:10px;padding:8px 10px}.bs-result-card{padding:16px}.bs-herb-descriptions{margin-top:14px;border-top:1px solid #d9eeee;padding-top:12px}.bs-herb-description{background:#f8fcfc;border:1px solid #d9eeee;border-radius:10px;padding:10px 12px;margin:8px 0}.bs-herb-description p{margin:5px 0 0}.bs-safety-note{margin-top:14px;padding:12px 14px;border-left:4px solid #46b8ad;background:#f3fbfa;border-radius:8px;line-height:1.7;font-size:.95em}


/* v0.6.5: compact taste/allergy accordions */
.bs-flavor-field{padding:6px 0;grid-template-columns:120px minmax(0,1fr)}
.bs-flavor-field .bs-field-label{font-size:.95rem}
.bs-flavor-choices{gap:5px}
.bs-flavor-choices span{min-width:52px;padding:6px 10px;font-size:.88rem;line-height:1.2}
.bs-front-check-grid{gap:6px 8px}
.bs-front-check-grid label{padding:7px 9px;line-height:1.25;font-size:.92rem}
.bs-accordion-panel .bs-compact-help{margin:0 0 6px;line-height:1.55}
@media(max-width:700px){
  .bs-slider-row{grid-template-columns:minmax(0,1fr) 34px;gap:8px}.bs-concern-slider{height:26px}
  .bs-flavor-field{grid-template-columns:86px minmax(0,1fr);gap:8px;padding:7px 0}
  .bs-flavor-choices{gap:4px}.bs-flavor-choices span{min-width:48px;padding:6px 8px;font-size:.86rem}
  .bs-front-check-grid{grid-template-columns:1fr;gap:6px}.bs-front-check-grid label{padding:8px 9px}
}

/* v1.1.0: semi-order herb preferences */
.bs-herb-preference-block{padding:8px 0 16px}
.bs-herb-preference-block+.bs-herb-preference-block{border-top:1px solid #e4efed;padding-top:18px}
.bs-herb-preference-block h4{margin:0 0 8px;color:#244c44;font-size:1rem}
.bs-herb-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.bs-herb-choice-grid label{display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 10px;border:1px solid #cfe5e2;border-radius:10px;background:#fff;cursor:pointer}
.bs-herb-choice-grid label:has(input:checked){border-color:#087156;background:#edf8f4;color:#075d48;font-weight:700}
.bs-herb-choice-grid label:has(input:disabled){opacity:.45;cursor:not-allowed}
.bs-herb-choice-grid input{accent-color:#087156}
.bs-herb-choice-message{min-height:1.4em;margin:7px 0 0;color:#087156;font-size:.88rem;font-weight:700}
.bs-herb-preference-result{border-left:4px solid #2f946e;background:#f3fbf8}
@media(max-width:700px){.bs-herb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bs-herb-choice-grid label{font-size:.88rem}}

/* v0.7.8: keep the five taste questions compact and easy to compare */
.bs-flavor-field{
  grid-template-columns:140px minmax(0,1fr) !important;
}

.bs-flavor-choices{
  gap:10px !important;
}

.bs-flavor-choices span{
  min-height:42px !important;
}

@media(max-width:700px){
  .bs-flavor-field{
    grid-template-columns:1fr !important;
  }
  .bs-flavor-choices{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  .bs-flavor-choices span{
    min-height:40px !important;
    padding:7px 4px !important;
    font-size:.88rem !important;
  }
}

/* v0.7.9: safety confirmation stop message */
.bs-safety-stop{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:14px;
  margin:22px 0 0;
  padding:20px;
  border:1px solid #dfc98c;
  border-radius:16px;
  background:#fffaf0;
  color:#3d3524;
  box-shadow:0 8px 20px rgba(91,71,20,.08);
}
.bs-safety-stop-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#9a6a00;
  color:#fff;
  font-size:1.25rem;
  font-weight:800;
}
.bs-safety-stop h3{
  margin:2px 0 10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#604800 !important;
  font-size:1.15rem !important;
  line-height:1.45 !important;
}
.bs-safety-stop ul{
  margin:0 0 10px;
  padding-left:1.4em;
  font-weight:700;
}
.bs-safety-stop p{
  margin:0;
  line-height:1.75;
}

@media(max-width:600px){
  .bs-safety-stop{
    grid-template-columns:34px minmax(0,1fr);
    gap:10px;
    padding:16px 14px;
  }
  .bs-safety-stop-mark{
    width:32px;
    height:32px;
  }
}

/* v0.6.7: make flavor and allergy accordion spacing match concern fields */
.bs-flavor-field{padding:8px 0;grid-template-columns:150px minmax(0,1fr);gap:12px}
.bs-flavor-field .bs-field-label{font-size:1rem}
.bs-flavor-choices{gap:6px}
.bs-flavor-choices span{min-width:58px;padding:7px 11px;font-size:.92rem;line-height:1.25}
.bs-front-check-grid{gap:8px 12px}
.bs-front-check-grid label{padding:8px 10px;line-height:1.35;font-size:1rem}
@media(max-width:700px){
  .bs-flavor-field{grid-template-columns:1fr;gap:6px;padding:10px 0}
  .bs-flavor-choices{gap:6px}
  .bs-flavor-choices span{min-width:58px;padding:7px 10px;font-size:.92rem}
  .bs-front-check-grid{grid-template-columns:1fr;gap:8px}
  .bs-front-check-grid label{padding:10px 10px;font-size:1rem}
}


/* v0.6.8: align taste/allergy accordion spacing with concern sections */
.bs-accordion{gap:12px !important;}
.bs-accordion-title{padding:12px 14px !important;min-height:48px;}
.bs-accordion-panel{padding:10px 14px 12px !important;}
.bs-flavor-field{padding:8px 0 !important;}
.bs-front-check-grid{gap:8px 12px !important;}
.bs-front-check-grid label{padding:9px 10px !important;line-height:1.35 !important;}
@media(max-width:700px){
  .bs-accordion{gap:12px !important;}
  .bs-accordion-title{min-height:52px;padding:13px 14px !important;}
  .bs-accordion-panel{padding:10px 12px 12px !important;}
  .bs-front-check-grid{gap:8px !important;}
}
.blend-sensei-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 12px;
}

.blend-sensei-actions .blend-sensei-order,
.blend-sensei-actions .blend-sensei-another {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  margin: 0 !important;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}

.blend-sensei-actions .blend-sensei-order {
  border: 1px solid #00897b;
  background: #00897b;
  color: #fff;
}

.blend-sensei-actions .blend-sensei-another {
  border: 1px solid #00897b;
  background: #fff;
  color: #00897b;
  cursor: pointer;
}

.blend-sensei-actions .blend-sensei-another:hover {
  background: #e8f7f5;
}
.bs-flavor-chart{
  margin:16px 0 12px;
  padding:14px;
  border:1px solid #d9eeee;
  border-radius:14px;
  background:#f8fcfc;
}

.bs-flavor-chart h4{
  margin:0 0 10px;
  color:#00695c;
}

.bs-pie-wrap{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}

.bs-pie-chart{
  width:130px;
  height:130px;
  border-radius:50%;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.05);
}

.bs-flavor-chart-list{
  margin:0 !important;
  padding:0 !important;
  list-style:none;
}

.bs-flavor-chart-list li{
  display:flex;
  align-items:center;
  gap:7px;
  margin:5px 0;
}

/* v0.7.14: short description under the taste chart */
.bs-taste-summary{
  margin:14px 0 0;
  padding:10px 12px;
  border-radius:10px;
  background:#f5f8f4;
  color:#355350;
  font-size:.9rem;
  font-weight:700;
  line-height:1.65;
}

.bs-flavor-chart-list span{
  display:inline-block;
  width:12px;
  height:12px;
  border-radius:50%;
}
/* v0.7.2: botanical card UI and 3-choice buttons */
.blend-sensei-box{
  max-width:1020px !important;
  margin:18px auto !important;
  padding:28px 34px 34px !important;
  border:1px solid #e4e0d6 !important;
  border-radius:18px !important;
  background:
    radial-gradient(circle at 92% 6%, rgba(181,211,186,.28), transparent 18%),
    radial-gradient(circle at 3% 96%, rgba(181,211,186,.20), transparent 16%),
    linear-gradient(180deg,#fff,#fffefa) !important;
  box-shadow:0 12px 34px rgba(48,65,55,.11) !important;
  color:#1f2422 !important;
}

.blend-sensei-box h3{
  margin:0 0 14px !important;
  padding:0 0 12px !important;
  border-bottom:1px solid #b8c8b5 !important;
  color:#075f48 !important;
  font-size:1.65rem !important;
  font-weight:800 !important;
  letter-spacing:.03em !important;
}

.blend-sensei-help{
  margin:0 0 18px !important;
  color:#1e2824 !important;
  font-size:.98rem !important;
  line-height:1.85 !important;
}

.bs-accordion{
  display:grid !important;
  gap:12px !important;
}

.blend-sensei-group{
  border:1px solid #e1ded3 !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.94) !important;
  overflow:hidden !important;
  box-shadow:0 4px 14px rgba(37,52,43,.09) !important;
}

.bs-accordion-title{
  min-height:54px !important;
  padding:12px 18px !important;
  background:linear-gradient(90deg,#fbfcf7,#f2f7ee) !important;
  color:#075f48 !important;
  font-size:1.08rem !important;
  font-weight:800 !important;
  border:0 !important;
}

.bs-accordion-title:hover{background:linear-gradient(90deg,#f6faf1,#edf5e8) !important;}

.bs-title-left{display:inline-flex;align-items:center;gap:12px;}
.bs-title-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50%;
  border:1px solid rgba(7,95,72,.28);
  color:#0d7256;
  font-size:1rem;
  line-height:1;
}
.bs-accordion-icon{color:#075f48;font-size:1.3rem !important;}

.bs-accordion-panel{
  padding:0 18px 12px !important;
  background:#fff !important;
}

.bs-field{
  display:grid !important;
  grid-template-columns:170px minmax(0,1fr) !important;
  gap:16px !important;
  align-items:center !important;
  padding:10px 0 !important;
  border-bottom:1px solid #ebe7de !important;
}
.bs-field:last-child{border-bottom:none !important;}
.bs-field-label{color:#171b1a !important;font-weight:800 !important;font-size:1rem !important;}

.bs-segment-choices,
.bs-flavor-choices{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(130px,1fr)) !important;
  gap:14px 24px !important;
}
.bs-segment-choices label,
.bs-flavor-choices label{display:block;cursor:pointer;}
.bs-segment-choices input,
.bs-flavor-choices input{position:absolute;opacity:0;pointer-events:none;}
.bs-segment-choices span,
.bs-flavor-choices span{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  min-width:0 !important;
  width:100% !important;
  padding:7px 12px !important;
  border:1px solid #b9c8b7 !important;
  border-radius:999px !important;
  background:#fbfcf8 !important;
  color:#17211d !important;
  font-size:.96rem !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8) !important;
}
.bs-segment-choices input:checked + span,
.bs-flavor-choices input:checked + span{
  border-color:#0c6f54 !important;
  background:linear-gradient(180deg,#2f946e,#0d6f55) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.16),0 2px 8px rgba(13,111,85,.18) !important;
}
.bs-segment-choices input[value="1"]:checked + span,
.bs-flavor-choices input[value="2"]:checked + span{
  background:linear-gradient(180deg,#b7d7c6,#8fbea8) !important;
  border-color:#93b79f !important;
  color:#fff !important;
}

.bs-front-check-grid label{
  border:1px solid #d6dfd2 !important;
  border-radius:999px !important;
  background:#fbfcf8 !important;
  font-weight:700 !important;
}
.bs-front-check-grid input{accent-color:#0d7256;}

.bs-submit,.blend-sensei-box button[type=submit]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:300px !important;
  min-height:54px !important;
  margin:22px auto 0 !important;
  padding:13px 34px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#2f946e,#087156) !important;
  color:#fff !important;
  font-size:1.08rem !important;
  letter-spacing:.08em !important;
  box-shadow:0 8px 18px rgba(8,113,86,.24) !important;
}
.bs-submit:before{content:'☘';margin-right:10px;font-size:1.15em;}

#blend-sensei-result{margin-top:18px !important;}
.bs-result-card{padding:20px !important;}

@media(max-width:700px){
  .blend-sensei-box{padding:18px 14px 22px !important;border-radius:14px !important;}
  .blend-sensei-box h3{font-size:1.35rem !important;}
  .bs-field{grid-template-columns:1fr !important;gap:8px !important;padding:12px 0 !important;}
  .bs-segment-choices,.bs-flavor-choices{grid-template-columns:1fr !important;gap:7px !important;}
  .bs-submit,.blend-sensei-box button[type=submit]{min-width:0 !important;width:100% !important;}
}

/* v0.7.3: return concerns to sliders while keeping botanical UI */
.bs-concern-field .bs-slider-row{
  display:grid !important;
  grid-template-columns:auto minmax(180px,1fr) auto 38px !important;
  align-items:center !important;
  gap:12px !important;
}
.bs-concern-field .bs-scale-text{
  display:inline-block !important;
  color:#586b63 !important;
  font-size:.82rem !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}
.bs-concern-field .bs-slider-value{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:32px !important;
  height:32px !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#2f946e,#087156) !important;
  color:#fff !important;
  font-weight:800 !important;
  box-shadow:0 3px 8px rgba(8,113,86,.20) !important;
}
.bs-concern-slider{
  width:100% !important;
  accent-color:#0d7256 !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  height:28px !important;
  background:transparent !important;
  cursor:pointer !important;
  --bs-fill:0%;
}
.bs-concern-slider::-webkit-slider-runnable-track{
  height:8px !important;
  border-radius:999px !important;
  background:linear-gradient(to right,#0d7256 0%,#0d7256 var(--bs-fill),#dfe8dc var(--bs-fill),#dfe8dc 100%) !important;
  box-shadow:inset 0 0 0 1px rgba(7,95,72,.14) !important;
}
.bs-concern-slider::-webkit-slider-thumb{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:22px !important;
  height:22px !important;
  margin-top:-7px !important;
  border-radius:50% !important;
  background:#0d7256 !important;
  border:3px solid #fff !important;
  box-shadow:0 3px 9px rgba(8,113,86,.28) !important;
}
.bs-concern-slider::-moz-range-track{
  height:8px !important;
  border-radius:999px !important;
  background:#dfe8dc !important;
  box-shadow:inset 0 0 0 1px rgba(7,95,72,.14) !important;
}
.bs-concern-slider::-moz-range-progress{
  height:8px !important;
  border-radius:999px !important;
  background:#0d7256 !important;
}
.bs-concern-slider::-moz-range-thumb{
  width:16px !important;
  height:16px !important;
  border-radius:50% !important;
  background:#0d7256 !important;
  border:3px solid #fff !important;
  box-shadow:0 3px 9px rgba(8,113,86,.28) !important;
}
@media(max-width:700px){
  .bs-concern-field .bs-slider-row{
    grid-template-columns:minmax(0,1fr) 36px !important;
    gap:9px !important;
  }
  .bs-concern-field .bs-scale-text{display:none !important;}
}


/* v0.7.2: strengthen order flow */
.bs-result-card{
  border-radius:18px;
  border-color:#cfe5df;
  background:#fff;
}
.bs-order-hero{
  margin:-2px 0 14px;
  padding:18px 18px 16px;
  border:1px solid #cfe5df;
  border-radius:18px;
  background:linear-gradient(135deg,#f4fbf8 0%,#fff 62%,#eef8f3 100%);
  box-shadow:0 8px 22px rgba(0,105,92,.08);
  text-align:center;
}
.bs-order-kicker{
  margin:0 0 6px;
  color:#00695c;
  font-weight:700;
  letter-spacing:.04em;
}
.bs-order-hero h3{
  margin:0 0 8px !important;
  padding:0 !important;
  border:0 !important;
  font-size:1.35rem;
  color:#153f39;
}
.bs-order-hero h3 strong{
  display:inline-block;
  margin-left:4px;
  padding:2px 10px;
  border-radius:999px;
  background:#fff;
  color:#00695c;
  border:1px solid #b9ddd6;
}
.bs-order-lead{
  margin:0 0 13px;
  color:#486460;
  font-size:.95rem;
}
.bs-order-main-actions{
  justify-content:center;
  gap:10px;
}
.blend-sensei-actions .blend-sensei-copy,
.blend-sensei-actions .blend-sensei-order{
  min-height:48px;
  padding:13px 22px;
  font-size:1rem;
}
.blend-sensei-actions .blend-sensei-copy{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0 !important;
  border:1px solid #00695c;
  border-radius:999px;
  background:#fff;
  color:#00695c;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(0,105,92,.08);
}
.blend-sensei-actions .blend-sensei-copy:hover{
  background:#eef8f5;
}
.bs-order-main-actions .blend-sensei-order{
  background:#00796b;
  border-color:#00796b;
  box-shadow:0 6px 16px rgba(0,105,92,.22);
}
.bs-copy-message{
  min-height:1.4em;
  margin:10px 0 0;
  color:#00695c;
  font-weight:700;
  font-size:.92rem;
}
.bs-order-steps{
  margin:12px 0 16px;
  padding:13px 15px;
  border:1px solid #d9eeee;
  border-radius:14px;
  background:#f8fcfc;
}
.bs-order-steps strong{
  display:block;
  margin-bottom:6px;
  color:#00695c;
}
.bs-order-steps ol{
  display:grid;
  gap:5px;
  margin:0 0 0 1.25em;
  padding:0;
}
.bs-recipe-title{
  margin:14px 0 6px;
  color:#00695c;
}
.bs-secondary-actions{
  margin-top:14px;
}
@media(max-width:700px){
  .bs-order-hero{padding:15px 12px;}
  .bs-order-main-actions{display:grid;grid-template-columns:1fr;}
  .blend-sensei-actions .blend-sensei-copy,
  .blend-sensei-actions .blend-sensei-order,
  .blend-sensei-actions .blend-sensei-another{width:100%;}
}

/* v0.7.2: result layout - ordered flow, text-only herb descriptions */
.bs-result-layout{
  padding:22px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfffe 100%);
  border-color:#d7e8e5;
  border-radius:18px;
}

.bs-result-layout .bs-result-section,
.bs-result-layout .bs-order-button-wrap,
.bs-result-layout .bs-safety-note{
  margin:14px 0;
}

.bs-result-hero{
  text-align:center;
  padding:8px 0 16px;
}

.bs-result-hero-image{
  display:block;
  width:150px;
  height:150px;
  margin:0 auto 14px;
  border-radius:50%;
  object-fit:cover;
  object-position:center;
  box-shadow:0 8px 24px rgba(0,80,70,.12);
}

.bs-result-hero h3{
  margin:0 0 8px !important;
  padding:0 !important;
  border:0 !important;
  color:#00695c;
  font-size:1.6rem;
  line-height:1.35;
}

/* v0.7.10: communicate that this blend was composed from the answers */
.bs-result-kicker{
  margin:0 0 5px;
  color:#6f8f85;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.18em;
}

.bs-result-intro{
  max-width:620px;
  margin:0 auto 12px;
  color:#435a57;
  font-size:.95rem;
  line-height:1.75;
}

.bs-result-summary{
  max-width:620px;
  margin:0 auto 20px;
  padding:11px 16px;
  border-radius:12px;
  background:#eef7f2;
  color:#075f50;
  font-weight:800;
  line-height:1.65;
}

@media(max-width:600px){
  .bs-result-intro{
    font-size:.9rem;
  }
  .bs-result-summary{
    padding:10px 12px;
    font-size:.92rem;
  }
}

.bs-blend-label{
  margin:0;
  color:#00695c;
  font-weight:700;
  font-size:.9rem;
}

.bs-blend-number{
  margin:2px 0 10px;
  color:#00695c;
  font-size:2.3rem;
  line-height:1.1;
  font-weight:800;
  letter-spacing:.04em;
}

/* v0.7.11: blend number guidance */
.bs-blend-number-help{
  margin:0 0 11px;
  color:#526864;
  font-size:.88rem;
  line-height:1.6;
}

.bs-order-number-note{
  margin:10px 0 14px;
  padding:10px 12px;
  border-left:3px solid #16866b;
  border-radius:0 8px 8px 0;
  background:#eef7f2;
  color:#234d43;
  font-weight:700;
  line-height:1.65;
}

.blend-sensei-copy{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 15px;
  border:1px solid #00897b;
  border-radius:8px;
  background:#fff;
  color:#00695c;
  font-weight:700;
  cursor:pointer;
}

.blend-sensei-copy:hover{
  background:#e8f7f5;
}

.bs-copy-message{
  min-height:1.4em;
  margin:8px 0 0;
  color:#55706d;
  font-size:.88rem;
}

.bs-order-button-wrap{
  padding:14px 16px;
  border:1px dashed #d7e8e5;
  border-radius:14px;
  text-align:center;
  background:#fff;
}

.bs-large-order-button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:min(100%,620px);
  min-height:54px;
  margin:0 !important;
  padding:14px 24px !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,#00897b 0%,#00695c 100%) !important;
  color:#fff !important;
  font-size:1.12rem;
  font-weight:800;
  box-shadow:0 8px 20px rgba(0,105,92,.18);
}

.bs-large-order-button::before{
  content:'🛒';
  margin-right:10px;
  font-size:1.25em;
}

.bs-large-order-button::after{
  content:'›';
  margin-left:14px;
  font-size:1.4em;
  line-height:1;
}

.bs-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.bs-result-section h4{
  margin:0 0 4px;
  color:#00695c;
  font-size:1.12rem;
  line-height:1.35;
}

.bs-section-note{
  margin:0;
  color:#55706d;
  font-size:.88rem;
  line-height:1.55;
}

.bs-blend-content{
  padding:14px 16px;
  border:1px solid #d7e8e5;
  border-radius:14px;
  background:#fff;
}

.bs-recipe-table{
  width:100%;
  border-collapse:collapse;
  margin:0;
  table-layout:fixed;
}

.bs-recipe-table td{
  padding:8px 10px;
  border-bottom:1px dashed #e4efed;
  vertical-align:middle;
}

.bs-recipe-table tr:last-child td{
  border-bottom:0;
}

.bs-herb-name{
  width:78%;
  color:#243b3a;
}

.bs-herb-title{
  display:block;
  color:#243b3a;
  font-weight:800;
}

.bs-herb-reason{
  margin:5px 0 0;
  color:#526864;
  font-size:.84rem;
  font-weight:400;
  line-height:1.65;
}

.bs-herb-reason span{
  display:inline-block;
  margin:0 7px 2px 0;
  padding:2px 7px;
  border-radius:999px;
  background:#eef7f2;
  color:#087156;
  font-size:.74rem;
  font-weight:800;
  line-height:1.45;
}

.bs-herb-fraction{
  width:22%;
  text-align:center;
  color:#243b3a;
  font-weight:700;
  white-space:nowrap;
}

@media(max-width:600px){
  .bs-recipe-table td{
    padding:10px 7px;
  }
  .bs-herb-name{
    width:80%;
  }
  .bs-herb-fraction{
    width:20%;
    vertical-align:top;
    padding-top:12px;
  }
  .bs-herb-reason{
    font-size:.8rem;
  }
}

.bs-leaf{
  display:inline-block;
  margin-right:8px;
  color:#2e7d32;
  font-size:.72rem;
  transform:rotate(45deg);
}

.bs-result-two-column{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  align-items:stretch;
}

.bs-result-two-column .bs-flavor-chart,
.bs-result-two-column .bs-order-steps{
  margin:0;
}

.bs-flavor-chart{
  padding:16px !important;
  border:1px solid #d7e8e5 !important;
  border-radius:14px !important;
  background:#fff !important;
}

.bs-pie-wrap{
  align-items:center;
  gap:18px;
}

.bs-pie-chart{
  width:150px;
  height:150px;
  flex:0 0 150px;
}

.bs-flavor-chart-list{
  flex:1 1 180px;
}

.bs-flavor-chart-list li{
  display:grid !important;
  grid-template-columns:14px minmax(0,1fr) auto;
  gap:8px !important;
  margin:7px 0 !important;
  align-items:center;
}

.bs-flavor-chart-list em{
  font-style:normal;
  font-weight:700;
  color:#243b3a;
}

.bs-order-steps{
  padding:16px;
  border:1px solid #d7e8e5;
  border-radius:14px;
  background:#fff;
}

.bs-order-steps ol{
  margin:12px 0 0;
  padding:0;
  list-style:none;
  counter-reset:bs-step;
}

.bs-order-steps li{
  counter-increment:bs-step;
  position:relative;
  padding:0 0 12px 42px;
  min-height:34px;
}

.bs-order-steps li:last-child{
  padding-bottom:0;
}

.bs-order-steps li::before{
  content:counter(bs-step);
  position:absolute;
  left:0;
  top:0;
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:#00897b;
  color:#fff;
  font-weight:800;
}

.bs-order-steps li strong{
  display:block;
  color:#00695c;
  line-height:1.4;
}

.bs-order-steps li span{
  display:block;
  color:#55706d;
  font-size:.9rem;
  line-height:1.45;
}

.bs-safety-note{
  padding:14px 16px !important;
  border:1px solid #f1d49c !important;
  border-left:4px solid #d9981f !important;
  border-radius:12px !important;
  background:#fffaf0 !important;
  color:#5a421c;
}

.bs-safety-note strong{
  color:#9a6a00;
  font-size:1.04rem;
}

/* v0.7.15: show the safety-check result separately from the general notice */
.bs-safety-result{
  padding:15px 16px;
  border:1px solid #cfe3dc;
  border-radius:14px;
  background:#f7fbf9;
}

.bs-safety-result h4{
  margin:0 0 8px;
  color:#075f50;
}

.bs-safety-result p{
  margin:0;
  color:#355350;
  font-weight:700;
  line-height:1.7;
}

/* v0.7.17: make the delivered product and price clear before ordering */
.bs-result-product{
  display:grid;
  grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr);
  gap:18px;
  align-items:center;
  padding:14px;
  border:1px solid #d7e8e5;
  border-radius:14px;
  background:#f8fcfa;
}

.bs-result-product-image{
  display:block;
  width:100%;
  max-width:250px;
  aspect-ratio:9/16;
  margin:0 auto;
  object-fit:contain;
  border-radius:10px;
}

.bs-result-product-copy{
  text-align:center;
}

.bs-result-product-label{
  margin:0 0 5px;
  color:#55706d;
  font-size:.82rem;
}

.bs-result-product-price{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:3px;
  margin:9px 0 0;
  color:#00695c;
}

.bs-result-product-price strong{
  font-size:1.75rem;
  line-height:1;
}

.bs-result-product-price span,
.bs-result-product-shipping{
  font-size:.82rem;
}

.bs-result-product-shipping{
  margin:3px 0 6px;
  color:#55706d;
}

.bs-result-product .bs-order-button-wrap{
  margin:8px 0 0;
  padding:0;
  border:0;
  background:transparent;
}

.bs-order-unavailable{
  margin:10px 0;
  padding:11px 12px;
  border:1px solid #d7e8e5;
  border-radius:10px;
  background:#fff;
  color:#55706d;
  font-weight:700;
}

@media(max-width:600px){
  .bs-result-product{
    grid-template-columns:1fr;
    gap:12px;
  }
}

.bs-secondary-actions{
  justify-content:center;
  margin-top:16px;
}

@media(max-width:800px){
  .bs-result-layout{padding:14px !important;}
  .bs-result-hero-image{width:120px;height:120px;}
  .bs-result-hero h3{
    font-size:clamp(1rem,4.2vw,1.18rem);
    white-space:nowrap;
  }
  .bs-blend-number{font-size:2rem;}
  .bs-section-head{display:block;}
  .bs-result-two-column{grid-template-columns:1fr;}
  .bs-large-order-button{font-size:1rem;min-height:50px;}
  .bs-pie-chart{width:130px;height:130px;flex-basis:130px;}
}

/* v0.7.6: HERB ME introduction heading (reset theme heading decorations) */
.blend-sensei-box .bs-service-intro .bs-service-intro-copy h2#bs-service-intro-title{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#075f50 !important;
  font-size:clamp(25px,4vw,38px) !important;
  font-weight:700 !important;
  line-height:1.45 !important;
  letter-spacing:.02em !important;
  text-align:center !important;
  text-shadow:none !important;
}

@media(max-width:600px){
  .blend-sensei-box .bs-service-intro .bs-service-intro-copy h2#bs-service-intro-title{
    font-size:25px !important;
    line-height:1.5 !important;
  }
}

/* v0.7.7: concern questions use clear three-choice buttons */
.bs-concern-choices{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(120px,1fr)) !important;
  gap:10px !important;
}

.bs-concern-choices label{
  display:block !important;
  margin:0 !important;
  cursor:pointer !important;
}

.bs-concern-choices input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.bs-concern-choices span{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:8px 10px !important;
  border:1px solid #b9c8b7 !important;
  border-radius:999px !important;
  background:#fbfcf8 !important;
  color:#243b3a !important;
  font-size:.92rem !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  text-align:center !important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease !important;
}

.bs-concern-choices input:checked + span{
  border-color:#087156 !important;
  background:linear-gradient(180deg,#2f946e,#087156) !important;
  color:#fff !important;
  box-shadow:0 3px 9px rgba(8,113,86,.2) !important;
}

.bs-concern-choices input:focus-visible + span{
  outline:3px solid rgba(8,113,86,.22) !important;
  outline-offset:2px !important;
}

@media(max-width:700px){
  .bs-concern-choices{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }
  .bs-concern-choices span{
    min-height:42px !important;
  }
}

/* v0.7.8 final overrides: five taste rows */
.bs-flavor-field{
  grid-template-columns:140px minmax(0,1fr) !important;
}
.bs-flavor-choices{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
.bs-flavor-choices span{
  min-height:42px !important;
}

@media(max-width:700px){
  .bs-flavor-field{
    grid-template-columns:1fr !important;
  }
  .bs-flavor-choices{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  .bs-flavor-choices span{
    min-height:40px !important;
    min-width:0 !important;
    padding:7px 4px !important;
    font-size:.88rem !important;
  }
}
