/* RTA tactical skin for FFL Overwatch Connect layaway surfaces + the Mission Complete product cards.
   Plugin markup is structure-only; every colour/type decision lives here. Palette: --red lines, --amber cues,
   --green success, white text on #0d0d0d / #141414 panels. No grey text on black. */

/* ── Checkout: Layaway payment box ─────────────────────────────────────── */
.woocommerce-checkout #payment div.payment_box.payment_method_fflo_layaway{padding:18px 20px 20px;color:#fff}
.payment_method_fflo_layaway .fflo-lw-intro{color:#fff;font-size:.95rem;line-height:1.5}
.payment_method_fflo_layaway .fflo-lw-eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:1.8px;text-transform:uppercase;color:var(--red)}
.payment_method_fflo_layaway .fflo-lw-eyebrow>span::before{content:"// "}
.payment_method_fflo_layaway .fflo-lw-policy-link,
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-agree a{color:var(--amber);font-family:var(--mono);font-size:.66rem;letter-spacing:1.4px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(255,165,0,.55);padding-bottom:1px}
.payment_method_fflo_layaway .fflo-lw-policy-link:hover,
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-agree a:hover{color:#fff;border-bottom-color:#fff}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-plan{border:1px solid rgba(255,68,68,.45);background:#141414;padding:10px 14px;margin:0 0 6px;font-size:1rem;letter-spacing:0}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-plan:has(input:checked){border-color:var(--red);background:#1a0d0d;box-shadow:0 0 14px -6px rgba(255,68,68,.7)}
.payment_method_fflo_layaway .fflo-lw-plan input[type=radio]{accent-color:var(--red)}
.payment_method_fflo_layaway .fflo-lw-plan__name{color:#fff;font-weight:800}
.payment_method_fflo_layaway .fflo-lw-plan__meta{color:var(--amber);font-family:var(--mono);font-size:.7rem;letter-spacing:1.2px;text-transform:uppercase;font-weight:700}
.payment_method_fflo_layaway .fflo-lw-plan__detail{margin-top:12px}
.payment_method_fflo_layaway .fflo-lw-terms{background:#0d0d0d;border:1px solid rgba(255,68,68,.45);color:#fff;scrollbar-color:var(--red) #0d0d0d;scrollbar-width:thin}
.payment_method_fflo_layaway .fflo-lw-terms p{color:#fff;margin:0 0 .6em}
.payment_method_fflo_layaway .fflo-lw-terms::-webkit-scrollbar{width:10px}
.payment_method_fflo_layaway .fflo-lw-terms::-webkit-scrollbar-track{background:#0d0d0d}
.payment_method_fflo_layaway .fflo-lw-terms::-webkit-scrollbar-thumb{background:var(--fill-crimson);border:2px solid #0d0d0d}
.payment_method_fflo_layaway .fflo-lw-scrollhint{color:var(--amber);font-family:var(--mono);font-size:.62rem;letter-spacing:1.6px;text-transform:uppercase}
.payment_method_fflo_layaway .fflo-lw-quote{background:#0d0d0d;border:1px solid var(--bd);border-top:2px solid var(--red);padding:4px 14px}
.payment_method_fflo_layaway .fflo-lw-quote__row{border-bottom:1px dashed rgba(255,68,68,.3);padding:9px 0}
.payment_method_fflo_layaway .fflo-lw-quote dt{color:#fff;font-family:var(--mono);font-size:.72rem;letter-spacing:1.4px;text-transform:uppercase;font-weight:700}
.payment_method_fflo_layaway .fflo-lw-quote dt small{color:var(--amber);font-size:.62rem;letter-spacing:1px}
.payment_method_fflo_layaway .fflo-lw-quote dd{color:#fff;font-family:var(--mono);font-size:.95rem}
.payment_method_fflo_layaway .fflo-lw-quote__due dt,.payment_method_fflo_layaway .fflo-lw-quote__due dd{color:var(--red)}
.payment_method_fflo_layaway .fflo-lw-quote__due dd{font-size:1.4rem;font-weight:900;text-shadow:0 0 14px rgba(255,68,68,.45)}
.payment_method_fflo_layaway .fflo-lw-quote__note{color:#fff;font-size:.86rem}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-agree{border:1px solid rgba(255,68,68,.45);background:#120808;color:#fff;font-family:var(--mono);font-size:.74rem;letter-spacing:1.1px;text-transform:uppercase;font-weight:700;padding:10px 14px}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-agree:has(input:checked){border-color:var(--green);box-shadow:0 0 14px -6px rgba(0,255,136,.6)}
.payment_method_fflo_layaway .fflo-lw-agree input[type=checkbox]{width:20px;height:20px;accent-color:var(--red);flex:0 0 auto}
.payment_method_fflo_layaway .fflo-lw-card{border:1px solid rgba(255,68,68,.45);background:#0d0d0d;padding:14px 16px 8px}
.payment_method_fflo_layaway .fflo-lw-card legend{color:var(--red);font-family:var(--mono);font-size:.68rem;letter-spacing:1.8px;text-transform:uppercase;padding:0 8px}
.payment_method_fflo_layaway .fflo-lw-card legend::before{content:"// "}
.payment_method_fflo_layaway .fflo-lw-card__note{color:#fff;font-size:.88rem}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-token{border:1px solid var(--bd);background:#141414;color:#fff;font-size:.95rem;letter-spacing:0;font-weight:700;padding:8px 14px}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-token:hover{border-color:rgba(255,68,68,.6)}
.woocommerce-checkout #payment ul.payment_methods li label.fflo-lw-token:has(input:checked){border-color:var(--red);background:#1a0d0d}
.payment_method_fflo_layaway .fflo-lw-token input[type=radio]{accent-color:var(--red)}
.payment_method_fflo_layaway .fflo-lw-newcard{margin-top:6px}
.payment_method_fflo_layaway .fflo-lw-newcard label{color:#fff;font-family:var(--mono);font-size:.66rem;letter-spacing:1.4px;text-transform:uppercase;display:block;margin:0 0 5px}
.payment_method_fflo_layaway .fflo-lw-save label{color:#fff;font-family:var(--mono);font-size:.7rem;letter-spacing:1.2px;text-transform:uppercase}
.payment_method_fflo_layaway .fflo-lw-save input{accent-color:var(--red);width:18px;height:18px}
.payment_method_fflo_layaway .fflo-lw-locked{color:#fff;border:1px solid rgba(255,165,0,.5);background:#141414;padding:12px 14px}
.payment_method_fflo_layaway .fflo-lw-locked a{color:var(--amber)}

/* ── My Account › Layaways + /layaway-pay ─────────────────────────────── */
.fflo-plan-card,.fflo-pay-card{background:#0d0d0d;border:1px solid var(--bd);border-top:2px solid var(--red);color:#fff;position:relative;overflow:hidden}
.fflo-plan-card::before,.fflo-pay-card::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 2px 2px,rgba(255,68,68,.05) 1px,transparent 1px);background-size:22px 22px;pointer-events:none}
.fflo-plan-card>*,.fflo-pay-card>*{position:relative}
.fflo-plan__eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:1.8px;text-transform:uppercase;color:var(--red);font-weight:700}
.fflo-plan__eyebrow::before{content:"// "}
.fflo-plan__number,.fflo-pay__title{font-family:var(--mono);font-size:1.6rem;letter-spacing:2px;color:#fff;font-weight:900;text-transform:uppercase}
.fflo-status{font-family:var(--mono);font-size:.7rem;letter-spacing:1.6px;text-transform:uppercase;border-radius:0}
.fflo-status--active{color:var(--amber);border-color:var(--amber);background:rgba(255,165,0,.08)}
.fflo-status--paid{color:var(--green);border-color:var(--green);background:rgba(0,255,136,.08)}
.fflo-status--cancelled,.fflo-status--ignored{color:var(--red);border-color:var(--red)}
.fflo-progress{background:#1a1a1a;border:1px solid var(--bd);height:12px}
.fflo-progress__bar{background:linear-gradient(90deg,var(--fill-crimson),var(--red));box-shadow:0 0 12px rgba(255,68,68,.6)}
.fflo-plan-card--paid .fflo-progress__bar{background:linear-gradient(90deg,#007a41,var(--green));box-shadow:0 0 12px rgba(0,255,136,.6)}
.fflo-progress__label{font-family:var(--mono);font-size:.7rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--amber)}
.fflo-progress__label .amount{color:#fff}
.fflo-money{background:#141414;border:1px solid var(--bd);padding:4px 14px}
.fflo-money__row{border-bottom:1px dashed rgba(255,68,68,.3)}
.fflo-money dt{font-family:var(--mono);font-size:.72rem;letter-spacing:1.4px;text-transform:uppercase;color:#fff}
.fflo-money dd{font-family:var(--mono);color:#fff}
.fflo-money__row--owed dt,.fflo-money__row--owed dd{color:var(--red)}
.fflo-money__row--owed dd{font-size:1.5rem;font-weight:900;text-shadow:0 0 14px rgba(255,68,68,.45)}
.fflo-plan-card--paid .fflo-money__row--owed dt,.fflo-plan-card--paid .fflo-money__row--owed dd{color:var(--green);text-shadow:none}
.fflo-items__row{border-bottom:1px dashed rgba(255,68,68,.3);color:#fff}
.fflo-items__qty{font-family:var(--mono);color:var(--amber)}
.fflo-items__name{font-weight:700;text-transform:uppercase;font-size:.9rem}
.fflo-items__sku{font-family:var(--mono);font-size:.68rem;letter-spacing:1px;color:var(--amber)}
.fflo-history th{font-family:var(--mono);font-size:.66rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--red);border-bottom:1px solid rgba(255,68,68,.45)}
.fflo-history td{color:#fff;font-family:var(--mono);font-size:.86rem;border-bottom:1px dashed rgba(255,68,68,.3)}
.fflo-history__amount{color:var(--green)!important}
.fflo-btn,.fflo-btn:visited{background:var(--fill-crimson)!important;color:#fff!important;border:1px solid var(--red)!important;font-family:var(--mono)!important;font-weight:800!important;letter-spacing:1.6px!important;text-transform:uppercase!important;font-size:.8rem!important;border-radius:0!important;text-decoration:none!important;box-shadow:0 0 16px -6px rgba(255,68,68,.7)}
.fflo-btn:hover{background:var(--fill-crimson-hot)!important;box-shadow:0 0 22px -4px rgba(255,68,68,.9)}
.fflo-plan__actions-note{color:#fff;font-size:.86rem}
.fflo-pay-page{color:#fff}
.fflo-pay-amount__symbol{color:var(--red);font-family:var(--mono)}
.fflo-pay-amount input{background:#141414;border:1px solid var(--field-bd);color:#fff;font-family:var(--mono);font-weight:700;border-radius:0}
.fflo-pay-amount input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
.fflo-pay-amount__full{background:transparent;border:1px solid var(--amber);color:var(--amber);font-family:var(--mono);font-size:.7rem;letter-spacing:1.4px;text-transform:uppercase;font-weight:700;border-radius:0}
.fflo-pay-amount__full:hover{background:rgba(255,165,0,.12);color:#fff}
.fflo-pay-form__hint{color:#fff}
.fflo-error{color:#fff;border-color:var(--red);background:#1a0505;border-left:3px solid var(--red)}

/* ── Mission Complete: products as tactical cards, totals as a readout ── */
.rta-order-received table.order_details{border-collapse:separate;border-spacing:0 8px}
.rta-order-received table.order_details thead th{font-family:var(--mono);font-size:.66rem;letter-spacing:1.8px;text-transform:uppercase;color:var(--red);border-bottom:1px solid rgba(255,68,68,.45);padding:6px 8px 10px}
.rta-order-received table.order_details thead th:first-child::before{content:"// "}
.rta-order-received table.order_details tbody tr.rta-od-row td{background:#141414;border:1px solid var(--bd);border-left:3px solid var(--red);padding:12px 14px;vertical-align:middle}
.rta-order-received table.order_details tbody tr.rta-od-row td.rta-od-total{border-left:0;text-align:right;font-family:var(--mono);font-size:1.15rem;font-weight:900;color:#fff;white-space:nowrap}
.rta-order-received table.order_details tbody tr.rta-od-row td.rta-od-product{border-right:0}
.rta-od-item{display:flex;align-items:center;gap:14px}
.rta-od-thumb{flex:0 0 64px;width:64px;height:64px;background:#fff;border:1px solid rgba(255,68,68,.45);display:grid;place-items:center;overflow:hidden}
.rta-od-thumb img{width:60px;height:60px;object-fit:contain;display:block}
.rta-od-name,.rta-od-name a{color:#fff!important;font-weight:800;text-transform:uppercase;font-size:.95rem;letter-spacing:.3px;text-decoration:none}
.rta-od-name a:hover{color:var(--red)!important}
.rta-od-readout{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:6px;font-family:var(--mono);font-size:.68rem;letter-spacing:1.2px;text-transform:uppercase}
.rta-od-k{color:var(--red)}
.rta-od-v{color:#fff}
.rta-od-v .product-quantity{color:var(--amber);font-weight:800}
.rta-order-received table.order_details tbody .wc-item-meta{margin:6px 0 0;padding:0;list-style:none;font-size:.8rem;color:#fff}
.rta-order-received table.order_details tfoot{position:relative}
.rta-order-received table.order_details tfoot tr:first-child th,.rta-order-received table.order_details tfoot tr:first-child td{padding-top:18px;border-top:2px solid var(--red)}
.rta-order-received table.order_details tfoot th,.rta-order-received table.order_details tfoot td{padding:8px;border-bottom:1px dashed rgba(255,68,68,.3);font-family:var(--mono)}
.rta-order-received table.order_details tfoot td{text-align:right;color:#fff}
.rta-order-received table.order_details tfoot tr:last-child th,.rta-order-received table.order_details tfoot tr:last-child td{border-bottom:0;font-size:1.3rem;padding-top:14px}
@media (max-width:600px){.rta-od-item{align-items:flex-start}.rta-od-thumb{flex-basis:52px;width:52px;height:52px}.rta-od-thumb img{width:48px;height:48px}.rta-order-received table.order_details tbody tr.rta-od-row td.rta-od-total{font-size:1rem}}

/* ── Mission Complete: layaway panel + payoff celebration ──────────────── */
.rta-lw-panel{background:#0d0d0d;border:1px solid var(--bd);border-left:3px solid var(--amber);padding:16px 18px;margin:0 0 18px;color:#fff}
.rta-lw-panel__eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--amber);margin:0 0 10px;font-weight:700}
.rta-lw-panel__bar{height:10px;background:#1a1a1a;border:1px solid var(--bd);margin:0 0 12px}
.rta-lw-panel__bar span{display:block;height:100%;background:linear-gradient(90deg,var(--fill-crimson),var(--red));box-shadow:0 0 12px rgba(255,68,68,.6)}
.rta-lw-panel__stats{list-style:none;margin:0 0 10px;padding:0;display:flex;gap:26px;flex-wrap:wrap}
.rta-lw-panel__stats li{display:flex;flex-direction:column;gap:2px}
.rta-lw-k{font-family:var(--mono);font-size:.64rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--red)}
.rta-lw-v{font-family:var(--mono);font-size:1.05rem;font-weight:800;color:#fff}
.rta-lw-v--owed{color:var(--amber)}
.rta-lw-panel__note{margin:0;font-size:.9rem;color:#fff}
.rta-lw-panel__note a{color:var(--red);text-decoration:underline}

.rta-payoff{position:relative;overflow:hidden;text-align:center;background:radial-gradient(120% 140% at 50% 100%,rgba(0,255,136,.16),#0d0d0d 60%);border:1px solid var(--green);padding:34px 20px 30px;margin:0 0 18px;color:#fff;box-shadow:0 0 34px -10px rgba(0,255,136,.55)}
.rta-payoff__scan{position:absolute;left:0;right:0;top:-8%;height:8%;background:linear-gradient(180deg,transparent,rgba(0,255,136,.35),transparent);animation:rtaPayoffScan 2.6s ease-in-out 1 forwards;pointer-events:none}
.rta-payoff__rings{position:absolute;left:50%;top:58px;width:0;height:0;pointer-events:none}
.rta-payoff__rings span{position:absolute;left:0;top:0;width:72px;height:72px;margin:-36px 0 0 -36px;border:2px solid var(--green);border-radius:50%;opacity:0;animation:rtaPayoffRing 1.8s ease-out infinite}
.rta-payoff__rings span:nth-child(2){animation-delay:.45s}
.rta-payoff__rings span:nth-child(3){animation-delay:.9s}
.rta-payoff__badge{position:relative;width:72px;height:72px;margin:0 auto 14px;border:2px solid var(--green);border-radius:50%;display:grid;place-items:center;font-size:1.6rem;color:var(--green);background:#0d0d0d;box-shadow:0 0 22px rgba(0,255,136,.55);animation:rtaPayoffPop .6s cubic-bezier(.2,1.6,.4,1) 1 both}
.rta-payoff__eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:2.2px;text-transform:uppercase;color:var(--green);margin:0 0 6px;font-weight:700}
.rta-payoff__title{font-family:var(--mono);font-size:1.7rem;letter-spacing:2px;text-transform:uppercase;color:#fff;margin:0 0 10px;font-weight:900;animation:rtaPayoffRise .7s ease-out .15s 1 both}
.rta-payoff__points{margin:6px 0 10px;animation:rtaPayoffRise .7s ease-out .35s 1 both}
.rta-payoff__count{font-family:var(--mono);font-size:3.2rem;font-weight:900;color:var(--green);text-shadow:0 0 22px rgba(0,255,136,.6);letter-spacing:2px;font-variant-numeric:tabular-nums}
.rta-payoff__unit{display:block;font-family:var(--mono);font-size:.78rem;letter-spacing:2.4px;text-transform:uppercase;color:var(--amber);margin-top:2px;font-weight:700}
.rta-payoff__sub{margin:0 auto;max-width:560px;color:#fff;font-size:.98rem;line-height:1.55;animation:rtaPayoffRise .7s ease-out .5s 1 both}
.rta-payoff--early{border-color:var(--green)}
@keyframes rtaPayoffScan{0%{top:-8%}100%{top:108%}}
@keyframes rtaPayoffRing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}
@keyframes rtaPayoffPop{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}
@keyframes rtaPayoffRise{0%{transform:translateY(10px);opacity:0}100%{transform:translateY(0);opacity:1}}
@media (prefers-reduced-motion:reduce){.rta-payoff__scan,.rta-payoff__rings span{animation:none;display:none}.rta-payoff__badge,.rta-payoff__title,.rta-payoff__points,.rta-payoff__sub{animation:none}}

/* ── Order-pay page (layaway balance payments): the button is live as soon as a method is chosen ─────── */
body.woocommerce-order-pay #place_order{background:var(--fill-crimson)!important;color:#fff!important;border-color:var(--red)!important;cursor:pointer!important;opacity:1!important;box-shadow:0 0 18px -6px rgba(255,68,68,.75)}
body.woocommerce-order-pay #place_order:hover{background:var(--fill-crimson-hot)!important}
body.woocommerce-order-pay #place_order:disabled{background:#1a0a0a!important;color:rgba(255,255,255,.55)!important;cursor:not-allowed!important;box-shadow:none}

/* ── Mission Complete: plan payment receipt variant ───────────────────── */
.rta-oc-hero--payment .rta-oc-sub{color:#fff}
.rta-oc-v--done{color:var(--green)}
.rta-lw-receipt{background:#0d0d0d;border:1px solid var(--bd);border-left:3px solid var(--green);padding:16px 18px;margin:0 0 18px;color:#fff}
.rta-lw-receipt__eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--green);margin:0 0 10px;font-weight:700}
.rta-lw-receipt__rows{list-style:none;margin:0 0 10px;padding:0;display:flex;gap:26px;flex-wrap:wrap}
.rta-lw-receipt__rows li{display:flex;flex-direction:column;gap:2px}
.rta-lw-v--mono{font-size:.8rem;letter-spacing:.5px}
.rta-lw-receipt__note{margin:0;font-size:.9rem;color:#fff}
.rta-lw-receipt__note a{color:var(--red);text-decoration:underline}
