/* Florist scenes share the page layout; all movement is decorative. */
.fd-fpos-banner{background:linear-gradient(135deg,#14372b,#4c3740)}
.fd-fpos-stores::before{background:linear-gradient(90deg,#102d24f5,#102d24db 43%,#102d2460 80%)}
.fd-fpos .fd-floral-scene{--fl-ink:#355440;--fl-muted:#8b9281;position:relative;background:linear-gradient(135deg,#fffcf6,#f3eee9);border:1px solid #e9e3d9;border-radius:15px;padding:14px;color:var(--fl-ink);overflow:hidden;box-shadow:0 6px 20px #3e3c2905}
.fd-fpos .fd-floral-caption{display:flex;align-items:center;gap:6px;font:600 7px/1.5 Arial,sans-serif;letter-spacing:1.15px;color:var(--fl-muted);white-space:nowrap}.fd-floral-caption>i{height:5px;width:5px;border-radius:50%;background:#b58b97;box-shadow:0 0 0 3px #b58b9714;animation:fl-glow 4s ease-in-out infinite}.fd-floral-caption>span{margin-left:auto;font-size:6px;letter-spacing:.8px}
.fd-fpos .fd-floral-workspace{width:100%;max-width:320px;margin-top:24px}.fd-floral-order-scene{display:flex;align-items:center;gap:8px;height:112px}.fd-floral-bouquet{width:115px;height:108px;flex-shrink:0}.fd-floral-order-scene>div{flex:1;min-width:0}.fd-floral-order-scene small{display:block;font:6px Arial;letter-spacing:1px;color:#ac8893}.fd-floral-order-scene b{display:block;font:17px/1.25 Georgia,serif;margin:7px 0}.fd-floral-order-scene span{font:8px Arial;color:#8b9281;display:block}.fd-floral-order-scene em{display:block;font:8px Arial;color:#829775;margin-top:13px}.fd-floral-order-scene em>i{color:#ad8191;margin-right:3px}.fd-floral-progress{display:flex;gap:5px;margin-top:2px}.fd-floral-progress>span{height:3px;flex:1;background:#d7c2c5;border-radius:3px;animation:fl-progress 4s ease-in-out infinite}.fd-floral-progress>span:nth-child(2){animation-delay:.25s}.fd-floral-progress>span:nth-child(3){animation-delay:.5s}.fd-floral-progress>span:nth-child(4){animation-delay:.75s}
.fd-floral-petals{transform-box:fill-box;transform-origin:center;animation:fl-bloom 5s ease-in-out infinite;animation-delay:var(--bloom-delay,0s)}
.fd-fpos .fd-floral-flow{display:block;height:158px;margin-bottom:20px}.fd-floral-compose{display:flex;align-items:center;gap:4px;margin-top:5px}.fd-floral-compose .fd-floral-bouquet{width:105px;height:111px}.fd-floral-compose b,.fd-floral-schedule>div:last-child>b,.fd-floral-fresh b{display:block;font:16px Georgia,serif;margin-bottom:7px}.fd-floral-compose span,.fd-floral-schedule>div:last-child>span,.fd-floral-fresh>div>span{display:block;font:8px/1.5 Arial;color:#919381}.fd-floral-swatches{display:flex;gap:5px;margin-top:12px}.fd-floral-swatches>i{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:#d3a1ad;box-shadow:0 0 0 1px #d3a1ad22}.fd-floral-swatches>i:nth-child(2){background:#e0c7a1}.fd-floral-swatches>i:nth-child(3){background:#8ba081}
.fd-floral-schedule{display:flex;align-items:center;gap:16px;height:111px}.fd-floral-date{background:#fffaf3;border:1px solid #e4d9d0;border-radius:9px;overflow:hidden;width:72px;text-align:center;flex-shrink:0;box-shadow:0 5px 9px #4a3d2c05;animation:fl-date 5s ease-in-out infinite}.fd-floral-date small{display:block;background:#bc909f;color:#fff;font:6px Arial;letter-spacing:1.4px;padding:6px}.fd-floral-date>b{display:block;font:32px Georgia;color:#58684e;padding:3px 0}.fd-floral-date>span{display:block;font:6px Arial;color:#9a9b8c;padding-bottom:8px;letter-spacing:.8px}.fd-floral-schedule>div:last-child>i{color:#bd909b;font-size:13px;margin-bottom:7px}.fd-floral-schedule em,.fd-floral-fresh em{display:block;font:7px/1.5 Arial;color:#7b9673;margin-top:7px}
.fd-floral-deposit{padding:17px 3px 0}.fd-floral-deposit>span{display:flex;align-items:center;gap:6px;font:8px Arial;color:#8d9583}.fd-floral-deposit>span>i:first-child{color:#b9919b}.fd-floral-deposit>span>i:last-child{margin-left:auto;color:#8fa184;animation:fl-glow 4s infinite}.fd-floral-deposit>b{display:block;font:24px Georgia;margin:9px 0 10px}.fd-floral-deposit>div{height:5px;background:#e9e3d6;border-radius:4px;overflow:hidden}.fd-floral-deposit>div>span{height:100%;width:37.74%;display:block;background:#b994a0;transform-origin:left;animation:fl-deposit 4s ease-in-out infinite}.fd-floral-deposit>small{display:block;font:7px Arial;color:#939681;margin-top:9px}
.fd-floral-fresh{display:flex;align-items:center;gap:17px;height:113px}.fd-floral-vase{position:relative;width:63px;height:89px;flex-shrink:0;text-align:center}.fd-floral-vase>i{font-size:45px;color:#8da17f;position:relative;z-index:1;margin-top:4px;transform-origin:bottom;animation:fl-sway 5s ease-in-out infinite}.fd-floral-vase>span{position:absolute;width:42px;height:43px;bottom:1px;left:11px;border-radius:4px 4px 15px 15px;background:linear-gradient(100deg,#dfc7b2,#efdfcb);border-top:4px solid #d2b99d}.fd-floral-fresh-dots{display:flex;gap:4px;margin-top:9px}.fd-floral-fresh-dots>i{width:21px;height:4px;background:#b0c0a1;border-radius:4px;animation:fl-progress 4s infinite}.fd-floral-fresh-dots>i:nth-child(2){animation-delay:.3s}.fd-floral-fresh-dots>i:nth-child(3){animation-delay:.6s}.fd-floral-fresh-dots>i:nth-child(4){animation-delay:.9s}
.fd-fpos .fd-floral-setup{--fl-muted:#bed1bc;background:linear-gradient(130deg,#ffffff0b,#ffffff03);border-color:#ffffff20;margin-bottom:22px;color:#f3eee1}.fd-floral-connected{display:flex;align-items:center;justify-content:center;padding:25px 0 20px}.fd-floral-connected>div{width:60px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 5px;border-radius:10px;background:#ffffff08;border:1px solid #ffffff10}.fd-floral-connected>div>i{font-size:25px;color:#dbb7bf}.fd-floral-connected>div>span{font:8px Arial;color:#c5d6c0}.fd-floral-connected>em{width:20px;height:2px;background:#ffffff18;overflow:hidden}.fd-floral-connected>em::after{content:'';display:block;width:9px;height:2px;background:#dbb7bf;animation:fl-link 2.5s linear infinite}.fd-floral-setup-note{text-align:center;font:8px Arial;color:#b9cfb4;padding-bottom:3px}.fd-floral-setup-note>i{color:#dbb7bf;margin-right:3px}
@keyframes fl-bloom{0%,100%{transform:scale(.94);opacity:.8}45%,70%{transform:scale(1);opacity:1}}
@keyframes fl-glow{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes fl-progress{0%,100%{opacity:.4}40%,70%{opacity:1}}
@keyframes fl-date{0%,100%{transform:translateY(1px)}50%{transform:translateY(-3px)}}
@keyframes fl-deposit{0%,100%{transform:scaleX(.85);opacity:.75}45%,80%{transform:scaleX(1);opacity:1}}
@keyframes fl-sway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes fl-link{from{transform:translateX(-9px)}to{transform:translateX(25px)}}
@media(max-width:991px){.fd-fpos .fd-floral-workspace{width:300px;margin:16px 0 0}.fd-fpos .fd-floral-flow{height:158px}}
@media(max-width:359px){.fd-fpos .fd-floral-workspace{display:block;width:100%}}
@media(prefers-reduced-motion:reduce){.fd-fpos .fd-floral-scene *,.fd-fpos .fd-floral-scene *::after{animation:none!important}}
/* Workspace-only bouquet assembly; explicit SVG size overrides the shared restaurant illustration rule. */
.fd-fpos .fd-floral-workspace .fd-floral-order-scene{display:grid;grid-template-columns:94px minmax(0,1fr);gap:12px;height:122px;align-items:center}
.fd-fpos .fd-floral-workspace .fd-floral-arranging{position:relative;width:94px;height:108px;display:grid;place-items:center;min-width:0}
.fd-fpos .fd-floral-workspace .fd-floral-arranging::before{content:'';position:absolute;width:87px;height:87px;border-radius:50%;background:radial-gradient(circle,#f2e2e3,#efe9dd66);top:8px}
.fd-fpos .fd-floral-workspace svg.fd-floral-bouquet{position:relative;display:block;width:94px;height:100px;max-width:100%;overflow:visible;flex:none}
.fd-fpos .fd-floral-workspace .fd-floral-order-details{min-width:0}
.fd-fpos .fd-floral-workspace .fd-floral-order-details b{font-size:16px;line-height:1.3;margin:7px 0;overflow-wrap:normal}
.fd-fpos .fd-floral-workspace .fd-floral-order-details>span{font-size:8px;line-height:1.6}
.fd-fpos .fd-floral-workspace .fd-floral-order-details em{font-size:8px;line-height:1.5;margin-top:10px;animation:fl-composed 6s ease-in-out infinite}
.fd-floral-build-steps{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #e7ddd5;padding-top:10px}
.fd-floral-build-steps>span{display:flex;align-items:center;gap:5px;font:8px Arial,sans-serif;color:#8c9480;white-space:nowrap}
.fd-floral-build-steps i{width:5px;height:5px;background:#b78f9c;border-radius:50%;animation:fl-build-step 6s ease-in-out infinite}
.fd-floral-build-steps>span:nth-child(2) i{animation-delay:1s}.fd-floral-build-steps>span:nth-child(3) i{animation-delay:2s}
.fd-fpos .fd-floral-workspace .fd-floral-petals{animation:fl-assemble 6s ease-in-out infinite;animation-delay:var(--bloom-delay,0s)}
.fd-fpos .fd-floral-workspace .fd-floral-bouquet>path:last-child{stroke-dasharray:35;animation:fl-ribbon 6s ease-in-out infinite}
@keyframes fl-assemble{0%,8%{opacity:0;transform:translateY(-9px) scale(.65)}28%,83%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-4px) scale(.9)}}
@keyframes fl-ribbon{0%,33%{stroke-dashoffset:35;opacity:0}55%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes fl-composed{0%,40%,100%{opacity:.35;transform:translateY(2px)}58%,85%{opacity:1;transform:translateY(0)}}
@keyframes fl-build-step{0%,100%{opacity:.35;box-shadow:0 0 0 0 #b78f9c00}35%,55%{opacity:1;box-shadow:0 0 0 3px #b78f9c18}}
@media(max-width:359px){.fd-fpos .fd-floral-workspace .fd-floral-order-scene{grid-template-columns:82px minmax(0,1fr);gap:8px}.fd-fpos .fd-floral-workspace .fd-floral-arranging{width:82px}.fd-fpos .fd-floral-workspace .fd-floral-order-details b{font-size:15px}}
@media(prefers-reduced-motion:reduce){.fd-fpos .fd-floral-workspace *{animation:none!important}}
/* Order-building scene: choose a palette, arrange blooms, then add the gift message. */
.fd-floral-builder-motion{height:116px;gap:8px;margin-top:4px}
.fd-floral-builder-art{position:relative;width:105px;height:111px;flex:0 0 105px}
.fd-fpos .fd-floral-builder-art svg.fd-floral-bouquet{display:block;width:105px;height:111px;max-width:100%}
.fd-floral-builder-copy{min-width:0}
.fd-floral-builder-motion .fd-floral-petals{animation:fl-order-bloom 6s ease-in-out infinite;animation-delay:var(--bloom-delay,0s)}
.fd-floral-builder-motion .fd-floral-bouquet>path:last-child{stroke-dasharray:35;animation:fl-order-ribbon 6s ease-in-out infinite}
.fd-floral-message-card{position:absolute;right:0;bottom:14px;width:34px;height:26px;background:#fffdf7;border:1px solid #ddc5c6;border-radius:4px;box-shadow:0 3px 7px #71544712;transform:rotate(-9deg);padding:4px 6px;animation:fl-order-message 6s ease-in-out infinite}
.fd-floral-message-card>i{display:block;font-size:6px;color:#b98699;margin-bottom:3px}
.fd-floral-message-card>span{display:block;height:1px;background:#d4cbbb;margin:2px 0;width:100%}.fd-floral-message-card>span:last-child{width:65%}
.fd-floral-builder-motion .fd-floral-swatches{margin-top:10px}
.fd-floral-builder-motion .fd-floral-swatches>i{animation:fl-palette-pick 6s ease-in-out infinite}.fd-floral-builder-motion .fd-floral-swatches>i:nth-child(2){animation-delay:.3s}.fd-floral-builder-motion .fd-floral-swatches>i:nth-child(3){animation-delay:.6s}
.fd-floral-builder-ready{display:block;font:7px/1.5 Arial,sans-serif;color:#8d9b7b;margin-top:9px;animation:fl-order-ready 6s ease-in-out infinite}.fd-floral-builder-ready>i{color:#b88798;margin-right:3px}
@keyframes fl-order-bloom{0%,8%{transform:translateY(-8px) scale(.65);opacity:0}28%,85%{transform:translateY(0) scale(1);opacity:1}100%{transform:translateY(-3px) scale(.9);opacity:0}}
@keyframes fl-order-ribbon{0%,32%{stroke-dashoffset:35;opacity:0}52%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes fl-order-message{0%,45%,100%{opacity:0;transform:translate(10px,4px) rotate(5deg)}62%,85%{opacity:1;transform:translate(0,0) rotate(-9deg)}}
@keyframes fl-palette-pick{0%,100%{transform:scale(1);box-shadow:0 0 0 1px #d3a1ad22}20%,40%{transform:scale(1.16);box-shadow:0 0 0 3px #d3a1ad26}}
@keyframes fl-order-ready{0%,48%,100%{opacity:.3;transform:translateY(2px)}65%,85%{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.fd-fpos .fd-floral-builder-motion *{animation:none!important}.fd-floral-message-card{opacity:1;transform:rotate(-9deg)}}
