/* Helium Balloon Builder — F5 AI generator */
.hbb-ai{ --hbb-accent:#e6447a; --hbb-accent2:#7c4dff; --hbb-ink:#222; --hbb-line:#eceef2; --hbb-radius:14px; color:var(--hbb-ink); }
.hbb-ai *{ box-sizing:border-box; }
.hbb-ai__loading{ padding:28px; text-align:center; color:#888; }
.hbb-ai--off p{ background:#fff8e6; border:1px solid #f3e1ad; color:#8a6d1b; padding:12px 14px; border-radius:10px; font-size:14px; }

.hbb-ai__card{ border:1px solid var(--hbb-line); border-radius:var(--hbb-radius); padding:22px; background:#fff; box-shadow:0 8px 30px rgba(20,20,50,.06); max-width:640px; margin-left:auto; margin-right:auto; }
.hbb-ai__title{ margin:0 0 6px; font-size:21px; line-height:1.25; }
.hbb-ai__intro{ margin:0 0 16px; color:#666; font-size:14px; line-height:1.5; }

.hbb-ai__form{ display:flex; flex-direction:column; gap:12px; }
.hbb-ai__prompt{ width:100%; padding:12px 14px; border:1px solid var(--hbb-line); border-radius:12px; font-size:15px; font-family:inherit; resize:vertical; min-height:64px; }
.hbb-ai__prompt:focus{ outline:none; border-color:var(--hbb-accent); }

.hbb-ai__examples{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.hbb-ai__examples-lbl{ font-size:12px; color:#9a9aa6; margin-right:2px; }
.hbb-ai__chip{ border:1px solid var(--hbb-line); background:#faf9fe; color:#555; padding:5px 11px; border-radius:999px; cursor:pointer; font-size:12.5px; transition:.15s; }
.hbb-ai__chip:hover{ border-color:var(--hbb-accent); color:var(--hbb-accent); }

.hbb-ai__row{ display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap; }
.hbb-ai__field{ display:flex; flex-direction:column; gap:5px; flex:0 1 200px; }
.hbb-ai__lbl{ font-size:13px; font-weight:600; color:#555; }
.hbb-ai__field input{ padding:10px 12px; border:1px solid var(--hbb-line); border-radius:10px; font-size:15px; width:100%; }
.hbb-ai__field input:focus{ outline:none; border-color:var(--hbb-accent); }
.hbb-ai__btn{ border:none; background:linear-gradient(135deg,var(--hbb-accent),var(--hbb-accent2)); color:#fff; padding:12px 26px; border-radius:999px; cursor:pointer; font-weight:700; font-size:15px; transition:.15s; }
.hbb-ai__btn:hover{ filter:brightness(1.06); transform:translateY(-1px); }
.hbb-ai__btn:disabled{ opacity:.6; cursor:default; transform:none; }

.hbb-ai__disclaimer{ margin:14px 0 0; font-size:12px; color:#9a9aa6; }

/* result */
.hbb-ai__result{ margin-top:14px; }
.hbb-ai__msg{ padding:14px 16px; border-radius:10px; font-size:14px; }
.hbb-ai__msg--load{ color:#777; }
.hbb-ai__msg--warn{ background:#fff4f6; color:#c0274f; border:1px solid #f6d6df; }

.hbb-ai__panel{ border:1px solid var(--hbb-line); border-left:5px solid var(--hbb-accent2); border-radius:12px; padding:18px; background:linear-gradient(180deg,#fbfbff,#f6f4fc); }
.hbb-ai__phead{ display:flex; flex-direction:column; gap:2px; margin-bottom:8px; }
.hbb-ai__kicker{ font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:#8a8a98; }
.hbb-ai__name{ font-size:19px; line-height:1.25; color:#1a1a2a; }
.hbb-ai__why{ margin:0 0 14px; font-size:14px; line-height:1.55; color:#444; }

.hbb-ai__items{ list-style:none; margin:0 0 14px; padding:0; display:flex; flex-direction:column; gap:8px; }
.hbb-ai__item{ display:flex; align-items:center; gap:10px; background:#fff; border:1px solid var(--hbb-line); border-radius:10px; padding:8px 10px; }
.hbb-ai__item-img{ width:42px; height:42px; object-fit:contain; border-radius:8px; background:#f7f7fb; flex:0 0 auto; }
.hbb-ai__item-info{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; }
.hbb-ai__item-name{ font-size:13.5px; line-height:1.25; }
.hbb-ai__item-role{ font-size:11.5px; color:#9a9aa6; }
.hbb-ai__item-qty{ font-weight:700; color:#555; font-size:14px; }
.hbb-ai__item-price{ font-weight:700; color:var(--hbb-accent); font-size:14px; min-width:64px; text-align:right; }

.hbb-ai__totals{ display:flex; align-items:baseline; gap:8px; padding-top:10px; border-top:1px solid var(--hbb-line); }
.hbb-ai__total-lbl{ color:#777; font-size:14px; }
.hbb-ai__total-val{ font-size:20px; color:#1a1a2a; }
.hbb-ai__overbudget{ font-size:12px; color:#c0274f; background:#fff; border:1px solid #f6d6df; padding:3px 9px; border-radius:999px; }

.hbb-ai__helium{ display:flex; align-items:center; gap:8px; margin:12px 0 4px; font-size:14px; cursor:pointer; }
.hbb-ai__helium input{ width:18px; height:18px; accent-color:var(--hbb-accent); cursor:pointer; }

.hbb-ai__actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.hbb-ai__add{ border:none; background:var(--hbb-accent); color:#fff; padding:12px 24px; border-radius:999px; cursor:pointer; font-weight:700; font-size:15px; transition:.15s; }
.hbb-ai__add:hover{ filter:brightness(1.07); }
.hbb-ai__add:disabled{ opacity:.6; cursor:default; }
.hbb-ai__again{ border:1px solid var(--hbb-line); background:#fff; color:#555; padding:12px 20px; border-radius:999px; cursor:pointer; font-weight:600; font-size:14px; }
.hbb-ai__again:hover{ border-color:var(--hbb-accent); color:var(--hbb-accent); }

.hbb-ai__note{ margin-top:12px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.hbb-ai__ok{ color:#1faa59; font-weight:700; font-size:14px; }
.hbb-ai__err{ color:#c0274f; font-size:14px; }
.hbb-ai__cart{ background:var(--hbb-accent2); color:#fff; text-decoration:none; padding:9px 18px; border-radius:999px; font-weight:700; font-size:14px; }
.hbb-ai__cart:hover{ filter:brightness(1.08); color:#fff; }

@media (max-width:520px){
	.hbb-ai__card{ padding:16px; }
	.hbb-ai__name{ font-size:17px; }
}
