/* Chat Foodie: comanda din chat. Aceeași temă ca widgetul (negru, portocaliu, DM Sans). */
@keyframes fbo-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes fbo-dot{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}
@keyframes fbo-spin{to{transform:rotate(360deg)}}
.fbot-msg,.fbot-btns,.fbot-links{animation:fbo-in .28s cubic-bezier(.2,.8,.2,1) both}
/* Indicator „scrie”: trei puncte animate */
.fbot-typing{font-size:0 !important;padding:12px 14px !important;background:#1b201d;border:1px solid #232925;border-radius:16px;display:flex;gap:5px;animation:fbo-in .2s both}
.fbot-typing::before,.fbot-typing::after,.fbot-typing{--d:#ff9a4a}
.fbot-typing::before,.fbot-typing::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--d);animation:fbo-dot 1.1s infinite}
.fbot-typing::after{animation-delay:.3s;box-shadow:12px 0 0 var(--d)}
.fbot-typing::before{animation-delay:0s}
.fbot-typing{position:relative;min-width:58px;min-height:34px}
/* Pastile */
.fbo-chips{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 4px}
.fbo-chip{animation:fbo-in .3s cubic-bezier(.2,.8,.2,1) both;min-height:40px;padding:9px 15px;border-radius:999px;border:1.5px solid #ff790c;background:#111512;color:#ffd2ad;font:600 14.5px/1.15 'DM Sans',-apple-system,sans-serif;cursor:pointer;transition:background .15s,transform .1s,color .15s;-webkit-tap-highlight-color:transparent}
.fbo-chip:hover,.fbo-chip:focus-visible{background:#ff790c;color:#fff;outline:none}
.fbo-chip:active{transform:scale(.96)}
/* Card rezumat */
.fbo-card{animation:fbo-in .35s cubic-bezier(.2,.8,.2,1) both;background:linear-gradient(180deg,#171c19,#111512);border:1px solid #2a312c;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:10px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.fbo-hd{display:flex;gap:11px;align-items:center}
.fbo-hd-ic{flex:0 0 40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#ff5200,#ff850c);color:#fff;display:flex;align-items:center;justify-content:center}
.fbo-hd-ic svg{width:22px;height:22px}
.fbo-hd-t{display:flex;flex-direction:column;min-width:0}
.fbo-hd-t b{font-size:16px;color:#fff;line-height:1.25}
.fbo-hd-t small{font-size:12.5px;color:#a3aaa5;line-height:1.35;margin-top:2px}
.fbo-line{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#ffb27a;font-weight:700;padding-top:4px;border-top:1px dashed #2a312c}
.fbo-day{border:1px solid #232925;border-radius:14px;background:#0d100e;overflow:hidden}
.fbo-day>summary{list-style:none;display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-weight:700;font-size:14px;color:#f5f5f2;-webkit-tap-highlight-color:transparent}
.fbo-day>summary::-webkit-details-marker{display:none}
.fbo-day-l{flex:1}
.fbo-kcal{font-size:12px;font-weight:600;color:#8fd19e;background:rgba(143,209,158,.1);padding:2px 8px;border-radius:999px}
.fbo-day-ch{width:16px;height:16px;color:#ff790c;display:flex;transition:transform .2s}
.fbo-day[open] .fbo-day-ch{transform:rotate(90deg)}
.fbo-meals{display:flex;flex-direction:column;gap:2px;padding:0 6px 8px}
.fbo-meal{display:flex;align-items:center;gap:10px;width:100%;padding:6px;border:0;border-radius:12px;background:transparent;color:#f5f5f2;text-align:left;font-family:inherit;cursor:pointer;transition:background .15s}
.fbo-meal:hover,.fbo-meal:focus-visible{background:#1b201d;outline:none}
.fbo-meal:disabled{cursor:default;opacity:1}
.fbo-meal:disabled:hover{background:transparent}
.fbo-img{flex:0 0 46px;width:46px;height:46px;border-radius:11px;overflow:hidden;background:#1b201d;display:flex;align-items:center;justify-content:center;color:#ff790c}
.fbo-img img{width:100%;height:100%;object-fit:cover;display:block}
.fbo-img.fbo-ph svg{width:22px;height:22px;opacity:.75}
.fbo-meal-t{flex:1;min-width:0;display:flex;flex-direction:column;font-size:14px;line-height:1.3}
.fbo-meal-t small{font-size:11.5px;color:#929995;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.fbo-meal-ch{flex:0 0 16px;width:16px;height:16px;color:#5d6660;display:flex}
.fbo-badge{flex:0 0 auto;font-size:11.5px;font-weight:700;color:#ffb27a;background:rgba(255,121,12,.12);padding:3px 7px;border-radius:999px}
.fbo-extra{font-size:13px;color:#a3aaa5;padding:2px 8px 2px 62px}
.fbo-hint{font-size:12.5px;color:#929995;text-align:center}
.fbo-rows{display:flex;flex-direction:column;gap:5px;padding:10px 4px 2px;border-top:1px solid #232925}
.fbo-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#c9cec9}
.fbo-row span:last-child{white-space:nowrap}
.fbo-total{margin-top:4px;font-size:16px;color:#fff;font-weight:700}
.fbo-total b{font-size:20px;color:#ff9a4a}
.fbo-note{font-size:13px;color:#ffd2ad;background:rgba(255,121,12,.1);border-radius:10px;padding:8px 10px}
.fbo-go{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border:0;border-radius:14px;background:#ff5200;background-image:linear-gradient(100deg,#ff5200,#ff850c);color:#fff;font:800 16px/1.15 'DM Sans',-apple-system,sans-serif;cursor:pointer;box-shadow:0 8px 22px rgba(255,82,0,.35);transition:transform .1s,filter .15s}
.fbo-go svg{width:22px;height:22px}
.fbo-go:active{transform:scale(.985)}
.fbo-go:hover{filter:brightness(1.06)}
.fbo-go:disabled{cursor:default}
.fbo-go.fbo-loading svg{animation:fbo-spin 1s linear infinite}
.fbo-go.fbo-done{background:#1f7a44;background-image:none;box-shadow:none}
.fbo-more{min-height:44px;border:1.5px solid #343c36;border-radius:14px;background:transparent;color:#e9ece9;font:600 14.5px/1.2 'DM Sans',-apple-system,sans-serif;cursor:pointer}
.fbo-more:hover{border-color:#ff790c;color:#fff}
.fbo-more:disabled,.fbo-go:disabled:not(.fbo-done):not(.fbo-loading){opacity:.6}
.fbo-pay{font-size:12px;color:#929995;text-align:center;line-height:1.4}
/* Variante preparat (carusel) */
.fbo-dishes-w{animation:fbo-in .3s both;display:flex;flex-direction:column;gap:8px}
.fbo-dishes-h{font-size:13px;font-weight:700;color:#a3aaa5;text-transform:uppercase;letter-spacing:.04em;padding:0 2px}
.fbo-dishes{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 8px;margin:0 -12px;padding-left:12px;padding-right:12px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.fbo-dishes::-webkit-scrollbar{display:none}
.fbo-dish{animation:fbo-in .35s both;position:relative;flex:0 0 172px;scroll-snap-align:start;display:flex;flex-direction:column;border:1.5px solid #2a312c;border-radius:16px;background:#111512;color:#f5f5f2;padding:0;overflow:hidden;text-align:left;font-family:inherit;cursor:pointer;transition:border-color .15s,transform .1s}
.fbo-dish:active{transform:scale(.98)}
.fbo-dish:hover,.fbo-dish:focus-visible{border-color:#ff790c;outline:none}
.fbo-dish.fbo-sel{border-color:#ff790c;box-shadow:0 0 0 2px rgba(255,121,12,.25) inset}
.fbo-dish .fbo-img{flex:none;width:100%;height:112px;border-radius:0}
.fbo-dish .fbo-img.fbo-ph svg{width:34px;height:34px}
.fbo-dish-t{display:flex;flex-direction:column;gap:3px;padding:9px 10px 11px;font-size:13.5px;line-height:1.3}
.fbo-dish-t b{font-weight:700;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fbo-dish-t small{font-size:12px;color:#8fd19e}
.fbo-tags{display:flex;gap:4px;flex-wrap:wrap}
.fbo-tags i{font-style:normal;font-size:11px;color:#c9cec9;background:#1b201d;padding:2px 6px;border-radius:6px}
.fbo-dish .fbo-badge{position:absolute;top:8px;left:8px;background:rgba(8,12,10,.82);backdrop-filter:blur(4px)}
.fbo-ck{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;background:#ff790c;color:#fff;display:flex;align-items:center;justify-content:center}
.fbo-ck svg{width:16px;height:16px}
@media (prefers-reduced-motion:reduce){.fbot-msg,.fbot-btns,.fbot-links,.fbo-card,.fbo-chip,.fbo-dish,.fbo-dishes-w,.fbot-typing{animation:none !important}.fbot-typing::before,.fbot-typing::after{animation:none}}

/* alegere ghidată (Vreau să aleg eu) */
.fbo-guide-p{display:flex;align-items:center;gap:10px;margin:2px 2px 6px;font-size:13px;color:#f7931e}
.fbo-guide-p b{white-space:nowrap;font-weight:700}
.fbo-guide-bar{flex:1;height:4px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden}
.fbo-guide-bar i{display:block;height:100%;background:#f7931e;border-radius:4px;transition:width .3s}
.fbo-guide-n{margin:0 2px 6px;font-size:12.5px;opacity:.75}
.fbo-dish{position:relative}
.fvo-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:3px}.fvo-tags i{font-style:normal;font-size:10.5px;padding:1px 6px;border-radius:8px;background:rgba(247,147,30,.16);color:#f7931e}
.fbo-num{position:absolute;top:6px;left:6px;z-index:2;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:rgba(17,17,17,.82);color:#fff;font:700 12px/22px inherit;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.35)}
/* Calendarul de la „De când începem?” (negru și portocaliu, mobil întâi) */
.fbo-cal{animation:fbo-in .3s cubic-bezier(.2,.8,.2,1) both;margin:4px 0 6px;padding:10px 10px 8px;border-radius:16px;background:#111512;border:1.5px solid #ff790c55;color:#f4f1ea;font-family:'DM Sans',-apple-system,sans-serif;max-width:340px}
.fbo-cal-hd{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px}
.fbo-cal-t{font:700 15px/1.2 'DM Sans',-apple-system,sans-serif;color:#fff;text-align:center;flex:1}
.fbo-cal-nav{width:36px;height:36px;border-radius:50%;border:0;background:#ffffff14;color:#ffd2ad;display:grid;place-items:center;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
.fbo-cal-nav svg{width:18px;height:18px}.fbo-cal-nav:hover:not(:disabled){background:#ff790c;color:#fff}.fbo-cal-nav:disabled{opacity:.25;cursor:default}
.fbo-cal-wk,.fbo-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.fbo-cal-wk span{text-align:center;font:600 11.5px/1 'DM Sans',-apple-system,sans-serif;color:#9a958c;padding:4px 0}
.fbo-cal-d{position:relative;height:36px;border-radius:10px;border:1px solid transparent;background:transparent;color:#5c5a55;font:600 14.5px/1 'DM Sans',-apple-system,sans-serif;padding:0;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}
.fbo-cal-d:disabled{cursor:default}
.fbo-cal-d.today{color:#a8a39a}.fbo-cal-d.today::after{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#a8a39a}
.fbo-cal-d.on{background:#ff790c1f;border-color:#ff790c;color:#fff;cursor:pointer;transition:background .15s,transform .1s}
.fbo-cal-d.on.first{background:#ff790c;color:#fff}
/* Mai multe zile (30.10.2026): bifate portocaliu plin, sumarul și „Continuă” sub calendar */
.fbo-cal-multi .fbo-cal-d.on.first{background:#ff790c1f}
.fbo-cal-multi .fbo-cal-grid{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none}
.fbo-cal-d.on.sel,.fbo-cal-multi .fbo-cal-d.on.first.sel{background:#ff790c;border-color:#ff790c;color:#fff}
.fbo-cal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.fbo-cal-sum{font-weight:700;font-size:14.5px;color:#fff;line-height:1.3}
.fbo-cal-go{flex:0 0 auto;border:0;border-radius:999px;padding:11px 20px;background:#ff790c;color:#fff;font-weight:800;font-size:15px;cursor:pointer}
.fbo-cal-go:disabled{opacity:.4;cursor:default}
.fbo-cal-done .fbo-cal-grid{pointer-events:none;opacity:.6}
.fbo-cal-d.on:hover,.fbo-cal-d.on:focus-visible{background:#ff790c;color:#fff;outline:none}
.fbo-cal-d.on:active{transform:scale(.92)}
.fbo-cal-note{margin-top:7px;font-size:12px;color:#9a958c;text-align:center}
@media (prefers-reduced-motion:reduce){.fbo-cal{animation:none !important}}
/* Calendarul compact: prima zi disponibilă sus (Codrin, 27.10.2026) */
.fbo-cal-d small{position:absolute;top:2px;left:0;right:0;font-size:9px;font-weight:700;line-height:1;color:#ff9a4a;text-transform:lowercase}
.fbo-cal-d.on small{color:#ffd2ad}.fbo-cal-d.on.first small{color:#fff}
.fbo-cal-more{display:block;margin:8px auto 2px;padding:8px 14px;min-height:36px;border-radius:999px;border:1.5px solid #ff790c;background:transparent;color:#ffd2ad;font:600 13.5px/1 'DM Sans',-apple-system,sans-serif;cursor:pointer}
.fbo-cal-more[hidden]{display:none}.fbo-cal-more:hover{background:#ff790c;color:#fff}
