.ai-order-launcher {
    right: auto;
    left: 24px;
    bottom: 24px;
    border: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(145deg, #173c2a, #0f271c);
    box-shadow: 0 18px 50px rgba(10,35,22,.3), inset 0 1px 0 rgba(255,255,255,.08);
}
.ai-order-launcher:hover { transform: translateY(-2px); }
.ai-order-launcher__icon,
.ai-order-avatar { background: linear-gradient(145deg,#ffd166,#f28b42); box-shadow: 0 7px 18px rgba(242,139,66,.26); }
.ai-order-panel {
    right: auto;
    left: 24px;
    bottom: 94px;
    width: min(440px, calc(100vw - 32px));
    background: linear-gradient(180deg,#f8faf6,#f3f5f0);
    border-color: rgba(23,60,42,.13);
    transform-origin: bottom left;
}
.ai-order-panel__header { background: linear-gradient(125deg,#173c2a,#10281d); padding: 16px; }
.ai-order-messages { padding: 20px; gap: 13px; }
.ai-message__bubble { box-shadow: 0 5px 18px rgba(22,48,32,.045); }
.ai-order-suggestions button { transition: .18s ease; }
.ai-order-suggestions button:hover { border-color: #6c9b7c; color: #174a30; transform: translateY(-1px); }
.ai-product-list { gap: 10px; }
.ai-recipe-plan { border: 1px solid #dce6dd; border-radius: 16px; background: #fff; overflow: hidden; box-shadow: 0 8px 24px rgba(20,50,31,.055); }
.ai-recipe-plan__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 14px; background: #f1f6f2; border-bottom: 1px solid #e0e8e1; }
.ai-recipe-plan__header div { display: flex; flex-direction: column; }
.ai-recipe-plan__header small { color: #687b6d; font-size: 11px; }
.ai-recipe-plan__header strong { color: #193c2a; }
.ai-recipe-plan__header > span { flex: 0 0 auto; padding: 4px 8px; border-radius: 999px; background: #fff1da; color: #9a5a16; font-size: 11px; font-weight: 700; }
.ai-recipe-plan__header > span.is-complete { background: #dff3e5; color: #17623a; }
.ai-recipe-plan__ingredients { max-height: 260px; overflow-y: auto; }
.ai-recipe-ingredient { display: grid; grid-template-columns: 18px minmax(0,1fr); gap: 9px; padding: 9px 13px; border-bottom: 1px solid #edf1ed; }
.ai-recipe-ingredient:last-child { border-bottom: 0; }
.ai-recipe-ingredient > i { margin-top: 2px; }
.ai-recipe-ingredient > div { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 8px; }
.ai-recipe-ingredient strong { color: #263d30; font-size: 12px; }
.ai-recipe-ingredient small { color: #6f7d73; font-size: 11px; }
.ai-recipe-ingredient em { grid-column: 1 / -1; color: #748077; font-size: 10px; font-style: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ai-recipe-ingredient--matched > i { color: #25804e; }
.ai-recipe-ingredient--uncertain > i { color: #d88a27; }
.ai-recipe-ingredient--missing > i { color: #bd4d4d; }
.ai-recipe-ingredient--pantry > i { color: #718078; }
.ai-product-card {
    position: relative;
    display: grid;
    grid-template-columns: 74px minmax(0,1fr);
    grid-template-rows: auto auto;
    column-gap: 12px;
    padding: 10px 10px 38px;
    border-color: #e0e7df;
    box-shadow: 0 8px 24px rgba(20,50,31,.055);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.ai-product-card:hover { border-color: #adc6b4; transform: translateY(-1px); box-shadow: 0 12px 28px rgba(20,50,31,.09); }
.ai-product-card__media {
    grid-row: 1 / 3;
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 12px;
    background: #f0f3ee;
}
.ai-product-card__media img { width: 100%; height: 100%; padding: 5px; object-fit: contain; mix-blend-mode: multiply; }
.ai-product-card__body { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.ai-product-card__reason { grid-column: 1 / -1; color: #55705f; font-size: 11px; }
.ai-product-card__reason i { color: #d98a36; }
.ai-product-card__price { align-self: start; padding: 4px 7px; border-radius: 999px; background: #edf5ef; }
.ai-product-card__actions { grid-column: 2; margin-top: 8px; grid-template-columns: 76px 1fr; }
.ai-product-card__actions input { padding: 6px; }
.ai-product-card__actions button { min-height: 34px; background: linear-gradient(135deg,#217047,#185c39); }
.ai-product-card__feedback { position: absolute; right: 8px; bottom: 7px; display: flex; gap: 3px; opacity: 0; transition: opacity .18s ease; }
.ai-product-card:hover .ai-product-card__feedback, .ai-product-card__feedback:focus-within { opacity: 1; }
.ai-product-card__feedback button { width: 26px; height: 26px; padding: 0; border: 1px solid #dce5dd; border-radius: 8px; background: #fff; color: #64776a; }
.ai-product-card__feedback button:hover, .ai-product-card__feedback button.is-active { color: #17603b; border-color: #8eb49a; background: #edf6f0; }
.ai-product-card.is-avoided { opacity: 0; transform: translateX(-12px); }
.ai-order-composer { margin: 0 14px; box-shadow: 0 8px 22px rgba(20,45,30,.06); }

@media (max-width: 575.98px) {
    .ai-order-launcher { left: 14px; right: auto; bottom: 14px; }
    .ai-order-panel { inset: 8px; width: auto; height: auto; }
    .ai-product-card { grid-template-columns: 64px minmax(0,1fr); }
    .ai-product-card__media { width: 64px; height: 64px; }
    .ai-product-card__body { grid-template-columns: 1fr; gap: 4px; }
    .ai-product-card__price { justify-self: start; }
    .ai-product-card__actions { grid-column: 2; grid-template-columns: 68px 1fr; }
    .ai-product-card__feedback { opacity: 1; }
}
