/* 🛑 FLOWLA RESTORATION PROTOCOL — RING-FENCED. R-NOCHOP R-NODELETE R-NOMERGE R-NOREFAC R-TOGGLE R-ASK. For Robert Orme. */
/* Flowla Petals — frontend. Brand: sage #85C727, green #2A6132, forest #1F3A24, mint #E8F7D5, Jost. */
.flowla-petals-overlay{position:fixed;inset:0;background:rgba(31,58,36,.45);z-index:99999;display:flex;align-items:flex-end;justify-content:center;padding:16px;animation:fpFade .25s ease}
@media(min-width:640px){.flowla-petals-overlay{align-items:center}}
@keyframes fpFade{from{opacity:0}to{opacity:1}}
.flowla-petals-card{position:relative;background:#fff;border-radius:18px;max-width:400px;width:100%;padding:28px 24px 20px;box-shadow:0 18px 50px rgba(31,58,36,.35);font-family:Jost,system-ui,sans-serif;text-align:center;animation:fpUp .3s ease;max-height:calc(100dvh - 32px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
@keyframes fpUp{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.fp-close{position:absolute;top:10px;right:14px;border:0;background:none;font-size:26px;line-height:1;color:#5A6B57;cursor:pointer}
.fp-petal{position:relative;width:46px;height:46px;margin:0 auto 10px}
.fp-petal span{position:absolute;width:20px;height:20px;border-radius:50%;background:#85C727}
.fp-petal span:nth-child(1){top:0;left:13px}.fp-petal span:nth-child(2){top:10px;left:26px}
.fp-petal span:nth-child(3){top:26px;left:21px}.fp-petal span:nth-child(4){top:26px;left:5px}
.fp-petal span:nth-child(5){top:10px;left:0}
.fp-petal i{position:absolute;top:15px;left:15px;width:16px;height:16px;border-radius:50%;background:#E8F7D5}
.fp-title{margin:4px 0 6px;font-size:21px;font-weight:700;color:#1F3A24}
.fp-body{margin:0 0 16px;font-size:14.5px;line-height:1.5;color:#3d4c3a}
.fp-primary{display:block;width:100%;border:0;border-radius:12px;background:#2A6132;color:#fff;font-family:inherit;font-size:16px;font-weight:600;padding:14px 16px;cursor:pointer;transition:background .15s}
.fp-primary:hover{background:#1F3A24}
.fp-alt{margin:14px 0 4px}
.fp-or{display:block;font-size:12px;color:#5A6B57;margin-bottom:8px}
.fp-email-form{display:flex;gap:6px}
.fp-email{flex:1;border:1.5px solid #E8F7D5;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}
.fp-email:focus{outline:none;border-color:#85C727}
.fp-email-go{border:0;border-radius:10px;background:#85C727;color:#fff;font-size:18px;width:44px;cursor:pointer}
.fp-dismiss{margin-top:12px;border:0;background:none;color:#5A6B57;font-family:inherit;font-size:13px;cursor:pointer;text-decoration:underline}
.flowla-petals-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#1F3A24;color:#fff;font-family:Jost,system-ui,sans-serif;font-size:14px;padding:12px 20px;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,.3);opacity:0;transition:all .35s ease;z-index:100000}
.flowla-petals-toast.show{opacity:1;transform:translate(-50%,0)}
.flowla-petals-bell{display:inline-flex;align-items:center;gap:6px;background:#E8F7D5;color:#1F3A24;border-radius:999px;padding:6px 14px;font-family:Jost,system-ui,sans-serif;font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;border:0}
.flowla-petals-bell:hover{background:#85C727;color:#fff}
.flowla-petals-thankyou-card{background:#E8F7D5;border-left:4px solid #85C727;border-radius:14px;padding:20px 22px;margin:22px 0;font-family:Jost,system-ui,sans-serif}
.flowla-petals-thankyou-card h3{margin:0 0 6px;color:#1F3A24;font-size:19px}
.flowla-petals-thankyou-card p{margin:0 0 12px;color:#3d4c3a;font-size:14.5px}
.flowla-petals-thankyou-card .fp-progress{display:flex;gap:5px;margin:0 0 14px}
.flowla-petals-thankyou-card .fp-progress b{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid #85C727}
.flowla-petals-thankyou-card .fp-progress b.on{background:#85C727}

/* v2.2.0 — the thank-you popup (Angel tym duplication) */
.fp-pop-overlay{position:fixed;inset:0;background:rgba(31,58,36,.5);z-index:99998;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;transition:opacity .25s ease}
.fp-pop-overlay.open{opacity:1}
.fp-pop-card{position:relative;background:#fff;border-radius:20px;max-width:440px;width:100%;max-height:90vh;overflow:auto;padding:30px 26px 22px;box-shadow:0 22px 60px rgba(31,58,36,.4);font-family:Jost,system-ui,sans-serif;text-align:center;transform:translateY(16px);transition:transform .25s ease}
.fp-pop-overlay.open .fp-pop-card{transform:none}
.fp-pop-close{position:absolute;top:12px;right:16px;border:0;background:none;font-size:28px;line-height:1;color:#5A6B57;cursor:pointer}
.fp-pop-flower{width:56px;height:56px;margin:0 auto 8px;display:block}
.fp-pop-title{margin:0 0 8px;font-size:22px;font-weight:700;color:#1F3A24}
.fp-pop-sub{margin:0 0 6px;font-size:14.5px;line-height:1.55;color:#3d4c3a}
.fp-pop-pill{display:inline-block;background:#E8F7D5;color:#1F3A24;border-radius:999px;padding:2px 10px;font-weight:700;white-space:nowrap}
.fp-pop-occ{margin:0 0 4px;font-size:13.5px;color:#2A6132;font-weight:600}
.fp-pop-card .flowla-petals-thankyou-card{text-align:left;margin:16px 0 4px}

/* v2.3.0 — the header strapline bar */
.flowla-petals-headerbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:#1F3A24;color:#E8F7D5;padding:8px 14px;font-family:Jost,system-ui,sans-serif;font-size:14px;line-height:1.3;position:relative;z-index:9990}
.flowla-petals-headerbar .fp-hb-mark{width:22px;height:22px}
.flowla-petals-headerbar .fp-hb-line{font-weight:600;letter-spacing:.01em}
.flowla-petals-headerbar .fp-hb-bell{border:0;border-radius:999px;background:#85C727;color:#1F3A24;font-family:inherit;font-size:13px;font-weight:700;padding:6px 14px;cursor:pointer;transition:background .15s}
.flowla-petals-headerbar .fp-hb-bell:hover{background:#E8F7D5}
@media(max-width:480px){.flowla-petals-headerbar{font-size:12.5px;gap:8px}.flowla-petals-headerbar .fp-hb-bell{font-size:12px;padding:5px 12px}}

/* v2.4.0 — My Petals members area */
.fp-account{font-family:Jost,system-ui,sans-serif;color:#1F3A24}
.fp-acc-hero{display:flex;gap:16px;align-items:center;background:#E8F7D5;border-radius:16px;padding:18px 20px;margin-bottom:16px}
.fp-acc-mark{width:48px;height:48px;flex:none}
.fp-acc-hero h3{margin:0 0 4px;font-size:20px}
.fp-acc-bal{margin:0 0 8px;font-size:14.5px}
.fp-acc-progress b{width:16px;height:16px}
.fp-acc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:700px){.fp-acc-grid{grid-template-columns:1fr}}
.fp-acc-card{background:#fff;border:2px solid #d8e6c4;border-radius:14px;padding:16px 18px}
.fp-acc-card h4{margin:0 0 8px;color:#2A6132;font-size:15px}
.fp-acc-note{font-size:12.5px;color:#5a7a4a}
.fp-acc-tiers{list-style:none;margin:0;padding:0}
.fp-acc-tiers li{padding:7px 0 7px 26px;position:relative;font-size:13.5px;opacity:.55}
.fp-acc-tiers li.unlocked{opacity:1}
.fp-acc-tiers li:before{content:'○';position:absolute;left:2px;color:#85C727}
.fp-acc-tiers li.unlocked:before{content:'●'}
.fp-acc-tiers li span{display:block;color:#5a7a4a;font-size:12px}
.fp-acc-occs{list-style:none;margin:0 0 10px;padding:0}
.fp-acc-occs li{display:flex;gap:8px;align-items:center;padding:6px 0;border-bottom:1px dashed #E8F7D5;font-size:13.5px}
.fp-acc-occs li span{color:#5a7a4a}
.fp-acc-on{color:#2A6132;font-size:12px;font-style:normal;font-weight:700;margin-left:auto}
.fp-acc-btn{border:0;border-radius:9px;background:#2A6132;color:#fff;font-family:inherit;font-size:12.5px;font-weight:600;padding:7px 13px;cursor:pointer;margin-left:auto}
.fp-acc-btn:hover{background:#1F3A24}
.fp-occ-add{display:flex;gap:6px;flex-wrap:wrap}
.fp-occ-add input{flex:1;min-width:120px;border:1.5px solid #E8F7D5;border-radius:9px;padding:7px 10px;font-family:inherit;font-size:13px}
.fp-acc-ledger{list-style:none;margin:0;padding:0;font-size:13px}
.fp-acc-ledger li{padding:5px 0;border-bottom:1px dashed #E8F7D5}
.fp-acc-ledger em{color:#8aa07c;font-size:11.5px;margin-left:6px}

.fp-acc-devices{list-style:none;margin:0 0 10px;padding:0;font-size:13px}
.fp-acc-devices li{padding:4px 0;border-bottom:1px dashed #E8F7D5}
.fp-acc-devices small{color:#8aa07c;margin-left:6px}

/* v2.8.1 — Notification Lab */
#fp-lab{position:fixed;inset:0;background:rgba(31,58,36,.55);z-index:999999;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto}
#fp-lab .fp-lab-card{background:#fff;border-radius:18px;max-width:640px;width:100%;padding:26px 28px;font-family:Jost,system-ui,sans-serif;color:#1F3A24;box-shadow:0 22px 60px rgba(31,58,36,.4)}
#fp-lab h2{margin:0 0 10px}
#fp-lab .fp-lab-line{margin:8px 0;font-size:14.5px;line-height:1.5;border-left:3px solid #d8e6c4;padding-left:10px}
#fp-lab .fp-lab-line.ok{border-color:#85C727}
#fp-lab .fp-lab-line.bad{border-color:#c0392b}
#fp-lab .fp-lab-btns{display:flex;gap:10px;margin:14px 0 6px;flex-wrap:wrap}
#fp-lab .fp-lab-btns button{flex:1;min-width:220px;border:0;border-radius:10px;background:#2A6132;color:#fff;font-family:inherit;font-weight:700;font-size:14px;padding:12px;cursor:pointer}
#fp-lab .fp-lab-btns button:hover{background:#1F3A24}
#fp-lab .fp-lab-help{background:#FFF6E5;border-radius:10px;padding:12px 14px;font-size:13.5px;line-height:1.55;margin-top:10px}

/* v2.10.0 — the coupon reveal box */
.fp-codebox{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:999999;background:#fff;border:2px solid #85C727;border-radius:16px;padding:18px 22px 14px;max-width:340px;width:calc(100% - 32px);text-align:center;font-family:Jost,system-ui,sans-serif;color:#1F3A24;box-shadow:0 18px 50px rgba(31,58,36,.35)}
.fp-codebox-x{position:absolute;top:6px;right:12px;border:0;background:none;font-size:22px;color:#5A6B57;cursor:pointer}
.fp-codebox-mark{width:38px;height:38px}
.fp-codebox h3{margin:4px 0 4px;font-size:18px}
.fp-codebox p{margin:0 0 8px;font-size:13.5px;line-height:1.45}
.fp-codebox-code{background:#E8F7D5;border-radius:10px;padding:9px 12px;font-weight:800;letter-spacing:.06em;font-size:17px;margin:0 0 8px}
.fp-codebox-copy{border:0;border-radius:9px;background:#2A6132;color:#fff;font-family:inherit;font-weight:700;font-size:13px;padding:8px 16px;cursor:pointer}
.fp-codebox small{display:block;margin-top:8px;color:#8aa07c;font-size:11px;line-height:1.4}

/* v2.10.1 — iOS install steps on the ask card + lab close */
.fp-ios-steps{background:#E8F7D5;border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.6;color:#1F3A24;margin:10px 0 6px;text-align:left}
#fp-lab .fp-lab-x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:26px;color:#5A6B57;cursor:pointer}
#fp-lab .fp-lab-card{position:relative}

/* v2.11.0 — one-action iOS card */
.flowla-petals-card .fp-email-big{width:100%;border-radius:10px;font-size:14.5px;font-weight:700;padding:11px}
.fp-ios-more{border:0;background:none;color:#2A6132;font-family:inherit;font-size:12.5px;text-decoration:underline;cursor:pointer;margin:8px 0 0;display:block;width:100%;text-align:center}

/* v2.12.0 — the iOS procedure card */
.fp-ios-procedure{text-align:left;font-size:13px}
.fp-ios-procedure .fp-step{display:block;padding:7px 0;border-bottom:1px dashed #d8e6c4;line-height:1.45}
.fp-ios-procedure .fp-step b:first-child{display:inline-block;background:#1F3A24;color:#fff;border-radius:999px;width:20px;height:20px;text-align:center;line-height:20px;margin-right:7px;font-size:12px}
.fp-ios-procedure small{display:block;margin-top:8px;color:#2A6132;font-weight:600;font-size:12px}

/* v2.15.0 — the live Share button in step 1 */
.fp-ios-procedure .fp-share-btn{border:0;border-radius:9px;background:#2A6132;color:#fff;font-family:inherit;font-weight:700;font-size:13px;padding:8px 14px;cursor:pointer}

/* v2.16.1 — the truth panel */
#fp-debug{position:fixed;bottom:8px;left:8px;right:8px;z-index:2147483647;background:#111;color:#9fe870;font:12px/1.5 monospace;border-radius:10px;padding:10px 12px;max-height:45vh;overflow:auto;opacity:.96}
#fp-debug button{margin-top:8px;border:0;border-radius:8px;background:#9fe870;color:#111;font:700 12px monospace;padding:8px 12px}

/* v2.16.4 — the panel yields */
#fp-debug .fp-debug-bar{display:flex;gap:8px;justify-content:flex-end;margin-bottom:6px}
#fp-debug .fp-debug-bar button{border:0;border-radius:7px;background:#333;color:#9fe870;font:700 11px monospace;padding:5px 9px}
#fp-debug.fp-debug-minimised{max-height:34px;overflow:hidden;left:auto;right:8px;width:auto;max-width:60vw}
#fp-debug.fp-debug-minimised div:not(.fp-debug-bar){display:none}
#fp-debug.fp-debug-minimised button.fp-debug-min{background:#9fe870;color:#111}

/* v2.17.0 — the iOS wizard */
.fp-ios-procedure .fp-wiz-prize{font-size:19px;font-weight:800;color:#1F3A24;text-align:center;margin:2px 0 4px}
.fp-ios-procedure .fp-wiz-sub{font-size:13.5px;line-height:1.5;text-align:center;color:#2A4A30;margin:0 0 10px}
.fp-ios-procedure .fp-wiz-row{background:#fff;border:2px solid #d8e6c4;border-radius:12px;padding:12px;font-size:14px;text-align:center;margin:0 0 10px}
.fp-ios-procedure .fp-wiz-go{width:100%;border:0;border-radius:12px;background:#2A6132;color:#fff;font-family:inherit;font-weight:800;font-size:15.5px;padding:14px;cursor:pointer}
.fp-ios-procedure .fp-wiz-next{width:100%;border:0;border-radius:12px;background:#85C727;color:#1F3A24;font-family:inherit;font-weight:800;font-size:14px;padding:12px;cursor:pointer;margin-bottom:6px}
.fp-ios-procedure .fp-wiz-back{width:100%;border:0;background:none;color:#5a7a4a;font-family:inherit;font-size:12px;text-decoration:underline;cursor:pointer}
.fp-ios-procedure .fp-wiz-hint{font-size:13px;text-align:center;color:#2A4A30}

/* v2.17.1 — the visual target (Apple's row, drawn for pattern-matching) */
.fp-ios-procedure .fp-a2hs-demo{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #d9d9de;border-radius:12px;padding:13px 14px;margin:6px 0 4px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.fp-ios-procedure .fp-a2hs-label{font-size:15.5px;color:#111;font-weight:500;font-family:-apple-system,system-ui,Jost,sans-serif}
.fp-ios-procedure .fp-a2hs-ic{color:#111;flex:none}
.fp-ios-procedure .fp-wiz-tiny{font-size:11.5px;color:#7a8f6e;margin:2px 0 10px}

/* v2.17.2 — the pointing arrow (aimed at Safari's own bottom-right control) */
.fp-point-arrow{position:fixed;bottom:88px;right:26px;z-index:2147483646;font-size:38px;animation:fpBounce 1s ease-in-out infinite;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
@keyframes fpBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(14px)}}

/* v2.18.0 — the journey strip + the coach bar */
.fp-journey{display:flex;align-items:stretch;justify-content:center;gap:4px}
.fp-jstep{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border:1.5px solid #d8e6c4;border-radius:12px;padding:9px 5px;min-width:0}
.fp-jnum{background:#1F3A24;color:#fff;border-radius:999px;width:18px;height:18px;font:700 11px/18px Jost,sans-serif;text-align:center}
.fp-jmock{color:#1F3A24;background:#F2F8E8;border-radius:9px;padding:7px 10px;display:inline-flex}
.fp-jtxt{font-size:10.5px;line-height:1.35;text-align:center;color:#2A4A30}
.fp-jarrow{align-self:center;color:#85C727;font-weight:800;font-size:15px}
/* v2.19.3 — the card's journey: three full-width ROWS, larger icons
   (owner's design direction). The coach bar keeps the slim horizontal
   miniature — it must stay thin to live above Apple's menus. */
.fp-journey-big{flex-direction:column;gap:8px}
.fp-journey-big .fp-jstep{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 14px;width:100%;box-sizing:border-box}
.fp-journey-big .fp-jnum{flex:none}
.fp-journey-big .fp-jmock{flex:none;padding:11px 14px}
.fp-journey-big .fp-jmock svg{width:30px;height:30px}
.fp-journey-big .fp-jtxt{font-size:13.5px;line-height:1.45;text-align:left}
.fp-journey-big .fp-jarrow{display:none}
.fp-ios-procedure .fp-wiz-go{width:100%;border:0;border-radius:12px;background:#2A6132;color:#fff;font-family:inherit;font-weight:800;font-size:15px;padding:14px;cursor:pointer;margin-top:12px}
.fp-coach{position:fixed;top:0;left:0;right:0;z-index:2147483646;padding:8px 10px;pointer-events:none}
.fp-coach-inner{pointer-events:auto;background:#fff;border:2px solid #85C727;border-radius:16px;box-shadow:0 8px 30px rgba(31,58,36,.28);padding:9px 10px;max-width:560px;margin:0 auto;font-family:Jost,system-ui,sans-serif}
.fp-coach .fp-journey{gap:3px}
.fp-coach .fp-jstep{padding:6px 4px;border-radius:10px}
.fp-coach .fp-jmock{padding:5px 8px}
.fp-coach .fp-jtxt{font-size:9.5px}
.fp-coach-foot{display:flex;align-items:center;gap:8px;margin-top:7px}
.fp-coach-foot span{flex:1;font-size:11.5px;color:#5a7a4a}
.fp-coach-done{border:0;border-radius:9px;background:#85C727;color:#1F3A24;font-family:inherit;font-weight:800;font-size:12.5px;padding:7px 12px;cursor:pointer}
.fp-coach-x{border:0;background:none;font-size:20px;color:#8aa07c;cursor:pointer;line-height:1;padding:0 4px}
.fp-coach-final{font-size:13.5px;line-height:1.5;color:#1F3A24;padding:2px 2px 0}
.fp-coach-x2{border:0;border-radius:9px;background:#2A6132;color:#fff;font-family:inherit;font-weight:700;font-size:12.5px;padding:8px 14px;cursor:pointer;margin-left:auto}

/* v2.19.0 — the app frame */
.fp-appicon{display:flex;flex-direction:column;align-items:center;gap:4px;margin:8px 0 10px}
.fp-appicon img{width:64px;height:64px;border-radius:15px;background:#fff;box-shadow:0 4px 14px rgba(31,58,36,.18);padding:8px;box-sizing:border-box}
.fp-appicon span{font-size:11.5px;color:#1F3A24;font-weight:600;font-family:-apple-system,system-ui,Jost,sans-serif}
.fp-wiz-trust{font-size:11px;line-height:1.5;color:#7a8f6e;text-align:center;margin-top:10px}
.fp-install-app{width:100%;border:0;border-radius:12px;background:#1F3A24;color:#fff;font-family:inherit;font-weight:800;font-size:14.5px;padding:13px;cursor:pointer;margin:8px 0}

/* v2.21.1 — the real mark atop the card, bare (P-BRAND) */
.flowla-petals-card .fp-card-mark{width:46px;height:46px;display:block;margin:0 auto 6px;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}

/* v2.21.2 — the owner's lead lines on the big rows */
.fp-journey-big .fp-jlead{display:block;font-weight:800;font-size:14px;color:#1F3A24;margin-bottom:2px;letter-spacing:.02em}

/* v2.21.6 — the home-screen icon tile as step 4 (rendered as iOS renders it) */
.fp-journey .fp-jicon{flex:none;display:inline-flex;background:#fff;border-radius:10px;box-shadow:0 2px 8px rgba(31,58,36,.22);padding:0;border:0!important;overflow:hidden}
.fp-journey .fp-jicon img{width:34px;height:34px;display:block;border:0!important;background:none!important}
.fp-journey-big .fp-jicon{border-radius:13px}
.fp-journey-big .fp-jicon img{width:52px;height:52px}
.fp-inline-mark{width:17px;height:17px;vertical-align:-3px;border:0!important;background:none!important;display:inline-block}

/* v2.22.3 — P-BRAND force on the code-box mark (theme was framing it) */
.fp-codebox-mark{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}

/* v2.28.1 — the tenth-bouquet pitch on subscription product pages */
.fp-subpitch{display:flex;align-items:center;gap:12px;background:#F2F8E8;border:1.5px solid #85C727;border-radius:14px;padding:12px 14px;margin:14px 0;font-family:Jost,system-ui,sans-serif}
.fp-subpitch-mark{width:40px;height:40px;flex:none;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.fp-subpitch-txt{flex:1;min-width:0}
.fp-subpitch-txt b{display:block;color:#1F3A24;font-size:14.5px;line-height:1.3}
.fp-subpitch-txt span{display:block;color:#2A4A30;font-size:12.5px;line-height:1.45;margin-top:2px}
.fp-subpitch-bell{flex:none;border:0;border-radius:999px;background:#2A6132;color:#fff;font-family:inherit;font-weight:700;font-size:12.5px;padding:9px 14px;cursor:pointer}
.fp-subpitch-bell:hover{background:#1F3A24}
@media(max-width:560px){.fp-subpitch{flex-wrap:wrap}.fp-subpitch-bell{width:100%}}
