
/* Theme-independent homepage reset */
html:has(body.flowkeyops-landing),body.flowkeyops-landing{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;background:#fff!important;overflow-x:hidden!important}
body.flowkeyops-landing .fko-site{margin:0!important;width:100%!important;max-width:none!important;min-height:100vh!important}
body.flowkeyops-landing #wpadminbar~.fko-site{margin-top:0!important}
body.flowkeyops-landing header:not(.fko-v4-nav),body.flowkeyops-landing footer:not(.fko-v4-benefits),body.flowkeyops-landing .wp-site-blocks,body.flowkeyops-landing .wp-block-group.alignfull{max-width:none!important}


/* FlowKeyOps Site Kit v5 — approved navy / white / orange homepage */
:root{--fko-navy:#031a37;--fko-navy2:#071f40;--fko-navy3:#0b294d;--fko-orange:#ff5a00;--fko-orange2:#ff6a13;--fko-text:#071b3b;--fko-muted:#536682;--fko-line:#dce4ee;--fko-soft:#f7f9fc;--fko-green:#19b978;--fko-red:#ff4f5e;--fko-blue:#4f8cff}
.fko-site{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--fko-text);background:#fff;line-height:1.55;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;overflow:hidden}
.fko-site *{box-sizing:border-box}.fko-site a{text-decoration:none}.fko-v4-wrap{width:min(1460px,calc(100% - 72px));margin:0 auto}
.fko-v4-nav{height:84px;background:var(--fko-navy);color:#fff;display:flex;align-items:center}.fko-v4-nav .fko-v4-wrap{display:grid;grid-template-columns:320px 1fr 250px;align-items:center;gap:20px}.fko-v4-nav .fko-brand,.fko-public-footer .fko-brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:900;font-size:30px;letter-spacing:-1.2px;white-space:nowrap}.fko-v4-nav .fko-brand img,.fko-public-footer .fko-brand img{width:52px;height:52px}.fko-v4-nav .fko-brand .ops,.fko-public-footer .fko-brand .ops{color:var(--fko-orange)}
.fko-v4-links{display:flex;justify-content:center;gap:34px}.fko-v4-links a,.fko-signin{color:#fff;font-weight:750;font-size:15px}.fko-v4-actions{display:flex;justify-content:flex-end;align-items:center;gap:24px}.fko-v4-start{background:var(--fko-orange);color:#fff;padding:13px 19px;border-radius:7px;font-weight:850;box-shadow:0 8px 22px rgba(255,90,0,.22)}
.fko-v4-hero{padding:20px 0 20px;background:#fff;border-bottom:1px solid var(--fko-line)}.fko-v4-hero-grid{display:grid;grid-template-columns:.74fr 1.26fr;gap:58px;align-items:center;min-height:525px}.fko-v4-copy{padding-left:4px}.fko-v4-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--fko-orange);font-size:13px;font-weight:900;margin-bottom:11px}.fko-v4-copy h1{font-size:clamp(50px,5vw,73px);line-height:1.03;letter-spacing:-.055em;margin:0 0 22px;color:var(--fko-text);font-weight:900}.fko-v4-copy h1 .accent{color:var(--fko-orange)}.fko-v4-copy p{max-width:545px;color:var(--fko-muted);font-size:18px;line-height:1.65;margin:0 0 28px}.fko-v4-buttons{display:flex;gap:18px;align-items:center}.fko-v4-primary,.fko-v4-secondary{height:57px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-weight:850;padding:0 25px;font-size:16px}.fko-v4-primary{background:var(--fko-orange);color:#fff;box-shadow:0 9px 22px rgba(255,90,0,.17)}.fko-v4-secondary{background:#fff;border:1px solid #6b7b95;color:var(--fko-text)}.fko-v4-trust{display:flex;gap:26px;align-items:center;margin-top:35px;color:#566985;font-size:13px;font-weight:650}.fko-v4-trust span{display:flex;gap:8px;align-items:center}.fko-v4-trust i{font-style:normal;color:#1f416c;font-size:17px}
/* Dashboard */
.fko-demo-app{background:linear-gradient(180deg,#061b36,#071b32);color:#fff;border:1px solid #163454;border-radius:14px;box-shadow:0 16px 30px rgba(3,22,49,.16);height:500px;overflow:hidden;display:grid;grid-template-columns:165px 1fr}.fko-demo-app .fko-app-side{border-right:1px solid #173958;background:#061a34;padding:15px 12px}.fko-demo-app .fko-app-brand{display:flex;align-items:center;gap:6px;font-size:17px;font-weight:900;margin-bottom:15px}.fko-demo-app .fko-app-brand img{width:34px;height:34px}.fko-demo-app .fko-app-brand .ops{color:var(--fko-orange)}.fko-demo-app .fko-app-nav{display:grid;gap:3px}.fko-demo-app .fko-app-nav div{padding:9px 10px;border-radius:6px;color:#e7edf6;font-size:12px;font-weight:650}.fko-demo-app .fko-app-nav div:before{display:inline-block;width:23px;color:#ccd7e8}.fko-demo-app .fko-app-nav .active{background:#153458;color:#fff}.fko-demo-app .fko-app-nav .active:before{color:var(--fko-orange)}.fko-demo-app .fko-app-nav div:nth-child(1):before{content:"▦"}.fko-demo-app .fko-app-nav div:nth-child(2):before{content:"⌘"}.fko-demo-app .fko-app-nav div:nth-child(3):before{content:"◇"}.fko-demo-app .fko-app-nav div:nth-child(4):before{content:"◈"}.fko-demo-app .fko-app-nav div:nth-child(5):before{content:"◉"}.fko-demo-app .fko-app-nav div:nth-child(6):before{content:"▢"}.fko-demo-app .fko-app-nav div:nth-child(7):before{content:"≣"}.fko-demo-app .fko-app-nav div:nth-child(8):before{content:"⚙"}
.fko-demo-app .fko-app-main{padding:13px 16px}.fko-demo-app .fko-app-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.fko-demo-app .fko-app-head h3{font-size:18px;margin:0 0 0;color:#fff}.fko-demo-app .fko-app-head small{display:block;color:#aab8ca;font-size:11px}.fko-demo-app .fko-env{font-size:11px;background:#0a2848;border:1px solid #21405e;border-radius:7px;padding:6px 10px;color:#eef4fa}.fko-demo-app .fko-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:9px}.fko-demo-app .fko-stat4{background:#0a2848;border:1px solid #183957;border-radius:9px;padding:11px 13px;min-height:88px}.fko-demo-app .fko-stat4 b{font-size:26px;line-height:1;display:block;margin-bottom:6px}.fko-demo-app .fko-stat4 span{font-size:11px;font-weight:750}.fko-demo-app .fko-stat4 small{display:block;font-size:10px;color:#a9b7c7;margin-top:5px}.fko-demo-app .fko-stat4 small.good{color:#27c486}.fko-demo-app .fko-stat4.alert b,.fko-demo-app .fko-stat4.alert small{color:var(--fko-orange)}
.fko-demo-app .fko-app-content{display:grid;grid-template-columns:1.72fr .92fr;gap:9px}.fko-demo-app .fko-panel{background:#082441;border:1px solid #173958;border-radius:9px;padding:12px}.fko-demo-app .fko-panel h4{font-size:12px;margin:0 0 10px;color:#fff}.fko-demo-app .fko-table4{width:100%;border-collapse:collapse;font-size:10px}.fko-demo-app .fko-table4 th{color:#aebac9;font-weight:600;text-align:left;padding:0 6px 7px}.fko-demo-app .fko-table4 td{border-top:1px solid #153451;padding:8px 6px;color:#f4f6f9}.fko-demo-app .fko-table4 .ok{color:#24be7f}.fko-demo-app .fko-table4 .drift{color:var(--fko-orange)}.fko-demo-app .fko-table4 .failed{color:var(--fko-red)}.fko-demo-app .fko-viewall{font-size:10px;font-weight:850;margin-top:12px;color:#fff}.fko-demo-app .fko-right-panels{display:grid;gap:9px}.fko-demo-app .fko-donut-row{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:8px}.fko-demo-app .fko-donut{width:78px;height:78px;margin:auto;border-radius:50%;background:conic-gradient(#20bd7e 0 47%,#4e8efa 47% 62%,#ff5662 62% 69%,#ff7a00 69% 100%);display:grid;place-items:center;position:relative}.fko-demo-app .fko-donut:after{content:"";width:48px;height:48px;background:#082441;border-radius:50%;position:absolute}.fko-demo-app .fko-donut strong{position:relative;z-index:2;font-size:22px}.fko-demo-app .fko-legend{font-size:10px;display:grid;gap:5px}.fko-demo-app .fko-legend span:before{content:"";width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px}.fko-demo-app .fko-legend span:nth-child(1):before{background:#20bd7e}.fko-demo-app .fko-legend span:nth-child(2):before{background:#4e8efa}.fko-demo-app .fko-legend span:nth-child(3):before{background:#ff5662}.fko-demo-app .fko-legend span:nth-child(4):before{background:#ff7a00}.fko-demo-app .fko-activity{font-size:10px;display:grid;gap:8px}.fko-demo-app .fko-activity div{display:grid;grid-template-columns:8px 1fr auto;gap:7px;align-items:start}.fko-demo-app .fko-activity div:before{content:"";width:7px;height:7px;border-radius:50%;background:#22bf7f;margin-top:3px}.fko-demo-app .fko-activity div:last-child:before{background:var(--fko-orange)}.fko-demo-app .fko-activity b{font-size:10px}.fko-demo-app .fko-activity small{color:#aab8ca;display:block}
/* Trusted strip */
.fko-v4-trusted{border-bottom:1px solid var(--fko-line);background:#fff;padding:3px 0 16px}.fko-v4-trusted-label{text-align:center;text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:#60718c;font-weight:900;margin-bottom:8px}.fko-v4-logo-row{display:grid;grid-template-columns:repeat(6,1fr);align-items:center;gap:26px;color:#445777;font-size:17px;font-weight:800}.fko-v4-logo-row span{text-align:center;white-space:nowrap}.fko-v4-logo-row b{font-size:23px;color:#294b76;margin-right:8px}
/* Five features */
.fko-v4-feature-section{padding:10px 0 18px;background:#fff}.fko-v4-feature-kicker{text-align:center;text-transform:uppercase;letter-spacing:.17em;color:var(--fko-orange);font-size:11px;font-weight:900;margin-bottom:2px}.fko-v4-feature-section h2{text-align:center;font-size:22px;letter-spacing:-.02em;margin:0 0 17px}.fko-v4-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}.fko-v4-feature{display:grid;grid-template-columns:52px 1fr;gap:13px}.fko-v4-feature-icon{height:48px;width:48px;background:var(--fko-navy);border-radius:10px;color:#fff;display:grid;place-items:center;font-size:25px;font-weight:800}.fko-v4-feature h3{font-size:13px;margin:1px 0 5px;color:var(--fko-text)}.fko-v4-feature p{font-size:12px;line-height:1.5;margin:0;color:#374b68}
/* Bottom benefits */
.fko-v4-benefits{background:var(--fko-navy);color:#fff;padding:17px 0}.fko-v4-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}.fko-v4-benefit{display:grid;grid-template-columns:50px 1fr;gap:14px;padding:2px 28px;border-right:1px solid rgba(255,255,255,.16)}.fko-v4-benefit:first-child{padding-left:3px}.fko-v4-benefit:last-child{border-right:0}.fko-v4-benefit-icon{font-size:35px;color:#d3dce8;line-height:1}.fko-v4-benefit h3{font-size:13px;margin:0 0 3px;color:#fff}.fko-v4-benefit p{font-size:12px;color:#e0e6ef;line-height:1.45;margin:0}
/* Theme containment */
body .entry-content>.fko-site,body .wp-block-post-content>.fko-site{margin-top:0!important}.fko-site+*{clear:both}.page-template-default .fko-site{margin-top:-1px}
@media(max-width:1100px){.fko-v4-nav .fko-v4-wrap{grid-template-columns:250px 1fr 190px}.fko-v4-links{gap:18px}.fko-v4-hero-grid{grid-template-columns:1fr;gap:28px;padding-top:30px}.fko-demo-app{max-width:850px;width:100%;margin:auto}.fko-v4-feature-grid{grid-template-columns:1fr 1fr}.fko-v4-benefit-grid{grid-template-columns:1fr 1fr}.fko-v4-benefit:nth-child(2){border-right:0}.fko-v4-logo-row{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.fko-v4-wrap{width:min(100% - 28px,1460px)}.fko-v4-nav{height:72px}.fko-v4-nav .fko-v4-wrap{grid-template-columns:1fr auto}.fko-v4-links,.fko-signin{display:none}.fko-v4-nav .fko-brand{font-size:24px}.fko-v4-nav .fko-brand img{width:42px;height:42px}.fko-v4-hero-grid{min-height:auto}.fko-v4-copy h1{font-size:48px}.fko-v4-copy p{font-size:16px}.fko-v4-buttons{align-items:stretch;flex-direction:column}.fko-v4-trust{flex-direction:column;align-items:flex-start;gap:9px}.fko-demo-app{height:auto;grid-template-columns:1fr}.fko-demo-app .fko-app-side{display:none}.fko-demo-app .fko-stats{grid-template-columns:1fr 1fr}.fko-demo-app .fko-app-content{grid-template-columns:1fr}.fko-v4-feature-grid,.fko-v4-benefit-grid,.fko-v4-logo-row{grid-template-columns:1fr}.fko-v4-feature{max-width:450px}.fko-v4-benefit{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:14px 0}.fko-v4-benefit:last-child{border-bottom:0}.fko-v4-logo-row span{text-align:left}}


/* ============================================================
   FlowKeyOps v6 — complete marketing-page design system
   ============================================================ */
body.flowkeyops-marketing-page{margin:0!important;padding:0!important;max-width:none!important;background:#fff!important;overflow-x:hidden!important}
body.flowkeyops-marketing-page>*:not(#wpadminbar):not(.fko-page-shell):not(script):not(style){max-width:none!important}
.fko-page-shell{width:100%;min-height:100vh;background:#fff;color:var(--fko-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.fko-page-main{width:100%;margin:0;padding:0}.fko-brand-link{text-decoration:none!important}
.fko-page-main>.fko-site{margin:0!important;width:100%!important;max-width:none!important;padding:0!important;overflow:visible!important}
.fko-page-main .fko-site{--fko-indigo:var(--fko-navy);--fko-indigo-2:var(--fko-navy2);--fko-indigo-3:var(--fko-navy3);--fko-bg:#fff;--fko-bg-alt:#f6f8fc;--fko-accent:var(--fko-orange);--fko-accent-dark:#d94b00;--fko-teal:var(--fko-orange);--fko-teal-dark:#d94b00;--fko-success:var(--fko-green);--fko-warn:#f59e0b;--fko-danger:var(--fko-red);--fko-radius:18px;--fko-shadow:0 16px 42px rgba(3,26,55,.09);color:var(--fko-text);line-height:1.65}
.fko-page-main .fko-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.fko-page-main .fko-hero-small{background:linear-gradient(135deg,var(--fko-navy) 0%,#08284d 100%);color:#fff;position:relative;overflow:hidden;padding:84px 0 72px}
.fko-page-main .fko-hero-small:after{content:"";position:absolute;right:-100px;bottom:-190px;width:460px;height:460px;border:1px solid rgba(255,90,0,.22);border-radius:50%;box-shadow:0 0 0 75px rgba(255,90,0,.035),0 0 0 150px rgba(255,255,255,.018);pointer-events:none}
.fko-page-main .fko-hero-small .fko-wrap{position:relative;z-index:1}
.fko-page-main .fko-kicker{display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border:1px solid rgba(255,255,255,.20);border-radius:999px;color:#e7edf8;background:rgba(255,255,255,.055);font-size:.82rem;font-weight:800;letter-spacing:.04em;text-transform:none}
.fko-page-main .fko-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fko-orange)}
/* The kicker is designed for the dark navy hero. On a light section its white text and translucent white fill are near-invisible, so restate it against the light background. */
.fko-page-main .fko-pricing-intro .fko-kicker{border-color:#ffc6a3;background:#fff0e7;color:#b63f00;font-size:var(--fko-price-kicker-size,15px);font-weight:var(--fko-price-kicker-weight,800);font-style:var(--fko-price-kicker-style,normal);letter-spacing:var(--fko-price-kicker-spacing,.04em)}
.fko-page-main .fko-pricing-intro .fko-kicker{color:var(--fko-price-kicker-color,#b63f00)}
.fko-page-main .fko-hero-small h1{font-size:clamp(2.7rem,5vw,4.8rem);line-height:1.04;letter-spacing:-.05em;max-width:930px;margin:20px 0 18px;color:#fff;font-weight:900}
.fko-page-main .fko-lede{font-size:clamp(1.05rem,2vw,1.28rem);color:#cbd6e8;max-width:840px;margin:0;line-height:1.7}
.fko-page-main .fko-section{padding:78px 0;background:#fff}.fko-page-main .fko-section-alt{background:#f6f8fc}
.fko-page-main .fko-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--fko-orange);font-size:.76rem;font-weight:900;margin-bottom:11px}
.fko-page-main .fko-h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.12;letter-spacing:-.04em;margin:0 0 16px;color:var(--fko-text);font-weight:900}
.fko-page-main .fko-sub{color:var(--fko-muted);font-size:1.08rem;max-width:800px;margin:0 0 34px;line-height:1.7}
.fko-page-main .fko-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fko-page-main .fko-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.fko-page-main .fko-card{background:#fff;border:1px solid var(--fko-line);border-radius:18px;padding:28px;box-shadow:0 12px 34px rgba(3,26,55,.07)}
.fko-page-main .fko-card h3{margin:0 0 10px;font-size:1.18rem;color:var(--fko-text);font-weight:850}.fko-page-main .fko-card p{margin:0;color:var(--fko-muted)}
.fko-page-main .fko-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;background:#fff2e9;border:1px solid #ffd0b3;color:#c94700;font-weight:900;margin-bottom:18px}
.fko-page-main .fko-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--fko-navy);border:1px solid #183958;border-radius:16px;padding:24px;color:#e6edf8;overflow:auto;white-space:pre-wrap;box-shadow:0 16px 42px rgba(3,26,55,.12);line-height:1.65}
.fko-page-main .fko-feature-list{display:grid;gap:12px;margin:22px 0 0;padding:0;list-style:none}.fko-page-main .fko-feature-list li{display:flex;gap:10px;color:#334155}.fko-page-main .fko-feature-list li:before{content:"✓";color:var(--fko-orange);font-weight:900}
.fko-page-main .fko-steps{counter-reset:fko}.fko-page-main .fko-step{position:relative;padding-left:68px;margin:0 0 36px}.fko-page-main .fko-step:before{counter-increment:fko;content:counter(fko);position:absolute;left:0;top:0;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--fko-navy);color:#ff8c4c;font-weight:900}.fko-page-main .fko-step h3{margin:0 0 7px;color:var(--fko-text);font-weight:850}.fko-page-main .fko-step p{margin:0;color:var(--fko-muted)}
.fko-page-main .fko-pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fko-page-main .fko-price-card{position:relative;background:#fff;border:1px solid var(--fko-line);border-radius:20px;padding:30px;box-shadow:0 16px 42px rgba(3,26,55,.09)}.fko-page-main .fko-price-card.featured{border:2px solid var(--fko-orange);box-shadow:0 20px 52px rgba(3,26,55,.14)}
.fko-page-main .fko-pricing-four{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
/* Cards share the container's rows so name, price, description, features and CTA line up across every card. */
@supports(grid-template-rows:subgrid){.fko-page-main .fko-pricing{grid-template-rows:auto auto auto 1fr auto}.fko-page-main .fko-pricing .fko-price-card{grid-row:span 5;grid-template-rows:subgrid}}.fko-pricing-intro{max-width:760px;margin:0 auto 28px;text-align:var(--fko-price-intro-align,center)}.fko-pricing-intro h2{margin:8px 0 12px}
/* Pricing typography hooks. Each falls back to the value that shipped, so an unset control changes nothing. */
.fko-page-main .fko-pricing-intro h2{font-size:var(--fko-price-heading-size,clamp(32px,4vw,50px));font-weight:var(--fko-price-heading-weight,900);font-style:var(--fko-price-heading-style,normal);color:var(--fko-price-heading-color,var(--fko-text))}
.fko-page-main .fko-pricing-intro p{font-size:var(--fko-price-desc-size,17px);font-weight:var(--fko-price-desc-weight,400);font-style:var(--fko-price-desc-style,normal);color:var(--fko-price-desc-color,var(--fko-muted))}
.fko-billing-toggle>label{font-size:var(--fko-price-toggle-size,16px);font-weight:var(--fko-price-toggle-weight,800);font-style:var(--fko-price-toggle-style,normal)}
.fko-page-main .fko-price-card h3{font-size:var(--fko-price-name-size,19px);font-weight:var(--fko-price-name-weight,850);font-style:var(--fko-price-name-style,normal);color:var(--fko-price-name-color,var(--fko-text))}
.fko-page-main .fko-price{font-size:var(--fko-price-amount-size,42px);font-weight:var(--fko-price-amount-weight,900);font-style:var(--fko-price-amount-style,normal);color:var(--fko-price-amount-color,var(--fko-text))}
.fko-page-main .fko-price small{font-size:var(--fko-price-period-size,15px);font-weight:var(--fko-price-period-weight,650);font-style:var(--fko-price-period-style,normal);color:var(--fko-price-period-color,var(--fko-muted))}
.fko-page-main .fko-price-card>p{font-size:var(--fko-price-plandesc-size,17px);font-weight:var(--fko-price-plandesc-weight,400);font-style:var(--fko-price-plandesc-style,normal);color:var(--fko-price-plandesc-color,var(--fko-muted))}
.fko-page-main .fko-price-card .fko-button{font-size:var(--fko-price-button-size,16px);font-weight:var(--fko-price-button-weight,850);font-style:var(--fko-price-button-style,normal)}
.fko-page-main .fko-price-card .fko-badge{font-size:var(--fko-price-badge-size,11px);font-weight:var(--fko-price-badge-weight,900);font-style:var(--fko-price-badge-style,normal);color:var(--fko-price-badge-color,#b63f00)}.fko-billing-toggle{text-align:center}.fko-billing-toggle>input{position:absolute;opacity:0;pointer-events:none}.fko-billing-toggle>label{display:inline-block;margin:0 -2px 30px;padding:11px 18px;border:1px solid var(--fko-line);background:#fff;color:var(--fko-text);cursor:pointer;font-weight:800}.fko-billing-toggle>label:first-of-type{border-radius:999px 0 0 999px}.fko-billing-toggle>label:nth-of-type(2){border-radius:0 999px 999px 0}.fko-billing-toggle>label strong{color:#b63f00;font-size:.8em}.fko-billing-toggle #fko-billing-monthly:checked+label,.fko-billing-toggle #fko-billing-annual:checked+label{border-color:var(--fko-orange);background:var(--fko-orange);color:#fff}.fko-billing-toggle #fko-billing-annual:checked+label strong{color:#fff}.fko-billing-toggle .fko-annual-price,.fko-billing-toggle .fko-annual-action{display:none}.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-monthly-price,.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-monthly-action{display:none}.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-annual-price,.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-annual-action{display:flex}.fko-price-card{display:grid;grid-template-rows:auto 70px minmax(8.5rem,auto) 1fr auto;text-align:left}.fko-price-card h3{align-self:start}.fko-price-card ul{align-self:start}.fko-price-card .fko-button{width:100%;min-height:54px}.fko-button{display:inline-flex;justify-content:center;align-items:center;padding:12px 16px;border:1px solid var(--fko-orange);border-radius:9px;text-align:center;text-decoration:none!important;font-weight:850}.fko-button-primary{background:var(--fko-orange);color:#fff!important}.fko-button-secondary{background:#fff;color:var(--fko-text)!important}
.fko-page-main .fko-price-card li.fko-annual-detail{display:none}.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-price-card li.fko-monthly-detail{display:none}.fko-billing-toggle #fko-billing-annual:checked~.fko-pricing .fko-price-card li.fko-annual-detail{display:flex}
.fko-page-main .fko-badge{position:absolute;top:17px;right:17px;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;background:#fff0e7;color:#b63f00;border:1px solid #ffc6a3;padding:6px 9px;border-radius:999px}.fko-page-main .fko-price{font-size:2.65rem;font-weight:900;letter-spacing:-.05em;margin:14px 0 4px;color:var(--fko-text)}.fko-page-main .fko-price small{font-size:.95rem;color:var(--fko-muted);font-weight:650}.fko-page-main .fko-price-card p{color:var(--fko-muted)}.fko-page-main .fko-price-card ul{padding:0;margin:22px 0 25px;list-style:none;display:grid;gap:9px;color:var(--fko-price-feature-color,#334155);font-size:var(--fko-price-feature-size,18px);font-weight:var(--fko-price-feature-weight,400);font-style:var(--fko-price-feature-style,normal);line-height:1.5}.fko-page-main .fko-price-card li{display:flex;align-items:baseline;gap:7px}.fko-page-main .fko-price-card li:before{content:"✓";flex:0 0 auto;color:var(--fko-orange);font-size:.82em;font-weight:900}.fko-page-main .fko-price-card li.fko-feature-accent{color:var(--fko-price-accent-color,#b63f00);font-size:var(--fko-price-accent-size,var(--fko-price-feature-size,18px));font-weight:var(--fko-price-accent-weight,400);font-style:var(--fko-price-accent-style,normal)}
.fko-page-main .fko-btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 20px;border-radius:9px;font-weight:850;border:1px solid var(--fko-line);color:var(--fko-text);background:#fff;transition:.18s transform,.18s background}.fko-page-main .fko-btn:hover{transform:translateY(-1px)}.fko-page-main .fko-btn-primary{background:var(--fko-orange);color:#fff;border-color:var(--fko-orange)}.fko-page-main .fko-btn-secondary{background:#fff;color:var(--fko-text);border-color:#9aabc2}
.fko-page-main .fko-security-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:start}.fko-page-main .fko-note{border-left:4px solid var(--fko-orange);padding:16px 18px;background:#fff5ef;color:#334155;border-radius:0 10px 10px 0}.fko-page-main .fko-note strong{color:var(--fko-text)}
.fko-page-main .fko-inline-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#eef2f8;color:var(--fko-text);padding:.15em .4em;border-radius:6px;border:1px solid var(--fko-line);font-size:.9em}
.fko-page-main .fko-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--fko-line);border-radius:16px;overflow:hidden}.fko-page-main .fko-table th,.fko-page-main .fko-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--fko-line)}.fko-page-main .fko-table th{color:#fff;background:var(--fko-navy)}.fko-page-main .fko-table td{color:var(--fko-muted)}.fko-page-main .fko-table tr:last-child td{border-bottom:0}
.fko-page-main .fko-faq details{border:1px solid var(--fko-line);border-radius:14px;background:#fff;padding:18px 20px;margin-bottom:12px}.fko-page-main .fko-faq summary{font-weight:800;cursor:pointer;color:var(--fko-text)}.fko-page-main .fko-faq details p{color:var(--fko-muted);margin:10px 0 0}
.fko-page-main .fko-formbox{background:#fff;border:1px solid var(--fko-line);border-radius:18px;padding:26px;box-shadow:0 16px 42px rgba(3,26,55,.08)}.fko-page-main .fko-formbox input,.fko-page-main .fko-formbox textarea,.fko-page-main .fko-formbox select{width:100%;background:#fff!important;color:var(--fko-text)!important;border:1px solid #c8d3e3!important;border-radius:9px!important;padding:11px!important}.fko-page-main .fko-formbox button,.fko-page-main .fko-formbox input[type=submit]{background:var(--fko-orange)!important;color:#fff!important;border:0!important;border-radius:9px!important;font-weight:850!important;padding:12px 18px!important}
/* Why FlowKeyOps: benefit-led visuals built from the existing brand system. */
.fko-page-main .fko-why-page .fko-why-hero{padding:76px 0;background:radial-gradient(circle at 78% 45%,rgba(255,90,0,.12),transparent 29%),linear-gradient(135deg,var(--fko-navy) 0%,#08284d 100%)}
.fko-page-main .fko-why-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:58px;align-items:center}
.fko-page-main .fko-why-page .fko-why-hero h1{max-width:720px}
.fko-page-main .fko-why-page .fko-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.fko-page-main .fko-why-page .fko-hero-actions .fko-btn-secondary{color:#fff;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.38)}
.fko-page-main .fko-why-visual{position:relative;min-height:430px;display:grid;place-items:center;isolation:isolate}
.fko-page-main .fko-why-ring{position:absolute;width:350px;height:350px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,90,0,.025)}
.fko-page-main .fko-why-ring:before,.fko-page-main .fko-why-ring:after{content:"";position:absolute;inset:50% auto auto 50%;background:rgba(255,255,255,.16);z-index:-1}
.fko-page-main .fko-why-ring:before{width:1px;height:350px;transform:translate(-50%,-50%) rotate(45deg)}
.fko-page-main .fko-why-ring:after{width:350px;height:1px;transform:translate(-50%,-50%) rotate(-45deg)}
.fko-page-main .fko-why-core{position:relative;z-index:2;width:166px;height:166px;border-radius:38px;display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#fff,#edf3fb);color:var(--fko-navy);box-shadow:0 24px 70px rgba(0,0,0,.35),inset 0 0 0 1px rgba(3,26,55,.08);font-weight:900;font-size:1.18rem;line-height:1.2}
.fko-page-main .fko-why-core:before{content:"";position:absolute;inset:-10px;border:1px solid rgba(255,90,0,.55);border-radius:44px}
.fko-page-main .fko-why-core b{display:block;color:var(--fko-orange);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.fko-page-main .fko-why-node{position:absolute;z-index:3;min-width:148px;padding:12px 14px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(7,31,64,.92);box-shadow:0 14px 34px rgba(0,0,0,.22);color:#fff;font-size:.78rem;font-weight:800;line-height:1.3;backdrop-filter:blur(8px)}
.fko-page-main .fko-why-node span{display:inline-grid;place-items:center;width:27px;height:27px;margin-right:8px;border-radius:8px;background:rgba(255,90,0,.16);color:#ff8c4c;font-size:1rem;vertical-align:middle}
.fko-page-main .fko-why-node-one{top:28px;left:10px}.fko-page-main .fko-why-node-two{top:54px;right:0}.fko-page-main .fko-why-node-three{bottom:45px;left:0}.fko-page-main .fko-why-node-four{right:12px;bottom:20px}
.fko-page-main .fko-why-outcomes-band{position:relative;z-index:4;background:linear-gradient(to bottom,transparent 0 50%,#f6f8fc 50% 100%),linear-gradient(135deg,var(--fko-navy) 0%,#08284d 100%)}
.fko-page-main .fko-why-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;border:1px solid var(--fko-line);border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(3,26,55,.12);overflow:hidden}
.fko-page-main .fko-why-outcome{padding:25px 28px;display:flex;align-items:center;gap:14px}.fko-page-main .fko-why-outcome+.fko-why-outcome{border-left:1px solid var(--fko-line)}
.fko-page-main .fko-why-outcome b{display:block;color:var(--fko-text);font-size:1rem}.fko-page-main .fko-why-outcome small{display:block;color:var(--fko-muted);margin-top:2px}
.fko-page-main .fko-why-outcome-icon{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#fff1e8;color:#c94700;font-size:1.25rem;font-weight:900}
.fko-page-main .fko-why-page .fko-section .fko-kicker{border-color:#ffc6a3;background:#fff0e7;color:#b63f00}
.fko-page-main .fko-why-benefit{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.fko-page-main .fko-why-benefit:after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--fko-orange),#ff9a61)}
.fko-page-main .fko-why-benefit:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(3,26,55,.12)}
.fko-page-main .fko-why-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:20px;border-radius:15px;background:linear-gradient(145deg,#fff5ef,#ffe3d2);border:1px solid #ffc9a8;color:#c94700;font-size:1.42rem;font-weight:900}
.fko-page-main .fko-why-card-label{display:block;margin-bottom:10px;color:#c94700;font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.fko-page-main .fko-why-use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fko-page-main .fko-why-use{display:flex;gap:18px;align-items:flex-start;min-width:0;padding:24px;background:#fff;border:1px solid var(--fko-line);border-radius:16px;box-shadow:0 10px 28px rgba(3,26,55,.055)}
.fko-page-main .fko-why-use-icon{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:var(--fko-navy);color:#ff8c4c;font-size:1.35rem;font-weight:900;box-shadow:inset 0 0 0 1px #183958}
.fko-page-main .fko-why-use>div:last-child{flex:1 1 auto;min-width:0;width:auto}.fko-page-main .fko-why-use h3{max-width:none;margin:2px 0 7px;color:var(--fko-text);font-size:1.08rem;line-height:1.35;word-break:normal;overflow-wrap:normal}.fko-page-main .fko-why-use p{max-width:none;margin:0;color:var(--fko-muted);line-height:1.65;word-break:normal;overflow-wrap:normal}
.fko-page-main .fko-why-flow{position:relative;min-height:330px;display:grid;align-content:center;gap:14px;padding:28px;border:1px solid var(--fko-line);border-radius:20px;background:linear-gradient(145deg,#fff,#f2f6fb);box-shadow:0 16px 42px rgba(3,26,55,.08)}
.fko-page-main .fko-why-flow-row{display:grid;grid-template-columns:1fr 38px 1fr;align-items:center;gap:8px}.fko-page-main .fko-why-flow-arrow{text-align:center;color:var(--fko-orange);font-size:1.3rem;font-weight:900}
.fko-page-main .fko-why-flow-box{padding:14px;border:1px solid var(--fko-line);border-radius:12px;background:#fff;color:var(--fko-text);font-size:.82rem;font-weight:800;text-align:center}.fko-page-main .fko-why-flow-box strong{display:block;color:var(--fko-orange);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
.fko-page-main .fko-why-flow-core{margin:2px auto;padding:15px 22px;border-radius:13px;background:var(--fko-navy);color:#fff;text-align:center;font-weight:900;box-shadow:0 12px 28px rgba(3,26,55,.22)}
.fko-page-main .fko-why-cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px}
@media(max-width:1000px){.fko-page-main .fko-why-hero-grid{grid-template-columns:1fr}.fko-page-main .fko-why-visual{max-width:600px;width:100%;margin:0 auto}}
@media(max-width:760px){.fko-page-main .fko-why-page .fko-why-hero{padding:58px 0 42px}.fko-page-main .fko-why-visual{min-height:380px;transform:scale(.9);margin:-12px auto}.fko-page-main .fko-why-outcomes{grid-template-columns:1fr}.fko-page-main .fko-why-outcome+.fko-why-outcome{border-left:0;border-top:1px solid var(--fko-line)}.fko-page-main .fko-why-use-grid{grid-template-columns:1fr}.fko-page-main .fko-why-use{gap:14px}.fko-page-main .fko-why-use-icon{flex-basis:48px;width:48px;height:48px}.fko-page-main .fko-why-node{min-width:128px;font-size:.7rem}.fko-page-main .fko-why-ring{width:290px;height:290px}.fko-page-main .fko-why-ring:before{height:290px}.fko-page-main .fko-why-ring:after{width:290px}}

/* Footer shared by all non-home pages */
.fko-public-footer{background:var(--fko-navy);color:#cbd6e8;padding:54px 0 22px;border-top:1px solid #183958}.fko-footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:58px}.fko-public-footer .fko-brand{font-size:25px}.fko-public-footer .fko-brand img{width:45px;height:45px}.fko-footer-brand p{max-width:380px;color:#9fb0c6;margin:16px 0 0;line-height:1.7}.fko-public-footer h4{color:#fff;margin:5px 0 14px;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.fko-public-footer a{display:block;color:#cbd6e8;margin:9px 0;font-size:.92rem}.fko-public-footer a:hover{color:#fff}.fko-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;color:#8297b3;font-size:.82rem}
@media(max-width:1180px){.fko-page-main .fko-pricing-four{grid-template-columns:1fr 1fr}}@media(max-width:1000px){.fko-page-main .fko-grid,.fko-page-main .fko-pricing{grid-template-columns:1fr 1fr}.fko-page-main .fko-grid-2,.fko-page-main .fko-security-grid{grid-template-columns:1fr}.fko-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.fko-page-main .fko-wrap{width:min(100% - 28px,1180px)}.fko-page-main .fko-grid,.fko-page-main .fko-pricing{grid-template-columns:1fr;grid-template-rows:none}.fko-page-main .fko-price-card,.fko-page-main .fko-pricing .fko-price-card{grid-row:auto;grid-template-rows:auto}.fko-page-main .fko-price-card p{min-height:0}.fko-page-main .fko-hero-small{padding:58px 0 50px}.fko-page-main .fko-section{padding:56px 0}.fko-footer-grid{grid-template-columns:1fr;gap:25px}.fko-footer-bottom{flex-direction:column;gap:6px}}

/* ============================================================
   FlowKeyOps v7 — customer, commerce, and WooCommerce shell
   ============================================================ */
body.flowkeyops-commerce-page{margin:0!important;padding:0!important;max-width:none!important;background:#f6f8fc!important;overflow-x:hidden!important}
body.flowkeyops-commerce-page>*:not(#wpadminbar):not(.fko-page-shell):not(script):not(style){max-width:none!important}
.fko-commerce-shell{min-height:100vh;background:#f6f8fc}
.fko-commerce-main{min-height:520px;color:var(--fko-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.fko-commerce-wrap{width:min(1320px,calc(100% - 64px));margin:0 auto}
.fko-commerce-hero{padding:42px 0 38px;border-bottom:4px solid var(--fko-orange);background:var(--fko-navy);color:#fff}
.fko-commerce-eyebrow{display:block;margin-bottom:8px;color:#ff8c4c;font-size:.72rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.fko-commerce-hero h1{max-width:900px;margin:0 0 8px;color:#fff;font-size:clamp(2rem,4vw,3.15rem);font-weight:900;letter-spacing:-.045em;line-height:1.05}
.fko-commerce-hero p{max-width:760px;margin:0;color:#cbd6e8;font-size:1rem;line-height:1.65}
.fko-commerce-content{min-height:500px;padding:42px 0 72px;background:#f6f8fc}
.fko-commerce-main .woocommerce{width:100%;color:var(--fko-text);font-size:15px;line-height:1.6}
.fko-commerce-main .woocommerce::before,.fko-commerce-main .woocommerce::after{display:table;clear:both;content:""}
.fko-commerce-main .woocommerce a{color:#c94700;text-decoration:none}
.fko-commerce-main .woocommerce a:hover{color:var(--fko-orange)}
.fko-commerce-main .woocommerce h2,.fko-commerce-main .woocommerce h3{color:var(--fko-text);font-weight:850;letter-spacing:-.025em}
.fko-commerce-main .woocommerce h2{font-size:1.55rem}.fko-commerce-main .woocommerce h3{font-size:1.15rem}

/* Notices and status messages */
.fko-commerce-main .woocommerce-error,.fko-commerce-main .woocommerce-info,.fko-commerce-main .woocommerce-message{margin:0 0 22px!important;padding:16px 18px 16px 48px!important;border:1px solid var(--fko-line);border-top:0!important;border-left:4px solid var(--fko-orange)!important;border-radius:8px;background:#fff;color:var(--fko-text);box-shadow:0 8px 24px rgba(3,26,55,.06)}
.fko-commerce-main .woocommerce-message{border-left-color:var(--fko-green)!important}.fko-commerce-main .woocommerce-error{border-left-color:var(--fko-red)!important}
.fko-commerce-main .woocommerce-error::before,.fko-commerce-main .woocommerce-info::before,.fko-commerce-main .woocommerce-message::before{top:16px;color:var(--fko-orange)}
.fko-commerce-main .woocommerce-message::before{color:var(--fko-green)}.fko-commerce-main .woocommerce-error::before{color:var(--fko-red)}

/* Buttons and form controls */
/* ⚠ Panel excluded here too, same reason as the fields below: these are
   `!important` so the panel cannot out-specify them, and the panel has its own
   button standard (pill radius) that check-button-standard.php enforces. */
.fko-commerce-main .woocommerce a.button:not(.fko-app *),.fko-commerce-main .woocommerce button.button:not(.fko-app *),.fko-commerce-main .woocommerce input.button,.fko-commerce-main .woocommerce #respond input#submit{min-height:44px;padding:11px 17px!important;border:1px solid var(--fko-orange)!important;border-radius:7px!important;background:var(--fko-orange)!important;color:#fff!important;font-weight:850!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important}
.fko-commerce-main .woocommerce a.button:hover,.fko-commerce-main .woocommerce button.button:hover,.fko-commerce-main .woocommerce input.button:hover,.fko-commerce-main .woocommerce #respond input#submit:hover{border-color:#d94b00!important;background:#d94b00!important;color:#fff!important}
.fko-commerce-main .woocommerce a.button.alt,.fko-commerce-main .woocommerce button.button.alt,.fko-commerce-main .woocommerce input.button.alt{background:var(--fko-orange)!important}
.fko-commerce-main .woocommerce-form input.input-text,.fko-commerce-main .woocommerce-EditAccountForm:not(.fko-app *) input.input-text,.fko-commerce-main .woocommerce-address-fields:not(.fko-app *) input.input-text,.fko-commerce-main .woocommerce-checkout input.input-text,.fko-commerce-main .woocommerce-checkout textarea,.fko-commerce-main .woocommerce-cart-form input.input-text,.fko-commerce-main .woocommerce form select:not(.fko-app *){width:100%;min-height:46px;padding:10px 12px!important;border:1px solid #bdc9d9!important;border-radius:7px!important;background:#fff!important;color:var(--fko-text)!important;box-shadow:none!important}
.fko-commerce-main .woocommerce-form input.input-text:focus,.fko-commerce-main .woocommerce-EditAccountForm:not(.fko-app *) input.input-text:focus,.fko-commerce-main .woocommerce-address-fields:not(.fko-app *) input.input-text:focus,.fko-commerce-main .woocommerce-checkout input.input-text:focus,.fko-commerce-main .woocommerce-checkout textarea:focus{border-color:var(--fko-orange)!important;outline:2px solid rgba(255,90,0,.16)!important;outline-offset:0}
/* 🔴 `:not(.fko-app *)` EXCLUDES THE CONTROL PANEL. These commerce rules are
   tuned for the WHITE commerce pages -- dark label text, a white input with a
   grey border, several of them `!important`. The panel renders the SAME
   WooCommerce edit-account form inside a DARK card (Profile section), and it
   sits inside `<main class="fko-commerce-main">`, so these applied there and
   painted black labels on navy with white boxes over the top.
   🔑 EXCLUDED AT THE SOURCE rather than fought from the panel stylesheet: the
   input rule uses `!important`, so the panel CANNOT out-specify it -- an
   `!important` war resolves by source order, which is unreadable across two
   files. This keeps the commerce pages exactly as they were.
   ⚠ `.fko-app` is the panel container; `:not(.fko-app *)` means "not anywhere
   inside it" and adds no specificity of its own beyond the argument. */
.fko-commerce-main .woocommerce form .form-row label:not(.fko-app *){margin-bottom:5px;color:var(--fko-text);font-size:.82rem;font-weight:800}
.fko-commerce-main .select2-container--default .select2-selection--single{height:46px;border:1px solid #bdc9d9;border-radius:7px;background:#fff}.fko-commerce-main .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px}.fko-commerce-main .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}

/* My Account: Woo navigation is one horizontal shell above the application. */
.flowkeyops-account-page.logged-in .fko-commerce-content>.fko-commerce-wrap{width:calc(100% - 64px)!important;max-width:1320px!important;margin-right:auto!important;margin-left:auto!important}
.flowkeyops-account-page.logged-in .fko-commerce-content>.fko-commerce-wrap>.woocommerce{width:100%!important;max-width:none!important;margin-right:0!important;margin-left:0!important}
.fko-commerce-main .woocommerce-MyAccount-navigation,.fko-commerce-main .woocommerce-MyAccount-content{box-sizing:border-box;width:100%!important;max-width:none!important;float:none!important}
.fko-commerce-main .woocommerce-MyAccount-navigation{margin:0 0 18px;padding:8px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;box-shadow:0 10px 30px rgba(3,26,55,.06);overflow-x:auto}
.fko-commerce-main .woocommerce-MyAccount-navigation ul{display:flex;width:max-content;min-width:100%;align-items:stretch;gap:6px;margin:0;padding:0;list-style:none}
.fko-commerce-main .woocommerce-MyAccount-navigation li{flex:1 0 150px;margin:0;padding:0;border:0}
.fko-commerce-main .woocommerce-MyAccount-navigation li a{display:flex;min-height:44px;align-items:center;justify-content:center;padding:9px 13px;border:1px solid #d9e0e8;border-radius:7px;background:#fff;color:#10243d;font-size:.9rem;font-weight:700;text-align:center;white-space:nowrap}
.fko-commerce-main .woocommerce-MyAccount-navigation li a:hover{border-color:var(--fko-orange);background:#fff7f0;color:#b84f00}
.fko-commerce-main .woocommerce-MyAccount-navigation li.is-active a{border-color:var(--fko-orange);background:#fff7f0;color:#b84f00}
.fko-commerce-main .woocommerce-MyAccount-content{min-width:0;padding:26px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;box-shadow:0 14px 38px rgba(3,26,55,.07)}
.fko-commerce-main .woocommerce-MyAccount-content:has(.fko-app),body.flowkeyops-control-panel-page .fko-commerce-main .woocommerce-MyAccount-content{padding:0;border:0;background:transparent;box-shadow:none}
.fko-commerce-main .woocommerce-MyAccount-content>p:first-child{margin-top:0}
.fko-commerce-main .woocommerce-Addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fko-commerce-main .woocommerce-Addresses::before,.fko-commerce-main .woocommerce-Addresses::after{display:none}
.fko-commerce-main .woocommerce-Address{width:auto!important;float:none!important;padding:20px;border:1px solid var(--fko-line);border-radius:8px;background:#f8fafc}

/* Logged-out customer access */
body:not(.logged-in).flowkeyops-account-page .fko-commerce-content>.fko-commerce-wrap{max-width:1040px}
body:not(.logged-in).flowkeyops-account-page .woocommerce .u-columns.col2-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body:not(.logged-in).flowkeyops-account-page .woocommerce .u-column1,body:not(.logged-in).flowkeyops-account-page .woocommerce .u-column2{width:auto;float:none}
.fko-commerce-main form.woocommerce-form-login,.fko-commerce-main form.woocommerce-form-register,.fko-commerce-main form.woocommerce-ResetPassword{margin:0!important;padding:28px!important;border:1px solid var(--fko-line)!important;border-radius:10px!important;background:#fff;box-shadow:0 14px 38px rgba(3,26,55,.08)}
.fko-commerce-main form.woocommerce-ResetPassword{max-width:620px}
.fko-commerce-main .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:6px;margin:10px 14px 10px 0}

/* Orders, subscriptions, cart, and checkout */
.fko-commerce-main .woocommerce table.shop_table{width:100%;overflow:hidden;margin:0 0 24px;border:1px solid var(--fko-line);border-collapse:separate;border-spacing:0;border-radius:9px;background:#fff}
.fko-commerce-main .woocommerce table.shop_table th,.fko-commerce-main .woocommerce table.shop_table td{padding:14px 15px;border-width:0 0 1px;border-color:var(--fko-line);text-align:left}
.fko-commerce-main .woocommerce table.shop_table th{background:var(--fko-navy);color:#fff;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.fko-commerce-main .woocommerce table.shop_table tr:last-child td{border-bottom:0}
.fko-commerce-main .cart-collaterals .cart_totals,.fko-commerce-main .woocommerce-checkout-review-order,.fko-commerce-main .woocommerce-billing-fields,.fko-commerce-main .woocommerce-additional-fields{padding:24px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;box-shadow:0 12px 32px rgba(3,26,55,.06)}
.fko-commerce-main .woocommerce .col2-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%}
.fko-commerce-main .woocommerce .col2-set::before,.fko-commerce-main .woocommerce .col2-set::after{display:none}
.fko-commerce-main .woocommerce .col2-set .col-1,.fko-commerce-main .woocommerce .col2-set .col-2{width:auto;float:none}
.fko-commerce-main #payment{border:1px solid var(--fko-line);border-radius:10px;background:#fff}
.fko-commerce-main #payment ul.payment_methods{border-color:var(--fko-line)}
.fko-commerce-main #payment div.payment_box{background:#f1f5f9;color:var(--fko-text)}
.fko-commerce-main #payment div.payment_box::before{border-bottom-color:#f1f5f9}
.fko-commerce-main .woocommerce-cart-form,.fko-commerce-main .woocommerce-order-details,.fko-commerce-main .woocommerce-customer-details{overflow:hidden;border:1px solid var(--fko-line);border-radius:14px;background:#fff;box-shadow:0 14px 38px rgba(3,26,55,.07)}
.fko-commerce-main .woocommerce-cart-form table.shop_table,.fko-commerce-main .woocommerce-order-details table.shop_table{margin:0;border:0;border-radius:0;box-shadow:none}
.fko-commerce-main .cart-collaterals .cart_totals{border-top:4px solid var(--fko-orange)}
.fko-commerce-main .cart-collaterals .cart_totals h2,.fko-commerce-main .woocommerce-order-details>h2,.fko-commerce-main .woocommerce-customer-details>h2{margin:-24px -24px 22px;padding:18px 24px;background:var(--fko-navy);color:#fff;font-size:1rem;letter-spacing:.01em}
.fko-commerce-main .woocommerce-order-details>h2,.fko-commerce-main .woocommerce-customer-details>h2{margin:0;padding:19px 24px}
.fko-commerce-main .woocommerce-order-details table.shop_table{border-top:1px solid var(--fko-line)}
.fko-commerce-main .woocommerce-customer-details address{margin:0;padding:24px;border:0;line-height:1.8}
.fko-commerce-main .woocommerce-order{display:grid;gap:24px}
.fko-commerce-main .woocommerce-order>p.woocommerce-thankyou-order-received{margin:0;padding:22px 24px;border:1px solid #bfe7d4;border-left:5px solid var(--fko-green);border-radius:12px;background:#f0fbf7;color:#125b3e;font-size:1.05rem;font-weight:850;box-shadow:0 10px 28px rgba(3,26,55,.05)}
.fko-commerce-main .woocommerce-order-overview{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0!important;padding:0!important;overflow:hidden;border:1px solid var(--fko-line);border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(3,26,55,.06)}
.fko-commerce-main .woocommerce-order-overview li{min-width:0;margin:0!important;padding:18px 20px!important;border-right:1px solid var(--fko-line)!important;color:var(--fko-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fko-commerce-main .woocommerce-order-overview li:last-child{border-right:0!important}.fko-commerce-main .woocommerce-order-overview li strong{display:block;overflow-wrap:anywhere;margin-top:7px;color:var(--fko-text);font-size:.95rem;letter-spacing:0;text-transform:none}

/* Shop and product pages */
.fko-commerce-main .woocommerce .woocommerce-result-count,.fko-commerce-main .woocommerce .woocommerce-ordering{margin-bottom:24px}
.fko-commerce-main .woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0;padding:0}
.fko-commerce-main .woocommerce ul.products::before,.fko-commerce-main .woocommerce ul.products::after{display:none}
.fko-commerce-main .woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:22px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;box-shadow:0 12px 32px rgba(3,26,55,.07)}
.fko-commerce-main .woocommerce ul.products li.product a img{border-radius:7px;background:#f1f5f9}
.fko-commerce-main .woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--fko-text);font-size:1.1rem;font-weight:850}
.fko-commerce-main .woocommerce ul.products li.product .price{color:#c94700;font-size:1rem;font-weight:850}
.fko-commerce-main .woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:42px;padding:34px;border:1px solid var(--fko-line);border-top:4px solid var(--fko-orange);border-radius:16px;background:#fff;box-shadow:0 18px 46px rgba(3,26,55,.09)}
.fko-commerce-main .woocommerce div.product .summary,.fko-commerce-main .woocommerce div.product .fko-product-cp-visual{width:auto!important;float:none!important;margin:0!important}
.fko-commerce-main .woocommerce div.product .summary{align-self:center;padding:8px 6px}.fko-commerce-main .woocommerce div.product .summary::before{display:block;margin-bottom:9px;color:#b44000;content:"FlowKeyOps plan";font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.fko-commerce-main .woocommerce div.product .product_title{margin:0 0 12px;color:var(--fko-text);font-size:clamp(1.75rem,3vw,2.55rem);font-weight:900;letter-spacing:-.04em;line-height:1.08}
.fko-commerce-main .woocommerce div.product p.price,.fko-commerce-main .woocommerce div.product span.price{margin:0 0 18px;color:#c94700;font-size:1.35rem;font-weight:900}
.fko-commerce-main .woocommerce div.product .woocommerce-product-details__short-description{margin-bottom:24px;color:var(--fko-muted);font-size:1rem;line-height:1.75}
.fko-commerce-main .woocommerce div.product form.cart{display:grid;gap:12px;margin:0;padding-top:20px;border-top:1px solid var(--fko-line)}
.fko-commerce-main .woocommerce div.product form.cart button.single_add_to_cart_button.button.alt{display:inline-flex;width:150px;min-width:150px;max-width:150px;height:45px;min-height:45px;justify-self:start;align-items:center;justify-content:center;padding:0 20px!important;border:1px solid var(--fko-orange)!important;border-radius:999px!important;background:var(--fko-orange)!important;background-color:var(--fko-orange)!important;color:#fff!important;font-size:16px;font-weight:850!important;line-height:45px!important;box-shadow:0 9px 22px rgba(255,90,0,.17)!important;appearance:none;-webkit-appearance:none}
.fko-commerce-main .woocommerce div.product form.cart button.single_add_to_cart_button.button.alt:hover{border-color:#d94b00!important;background:#d94b00!important;color:#fff!important}
.fko-commerce-main .woocommerce div.product .product_meta{margin-top:20px;color:var(--fko-muted);font-size:.78rem}
.fko-commerce-main .woocommerce div.product .woocommerce-tabs,.fko-commerce-main .woocommerce div.product .related,.fko-commerce-main .woocommerce div.product .up-sells{grid-column:1/-1}

/* The product uses the exact homepage component, only constrained to its image slot. */
.fko-product-cp-visual{align-self:stretch}.fko-product-cp-visual .fko-demo-app-product{height:390px;grid-template-columns:128px 1fr}.fko-product-cp-visual .fko-demo-app-product .fko-app-side{padding:12px 9px}.fko-product-cp-visual .fko-demo-app-product .fko-app-brand{gap:4px;font-size:12px}.fko-product-cp-visual .fko-demo-app-product .fko-app-brand img{width:20px!important;max-width:20px!important;height:20px!important}.fko-product-cp-visual .fko-demo-app-product .fko-app-nav div{padding:7px 8px;font-size:10px}.fko-product-cp-visual .fko-demo-app-product .fko-app-main{padding:11px 12px}.fko-product-cp-visual .fko-demo-app-product .fko-stat4{min-height:72px;padding:9px}.fko-product-cp-visual .fko-demo-app-product .fko-stat4 b{font-size:20px}.fko-product-cp-visual .fko-demo-app-product .fko-stat4 span,.fko-product-cp-visual .fko-demo-app-product .fko-stat4 small{font-size:8px}.fko-product-cp-visual>p{margin:14px 10px 0!important;color:var(--fko-muted);font-size:.78rem;text-align:center}

/* Modern WooCommerce Cart and Checkout blocks */
.fko-commerce-main .wp-block-woocommerce-cart,.fko-commerce-main .wp-block-woocommerce-checkout{color:var(--fko-text)}
.fko-commerce-main .wc-block-components-sidebar-layout .wc-block-components-main,.fko-commerce-main .wc-block-components-sidebar{padding:24px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;box-shadow:0 12px 32px rgba(3,26,55,.06)}
.fko-commerce-main .wc-block-components-sidebar-layout{gap:20px}
.fko-commerce-main .wc-block-components-button:not(.is-link){min-height:48px;border:1px solid var(--fko-orange);border-radius:7px;background:var(--fko-orange);color:#fff;font-weight:850}
.fko-commerce-main .wc-block-components-button:not(.is-link):hover{border-color:#d94b00;background:#d94b00;color:#fff}
.fko-commerce-main .wc-block-components-text-input input,.fko-commerce-main .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{border:1px solid #bdc9d9;border-radius:7px;background:#fff;color:var(--fko-text)}
.fko-commerce-main .wc-block-components-notice-banner{border:1px solid var(--fko-line);border-left:4px solid var(--fko-orange);border-radius:8px;background:#fff;color:var(--fko-text)}
/* 🔴 THE BLOCK NOTICE MUST MATCH THE CLASSIC ONE. WooCommerce emits TWO
   notice families: classic `.woocommerce-message` (order-received) and block
   `.wc-block-components-notice-banner` (cart). Only the classic one had a
   success variant, so a green-ticked "added to your cart" banner kept the
   default ORANGE rail while the identical confirmation on the order page was
   GREEN -- two colours for one meaning, on consecutive steps of one checkout.
   Mirrors lines 111-114; keep the two edits together.
   ⚠ Woo's own class carries the state, so match THEIR class name -- a
   generic attribute selector ties on specificity and loses on load order. */
.fko-commerce-main .wc-block-components-notice-banner.is-success{border-left-color:var(--fko-green)}
.fko-commerce-main .wc-block-components-notice-banner.is-error{border-left-color:var(--fko-red)}
.fko-commerce-main .wc-block-components-notice-banner.is-success .wc-block-components-notice-banner__content svg,
.fko-commerce-main .wc-block-components-notice-banner.is-success>svg{fill:var(--fko-green)}
.fko-commerce-main .wc-block-components-notice-banner.is-error>svg{fill:var(--fko-red)}
.fko-commerce-main .wc-block-cart-items,.fko-commerce-main .wc-block-components-totals-wrapper{border-color:var(--fko-line)}
.fko-commerce-main .wc-block-cart,.fko-commerce-main .wc-block-checkout{--wp--preset--color--contrast:var(--fko-text)}
.fko-commerce-main .wc-block-components-main{border-top:4px solid var(--fko-navy)!important}.fko-commerce-main .wc-block-components-sidebar{border-top:4px solid var(--fko-orange)!important}
.fko-commerce-main .wc-block-components-title,.fko-commerce-main .wc-block-cart__totals-title{color:var(--fko-text);font-weight:900;letter-spacing:-.025em}
.fko-commerce-main .wc-block-components-order-summary-item__description .wc-block-components-product-name{color:var(--fko-text);font-weight:850}

/* The real app owns its internal typography and link colors. */
.fko-commerce-main .woocommerce .fko-app h2{color:var(--fko-white);font-size:clamp(1.55rem,2.5vw,2.15rem);font-weight:750;letter-spacing:-.035em}
.fko-commerce-main .woocommerce .fko-app h3{color:var(--fko-white);font-size:1rem;font-weight:700;letter-spacing:normal}
.fko-commerce-main .woocommerce .fko-app p,.fko-commerce-main .woocommerce .fko-app a,.fko-commerce-main .woocommerce .fko-app a:hover{color:inherit}

/* Remaining public WordPress content */
body.flowkeyops-public-page{margin:0!important;padding:0!important;max-width:none!important;background:#f6f8fc!important;overflow-x:hidden!important}
.fko-public-description{max-width:760px;color:#cbd6e8;font-size:1rem;line-height:1.65}
.fko-public-entry{padding:32px;border:1px solid var(--fko-line);border-radius:10px;background:#fff;color:var(--fko-text);box-shadow:0 14px 38px rgba(3,26,55,.07)}
.fko-public-single{max-width:980px;margin:0 auto}.fko-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.fko-public-entry h2,.fko-public-entry h3,.fko-public-entry h4{color:var(--fko-text);font-weight:850;letter-spacing:-.025em}
.fko-public-entry h2{margin-top:0;font-size:1.55rem}.fko-public-entry h2 a{color:var(--fko-text);text-decoration:none}.fko-public-entry h2 a:hover{color:#c94700}
.fko-public-entry p,.fko-public-entry li{color:#445873;line-height:1.75}.fko-public-entry a{color:#c94700}.fko-public-entry img{max-width:100%;height:auto;border-radius:8px}
.fko-public-entry table{width:100%;border:1px solid var(--fko-line);border-collapse:collapse}.fko-public-entry th,.fko-public-entry td{padding:12px;border:1px solid var(--fko-line);text-align:left}.fko-public-entry th{background:var(--fko-navy);color:#fff}
.fko-public-entry input:not([type=checkbox]):not([type=radio]),.fko-public-entry textarea,.fko-public-entry select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #bdc9d9;border-radius:7px;background:#fff;color:var(--fko-text)}
.fko-public-entry button,.fko-public-entry input[type=submit],.fko-public-button{display:inline-flex;min-height:44px;align-items:center;padding:10px 17px;border:1px solid var(--fko-orange);border-radius:7px;background:var(--fko-orange);color:#fff!important;font-weight:850;text-decoration:none}
.fko-public-entry button:hover,.fko-public-entry input[type=submit]:hover,.fko-public-button:hover{border-color:#d94b00;background:#d94b00}
.fko-public-excerpt p{margin-bottom:12px}.fko-public-read-more{font-weight:850;text-decoration:none}
.fko-public-main .navigation.pagination{margin-top:28px}.fko-public-main .nav-links{display:flex;flex-wrap:wrap;gap:7px}.fko-public-main .page-numbers{display:grid;min-width:40px;height:40px;place-items:center;border:1px solid var(--fko-line);border-radius:6px;background:#fff;color:var(--fko-text);text-decoration:none}.fko-public-main .page-numbers.current{border-color:var(--fko-orange);background:var(--fko-orange);color:#fff}

/* BetterDocs articles: focused reading layout, navigation, and components. */
body.flowkeyops-doc-page{background:#f3f6fb!important}
.flowkeyops-doc-page .fko-doc-hero{position:relative;overflow:hidden;padding:48px 0 44px;background:linear-gradient(115deg,#031a37 0%,#061f41 72%,#0b2b51 100%)}
.flowkeyops-doc-page .fko-doc-hero::before{position:absolute;inset:auto -8% -105px 40%;height:220px;border:1px solid rgba(255,255,255,.06);border-radius:50%;content:"";transform:rotate(-8deg)}
.fko-doc-hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 390px;align-items:center;gap:54px}
.flowkeyops-doc-page .fko-doc-context{display:flex;align-items:center;gap:12px;margin-bottom:12px}.flowkeyops-doc-page .fko-doc-context .fko-commerce-eyebrow{margin:0}
.fko-doc-category{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.07);color:#dce6f5;font-size:.7rem;font-weight:800;letter-spacing:.04em}
.flowkeyops-doc-page .fko-doc-hero h1{max-width:820px;margin-bottom:12px;font-size:clamp(2.35rem,4.7vw,3.75rem);line-height:1.02}
.flowkeyops-doc-page .fko-public-description{max-width:720px;color:#cbd8e9;font-size:1.08rem;line-height:1.65}
.fko-doc-hero-graphic{width:100%;max-width:390px;justify-self:end;opacity:.98}.fko-doc-hero-graphic svg{display:block;width:100%;height:auto;overflow:visible}
.fko-doc-network{fill:#0a2c52;stroke:#587ca5;stroke-width:2}.fko-doc-network path{fill:none}.fko-doc-network circle{fill:#092746;stroke:#6e91b8}
.fko-doc-icon-disc{fill:#ff5a00;stroke:#ff9a64;stroke-width:2}.fko-doc-icon{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.fko-doc-pulse{fill:#0b315c;stroke:#ff7431;stroke-width:2}.fko-doc-check{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.flowkeyops-doc-page .fko-public-content{position:relative;padding:56px 0 88px;background:linear-gradient(180deg,#f3f6fb 0%,#f8fafc 100%)}
.flowkeyops-doc-page .fko-public-content::before{position:absolute;top:22px;left:4%;width:105px;height:105px;background-image:radial-gradient(#bdcadb 1px,transparent 1px);background-size:12px 12px;content:"";opacity:.5}
.fko-doc-single{position:relative;max-width:1180px;margin:0 auto}
.fko-doc-layout{display:grid;grid-template-columns:minmax(0,1fr)}
.fko-doc-entry{min-width:0;padding:56px 62px;border-color:#d8e1ec;border-radius:14px;box-shadow:0 18px 55px rgba(3,26,55,.075)}
.fko-doc-toc-title{display:block;margin-bottom:12px;color:var(--fko-text);font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.fko-doc-toc nav{display:grid;gap:3px}.fko-doc-toc a{display:block;padding:8px 10px;border-left:2px solid #d8e1ec;border-radius:0 6px 6px 0;color:#52657f;font-size:.82rem;font-weight:700;line-height:1.4;text-decoration:none;transition:border-color .15s ease,background-color .15s ease,color .15s ease}
.fko-doc-toc a:hover,.fko-doc-toc a:focus-visible{border-left-color:var(--fko-orange);background:#fff0e7;color:#9f3900;outline:0}
.fko-doc-article-body{color:#344a66;font-size:1.075rem;line-height:1.78}
.fko-doc-article-body>*{max-width:72ch}.fko-doc-article-body>p:first-child{margin-top:0;color:#203b5c;font-size:1.23rem;line-height:1.7}
.fko-doc-article-body p{margin:0 0 1.35em;color:#405570;line-height:1.78}
.fko-doc-article-body h2,.fko-doc-article-body h3,.fko-doc-article-body h4{position:relative;scroll-margin-top:28px;color:var(--fko-text);line-height:1.25}
.fko-doc-article-body h2{margin:2.7em 0 .8em;padding-left:17px;font-size:clamp(1.55rem,2.7vw,2rem);font-weight:900;letter-spacing:-.035em}
.fko-doc-article-body h2::before{position:absolute;top:.13em;bottom:.1em;left:0;width:4px;border-radius:4px;background:var(--fko-orange);content:""}
.fko-doc-article-body h3{margin:2.15em 0 .65em;font-size:1.3rem;font-weight:850;letter-spacing:-.02em}.fko-doc-article-body h4{margin:1.8em 0 .55em;font-size:1.05rem;font-weight:850;letter-spacing:-.01em}
.fko-doc-article-body ul,.fko-doc-article-body ol{margin:0 0 1.55em;padding-left:1.55em}.fko-doc-article-body li{margin:.48em 0;padding-left:.25em;color:#405570;line-height:1.72}.fko-doc-article-body li::marker{color:var(--fko-orange);font-weight:900}.fko-doc-article-body li>ul,.fko-doc-article-body li>ol{margin:.45em 0 .2em}
.fko-doc-article-body a{color:#b44000;font-weight:700;text-decoration-color:rgba(180,64,0,.35);text-decoration-thickness:1px;text-underline-offset:3px}.fko-doc-article-body a:hover{color:#e14e00;text-decoration-color:currentColor}
.fko-doc-article-body strong{color:#142f50;font-weight:850}
.fko-doc-article-body hr{max-width:none;margin:2.7em 0;border:0;border-top:1px solid #d9e2ed}
.fko-doc-article-body blockquote,.fko-doc-note,.fko-doc-tip,.fko-doc-warning{max-width:none;margin:1.8em 0;padding:19px 22px;border:1px solid #d7e3f0;border-left:4px solid #2f6fa9;border-radius:8px;background:#f4f8fc;color:#294762}
.fko-doc-article-body blockquote p,.fko-doc-note p,.fko-doc-tip p,.fko-doc-warning p{margin:.25em 0;color:inherit}.fko-doc-tip{border-left-color:var(--fko-green);background:#f0fbf7}.fko-doc-warning{border-left-color:var(--fko-orange);background:#fff6ef}
.fko-doc-article-body code{padding:.16em .38em;border:1px solid #d6dfeb;border-radius:4px;background:#f1f4f8;color:#923900;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:.88em}
.fko-doc-article-body pre{max-width:none;overflow:auto;margin:1.8em 0;padding:22px;border:1px solid #203d60;border-radius:9px;background:#061d3a;color:#e4edf8;font-size:.88rem;line-height:1.65}.fko-doc-article-body pre code{padding:0;border:0;background:transparent;color:inherit;font-size:inherit}
.fko-doc-article-body table{display:block;max-width:100%;overflow-x:auto;margin:1.8em 0;border:1px solid #d6e0ec;border-radius:9px;border-collapse:separate;border-spacing:0}.fko-doc-article-body th,.fko-doc-article-body td{min-width:140px;padding:14px 16px;border:0;border-right:1px solid #dce4ee;border-bottom:1px solid #dce4ee;vertical-align:top}.fko-doc-article-body th{background:#071f40;color:#fff;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.fko-doc-article-body tr:last-child td{border-bottom:0}.fko-doc-article-body th:last-child,.fko-doc-article-body td:last-child{border-right:0}
.fko-doc-article-body figure{max-width:none;margin:2em 0}.fko-doc-article-body img{display:block;width:auto;max-width:100%;height:auto;border:1px solid #d7e0eb;border-radius:10px;box-shadow:0 12px 34px rgba(3,26,55,.1)}.fko-doc-article-body figcaption{margin-top:9px;color:#64748b;font-size:.82rem;text-align:center}
.fko-doc-article-body dl{max-width:none;margin:1.6em 0}.fko-doc-article-body dt{margin:18px 0 0;padding:18px 22px 8px;border:1px solid #d8e2ed;border-bottom:0;border-left:4px solid var(--fko-orange);border-radius:10px 10px 0 0;background:linear-gradient(105deg,#fff7f1,#fff);color:#0b294d;font-size:1.12rem;font-weight:900;letter-spacing:-.015em}.fko-doc-article-body dd{margin:0;padding:5px 22px 20px;border:1px solid #d8e2ed;border-top:0;border-left:4px solid var(--fko-orange);border-radius:0 0 10px 10px;background:#fff;color:#4a5f79;line-height:1.7;box-shadow:0 8px 24px rgba(3,26,55,.04)}
.fko-doc-steps{max-width:none;counter-reset:fko-step;list-style:none;padding-left:0!important}.fko-doc-steps>li{position:relative;min-height:46px;margin:0 0 16px;padding:4px 0 16px 58px;border-bottom:1px solid #e0e7f0;counter-increment:fko-step}.fko-doc-steps>li::before{position:absolute;top:0;left:0;display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--fko-navy);color:#fff;content:counter(fko-step);font-size:.84rem;font-weight:900}
.fko-doc-article-body :is(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(255,90,0,.4);outline-offset:3px}

@media(max-width:900px){
  .fko-commerce-wrap{width:min(100% - 36px,1320px)}
  .flowkeyops-account-page.logged-in .fko-commerce-content>.fko-commerce-wrap{width:calc(100% - 36px)!important}
  .fko-commerce-main .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fko-commerce-main .woocommerce .col2-set,body:not(.logged-in).flowkeyops-account-page .woocommerce .u-columns.col2-set,.fko-commerce-main .woocommerce-Addresses{grid-template-columns:1fr}
  .fko-commerce-main .woocommerce div.product{grid-template-columns:1fr;gap:28px}.fko-product-cp-visual .fko-demo-app-product{height:430px;grid-template-columns:145px 1fr}
  .fko-commerce-main .woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.fko-commerce-main .woocommerce-order-overview li:nth-child(2){border-right:0!important}.fko-commerce-main .woocommerce-order-overview li:nth-child(-n+2){border-bottom:1px solid var(--fko-line)}
  .fko-public-grid{grid-template-columns:1fr}
  .fko-doc-hero-layout{grid-template-columns:minmax(0,1fr) 290px;gap:28px}
}
@media(max-width:760px){
  .fko-commerce-hero{padding:32px 0 28px}.fko-commerce-content{padding:28px 0 52px}
  .fko-commerce-wrap{width:min(100% - 24px,1320px)}
  .flowkeyops-account-page.logged-in .fko-commerce-content>.fko-commerce-wrap{width:calc(100% - 24px)!important}
  .fko-commerce-main .woocommerce-MyAccount-navigation ul{display:flex}
  .fko-commerce-main .woocommerce-MyAccount-content{padding:18px}
  .fko-commerce-main .woocommerce ul.products{grid-template-columns:1fr}
  .fko-commerce-main .woocommerce table.shop_table{display:block;overflow-x:auto}
  .fko-commerce-main .woocommerce div.product{padding:20px}.fko-product-cp-visual .fko-demo-app-product{height:auto;grid-template-columns:1fr}.fko-product-cp-visual .fko-demo-app-product .fko-app-side{display:none}
  .fko-commerce-main .woocommerce-order-overview{grid-template-columns:1fr}.fko-commerce-main .woocommerce-order-overview li{border-right:0!important;border-bottom:1px solid var(--fko-line)!important}.fko-commerce-main .woocommerce-order-overview li:last-child{border-bottom:0!important}
  .flowkeyops-doc-page .fko-doc-hero{padding:36px 0 34px}.fko-doc-hero-layout{grid-template-columns:1fr}.fko-doc-hero-graphic{display:none}.flowkeyops-doc-page .fko-doc-context{align-items:flex-start;flex-direction:column;gap:7px}
  .flowkeyops-doc-page .fko-public-content{padding:28px 0 58px}.flowkeyops-doc-page .fko-public-content::before{display:none}.fko-doc-entry{padding:34px 24px;border-radius:11px}.fko-doc-article-body{font-size:1rem}.fko-doc-article-body>p:first-child{font-size:1.12rem}.fko-doc-article-body h2{margin-top:2.25em;font-size:1.55rem}.fko-doc-article-body dt{padding:16px 17px 7px}.fko-doc-article-body dd{padding:5px 17px 17px}
}
@media(max-width:430px){.fko-commerce-main .woocommerce-MyAccount-navigation li{flex-basis:132px}}
@media(prefers-reduced-motion:reduce){.fko-doc-toc a{transition:none}}

/* Homepage capability state label. */
.fko-v4-feature h3 small{display:block;margin-top:3px;color:var(--fko-orange);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}

/* BetterDocs reactions: the plugin hardcodes #19ca9e in assets/build/public/css/reactions.css,
   which no BetterDocs setting or Customizer control can reach. Overridden to brand orange here
   rather than by editing the plugin, so a BetterDocs update cannot revert it.

   ⚠ SPECIFICITY IS RAISED DELIBERATELY. Our stylesheet enqueues BEFORE BetterDocs' (verified
   on a live docs page: flowkeyops-site.css is link 2, reactions.css is 6+). At the plugin's own
   specificity (0,3,2) an identical selector would LOSE on source order and the override would
   silently do nothing. Prefixing `body` raises it to (0,3,3) so it wins regardless of order.
   Do NOT "simplify" these selectors back, and do not reach for !important -- two !important
   rules resolve by source order again, which is the thing being worked around. */
body .betterdocs-article-reactions .betterdocs-article-reaction-links.layout-1 li a{background-color:var(--fko-orange)}
body .betterdocs-article-reactions .betterdocs-article-reaction-links.layout-1 li a:hover svg path{fill:var(--fko-orange)}

/* BetterDocs Pro "Instant Answer" widget: the plugin hardcodes #00b682, #16ca9e,
   and #19ca9e in
   betterdocs-pro/assets/build/public/css/instant-answer.css and
   .../static/public/css/ai-chatbot.css. Those values OVERRIDE the ia_* colour
   settings in betterdocs_settings. Green widget artwork is mapped to the FlowKeyOps
   blue token; orange remains reserved for the widget's action controls.

   ⚠ Same specificity trap as the reactions override above: our stylesheet
   enqueues BEFORE the plugin's on a docs page, so each selector is prefixed
   with `body` to win on specificity rather than source order. Do not simplify
   them back, and do not use !important. */
body .betterdocs-ia-launcher-wrapper .betterdocs-ia-launcher{background:var(--fko-orange)}
body .betterdocs-ia-common-header{background:var(--fko-orange)}
body .betterdocs-ia-common-header .betterdocs-ia-search .betterdocs-ia-search-icon{background-color:var(--fko-orange)}
body .betterdocs-ia-tabs .active p{color:var(--fko-orange)}
body .betterdocs-ia-send-message .betterdocs-ia-sm-icon i{color:var(--fko-orange)}
body .betterdocs-ia-tab-message-container .betterdocs-ia-feedback-form .betterdocs-ia-submit button{background:var(--fko-orange)}
body .betterdocs-ia-single-docs-wrapper .betterdocs-ia-singleDoc-header .content-icon-back svg path{fill:var(--fko-orange)}
body .betterdocs-ia-single-docs-wrapper .betterdocs-ia-singleDoc-header .content-icon-expand svg path{fill:var(--fko-orange)}
body .betterdocs-ia-single-docs-wrapper .betterdocs-ia-singleDoc-footer .betterdocs-ia-footer-feedback{background:var(--fko-orange)}
body .betterdocs-ia-no-doc button{color:var(--fko-orange)}
body .message.received.email-field-wrapper span.skip-email{background:var(--fko-orange)}
body .email-field-wrapper.focused .email-field{border-color:var(--fko-orange)}
/* the animated loading indicators.

   Two different things, both green, and the second is NOT reachable the way the
   first is:
     .dot          -- the three bouncing dots, coloured in CSS.
     .generic-loader svg circle -- the spinning ARC. It is an inline SVG built in
       JS (instant-answer.js) with stroke="#16ca9e" set as a PRESENTATION
       ATTRIBUTE, not a stylesheet rule. Presentation attributes lose to any CSS
       declaration, so a plain `stroke` rule wins here without !important. */
body .dot{background-color:var(--fko-orange)}
body .generic-loader svg circle,
body .chat-loading svg circle,
body .betterdocs-ia-wrapper svg circle[stroke]{stroke:var(--fko-orange)}

/* Icon artwork inside the Instant Answer panel -- including the three feedback
   faces on the "How did you feel?" bar.

   Every icon is an inline SVG whose colour is a fill/stroke PRESENTATION
   ATTRIBUTE emitted by instant-answer.js (9 green fills across the bundle), so
   there is no class per icon to target. Matching on the attribute VALUE catches
   all of them at once and leaves the non-green icons (#344054, #202223) alone.
   Attribute selectors are case-sensitive, so both cases are listed -- the bundle
   emits upper- and lowercase forms of #00B682, #16CA9E, and #19CA9E. */
body .betterdocs-ia-root svg [fill="#00b682"],
body .betterdocs-ia-root svg [fill="#00B682"],
body .betterdocs-ia-root svg [fill="#16ca9e"],
body .betterdocs-ia-root svg [fill="#16CA9E"],
body .betterdocs-ia-root svg [fill="#19ca9e"],
body .betterdocs-ia-root svg [fill="#19CA9E"],
body .betterdocs-ia-root svg[fill="#00b682"],
body .betterdocs-ia-root svg[fill="#00B682"],
body .betterdocs-ia-root svg[fill="#16ca9e"],
body .betterdocs-ia-root svg[fill="#16CA9E"],
body .betterdocs-ia-root svg[fill="#19ca9e"],
body .betterdocs-ia-root svg[fill="#19CA9E"],
body .betterdocs-ia-wrapper svg [fill="#00b682"],
body .betterdocs-ia-wrapper svg [fill="#00B682"],
body .betterdocs-ia-wrapper svg [fill="#16ca9e"],
body .betterdocs-ia-wrapper svg [fill="#16CA9E"],
body .betterdocs-ia-wrapper svg [fill="#19ca9e"],
body .betterdocs-ia-wrapper svg [fill="#19CA9E"]{fill:var(--fko-blue)}
body .betterdocs-ia-root svg [stroke="#00b682"],
body .betterdocs-ia-root svg [stroke="#00B682"],
body .betterdocs-ia-root svg [stroke="#16ca9e"],
body .betterdocs-ia-root svg [stroke="#16CA9E"],
body .betterdocs-ia-root svg [stroke="#19ca9e"],
body .betterdocs-ia-root svg [stroke="#19CA9E"],
body .betterdocs-ia-wrapper svg [stroke="#00b682"],
body .betterdocs-ia-wrapper svg [stroke="#00B682"],
body .betterdocs-ia-wrapper svg [stroke="#16ca9e"],
body .betterdocs-ia-wrapper svg [stroke="#16CA9E"],
body .betterdocs-ia-wrapper svg [stroke="#19ca9e"],
body .betterdocs-ia-wrapper svg [stroke="#19CA9E"]{stroke:var(--fko-blue)}
/* Some BetterDocs builds write green fills into the SVG style attribute. Inline
   styles take precedence over ordinary author CSS, so this narrow fallback uses
   !important only for the exact legacy green values inside the AI-chat widget. */
body .betterdocs-ia-root svg [style*="#00b682" i],
body .betterdocs-ia-root svg [style*="#16ca9e" i],
body .betterdocs-ia-root svg [style*="#19ca9e" i],
body .betterdocs-ia-wrapper svg [style*="#00b682" i],
body .betterdocs-ia-wrapper svg [style*="#16ca9e" i],
body .betterdocs-ia-wrapper svg [style*="#19ca9e" i]{fill:var(--fko-blue)!important;stroke:var(--fko-blue)!important}
/* BetterDocs applies the feedback-face green to the clickable `.ia-reaction`
   container, rather than to the SVG itself. Match the plugin selector and add
   `body` so this wins even though this stylesheet loads first. The emoji remains
   white at rest; only its hover state becomes FlowKeyOps blue. */
body .betterdocs-ia-single-docs-wrapper .betterdocs-ia-singleDoc-footer .betterdocs-ia-footer-feedback .betterdocs-ia-reaction-group .ia-reaction{background-color:var(--fko-navy3)!important}
body .betterdocs-ia-single-docs-wrapper .betterdocs-ia-singleDoc-footer .betterdocs-ia-footer-feedback .betterdocs-ia-reaction-group .ia-reaction:hover .betterdocs-emo{fill:var(--fko-navy3)!important}
/* This must follow the generic green-SVG mapping above: BetterDocs gives its
   loader circle a green presentation attribute, which is otherwise recoloured
   blue by that broad artwork rule. */
body .betterdocs-ia-wrapper .generic-loader svg circle,
body .betterdocs-ia-wrapper .chat-loading svg circle{stroke:var(--fko-orange)!important}
/* ⚠ Deliberately NOT a blanket `.betterdocs-ia-reaction-group svg path{fill:…}`.
   The faces are multi-part SVGs; recolouring every path would fill the eyes and
   mouth too and erase the face. Matching the green VALUE only repaints the
   parts that were green. */
body .betterdocs-article-reactions .betterdocs-article-reaction-links li a{background-color:var(--fko-orange)}

/* ── NOTIFICATION COLOR STANDARD (user, 2026-08-18) — docs/article callouts ──
   Left band + matching font: info/instruction=BLUE · notification=YELLOW (band
   yellow, font darkened for contrast on white) · warning=ORANGE · error=RED.
   Authored via <div class="fko-callout fko-callout--…"> in HTML sources, or
   > [!INFO]/[!NOTICE]/[!WARNING]/[!ERROR] in Markdown (converted at build).
   Documented in DOCS/technical/Standards/NOTIFICATION-COLOR-STANDARD.md. */
.fko-callout{padding:12px 16px;margin:16px 0;border-left:4px solid;border-radius:0 4px 4px 0;font-size:.95rem;line-height:1.55}
.fko-callout p:first-child{margin-top:0}
.fko-callout p:last-child{margin-bottom:0}
/* Refined 2026-08-18: NEUTRAL font on every callout (white on the navy panel;
   here on light pages the equivalent is standard dark text — white would be
   unreadable). Severity = band + colour-shaded background only. */
.fko-callout--info{border-left-color:#066FB6;background:#EAF4FB;color:#1F2B38}
.fko-callout--notification{border-left-color:#E6C200;background:#FFF9E0;color:#1F2B38}
.fko-callout--warning{border-left-color:#EA7317;background:#FFF3E6;color:#1F2B38}
.fko-callout--error{border-left-color:#B32D2E;background:#FDECEC;color:#1F2B38}

/* Footer sub-items (user, 2026-08-20).
   🔑 ALWAYS VISIBLE, NOT A DROPDOWN. A footer is a sitemap -- hiding links
   behind a hover in the page's last block is the opposite of what it is for,
   and hover does not exist on touch. Sub-items simply indent under their parent.
   ⚠ A footer with no sub-items is unaffected: these rules only match inside
   .fko-footer-group, which is emitted only when children exist. */
.fko-footer-group{display:block}
.fko-footer-group-label{display:block;font-weight:600}
.fko-footer-subitems{display:block;margin:2px 0 6px 12px;border-left:1px solid var(--fko-border,#244564);padding-left:10px}
.fko-footer-subitems a{display:block}


/* ── Product Updates changelog ─────────────────────────────────────────────
   The version headings are real <h2>, so the docs theme styles them and builds
   the "On this page" rail from them (fko_prepare_doc_content). Nothing here
   rebuilds either -- an earlier revision hand-rolled a rail inside the content,
   which meant the theme found no <h2>, dropped its own rail and the has-toc
   layout, and the hand-rolled one rendered cramped against it.

   What is left is only what the theme has no opinion about: the date and badge
   inside the heading, and the collapsible notes. */

/* Date and "Latest" are a SIBLING of the <h2>, never inside it: the theme builds
   each rail label with wp_strip_all_tags() over the heading's inner HTML, so
   anything nested there is absorbed into the label. */
.fko-doc-article-body .fko-changelog .fko-cl-meta{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin:-.45em 0 1.1em;padding-left:17px;   /* aligns under the h2's orange bar */
}
.fko-changelog .fko-cl-date{
  font-size:.88rem;font-weight:650;color:var(--fko-muted,#536682);
}
.fko-changelog .fko-cl-badge{
  font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
  color:#b63f00;background:#fff0e7;border:1px solid #ffc6a3;border-radius:999px;
  padding:2px 8px;
}

/* Collapsible notes. `name="fko-changelog"` on each <details> makes the browser
   close the siblings itself, so one-at-a-time needs no script. */
.fko-changelog .fko-cl-entry{margin:0 0 2.2em;padding-left:17px;max-width:72ch}
.fko-changelog .fko-cl-summary{
  display:inline-flex;align-items:center;gap:8px;cursor:pointer;list-style:none;
  padding:7px 13px;border:1px solid var(--fko-line,#dce4ee);border-radius:999px;
  background:var(--fko-soft,#f7f9fc);
  font-size:.83rem;font-weight:800;color:#52657f;
  transition:border-color .15s ease,background-color .15s ease,color .15s ease;
}
.fko-changelog .fko-cl-summary::-webkit-details-marker{display:none}
/* Own triangle: the default marker is inconsistent across browsers and cannot
   be coloured. */
.fko-changelog .fko-cl-summary::before{
  content:"";width:0;height:0;flex:0 0 auto;
  border-left:5px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;
  transition:transform .15s ease;
}
.fko-changelog .fko-cl-entry[open] .fko-cl-summary::before{transform:rotate(90deg)}
.fko-changelog .fko-cl-summary:hover,.fko-changelog .fko-cl-summary:focus-visible{
  border-color:var(--fko-orange,#ff5a00);background:#fff0e7;color:#9f3900;outline:0;
}
.fko-changelog .fko-cl-entry[open] .fko-cl-summary{
  border-color:#ffc6a3;background:#fff0e7;color:#9f3900;
}
.fko-changelog .fko-cl-body{padding:1.15em 0 0}
.fko-changelog .fko-cl-body>*:last-child{margin-bottom:0}

@media(prefers-reduced-motion:reduce){
  .fko-changelog .fko-cl-summary,.fko-changelog .fko-cl-summary::before{transition:none}
}


/* ── Docs landing: category cards ──────────────────────────────────────────
   Replaces the flat article list on /docs/. Rendered by
   fko_doc_category_cards(), which counts each category as the CURRENT visitor,
   so a category with nothing readable never reaches this stylesheet. */
.fko-doc-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;align-items:start}
.fko-doc-cat{padding:24px 26px 22px;border:1px solid #d8e1ec;border-radius:12px;background:#fff;box-shadow:0 10px 32px rgba(3,26,55,.055)}
.fko-doc-cat-title{margin:0 0 8px!important;font-size:1.22rem!important;font-weight:900;letter-spacing:-.02em;line-height:1.25}
.fko-doc-cat-title a{color:var(--fko-text);text-decoration:none}
.fko-doc-cat-title a:hover,.fko-doc-cat-title a:focus-visible{color:var(--fko-orange);outline:0}
.fko-doc-cat-desc{margin:0 0 14px;color:#52657f;font-size:.94rem;line-height:1.6}
.fko-doc-cat-list{margin:0;padding:0;list-style:none;display:grid;gap:2px}
.fko-doc-cat-list li{margin:0}
.fko-doc-cat-list a{display:block;padding:7px 10px;border-left:2px solid #d8e1ec;border-radius:0 6px 6px 0;color:#405570;font-size:.9rem;font-weight:650;line-height:1.45;text-decoration:none;transition:border-color .15s ease,background-color .15s ease,color .15s ease}
.fko-doc-cat-list a:hover,.fko-doc-cat-list a:focus-visible{border-left-color:var(--fko-orange);background:#fff0e7;color:#9f3900;outline:0}
.fko-doc-cat-more{display:inline-block;margin-top:12px;color:var(--fko-orange);font-size:.86rem;font-weight:800;text-decoration:none}
.fko-doc-cat-more:hover,.fko-doc-cat-more:focus-visible{text-decoration:underline;outline:0}
@media(max-width:760px){
  .fko-doc-cats{grid-template-columns:1fr;gap:16px}
  .fko-doc-cat{padding:20px 18px 18px}
}
@media(prefers-reduced-motion:reduce){
  .fko-doc-cat-list a{transition:none}
}

/* ---- Docs shell: category sidebar | article | sticky TOC ---------------- */
.fko-doc-shell{display:grid;grid-template-columns:274px minmax(0,1fr);gap:38px;align-items:start}
.fko-doc-shell-main{min-width:0}
/* --fko-crumb-h is the breadcrumb block in column 2 (13px text at 1.45
   leading + its 20px margin). The sidebar starts level with the CARD, not
   with the breadcrumb above it, so the two column tops line up on load.
   🔑 One token, used by the offset AND the sticky top, so they cannot drift
   apart -- a mismatch here shows as the sidebar jumping on first scroll. */
.fko-doc-shell{--fko-crumb-h:39px}
.fko-doc-sidebar{position:sticky;top:24px;margin-top:var(--fko-crumb-h);max-height:calc(100vh - 48px);overflow-y:auto;overscroll-behavior:contain;padding:22px 18px;border:1px solid #d8e1ec;border-radius:14px;background:#fff;box-shadow:0 10px 32px rgba(3,26,55,.055)}
.fko-doc-sidebar-group{margin-bottom:4px}
.fko-doc-sidebar-cat{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;color:var(--fko-text);font-weight:800;font-size:14px;line-height:1.3}
.fko-doc-sidebar-cat:hover{background:var(--fko-soft)}
.fko-doc-sidebar-group.is-open>.fko-doc-sidebar-cat{background:var(--fko-navy);color:#fff}
.fko-doc-sidebar-count{font-style:normal;font-size:11px;font-weight:800;color:var(--fko-muted);background:var(--fko-soft);border-radius:20px;padding:2px 8px;min-width:24px;text-align:center}
.fko-doc-sidebar-group.is-open>.fko-doc-sidebar-cat .fko-doc-sidebar-count{background:rgba(255,255,255,.17);color:#fff}
.fko-doc-sidebar-list{list-style:none;margin:4px 0 10px;padding:0 0 0 12px;border-left:2px solid var(--fko-line)}
.fko-doc-sidebar-list li{margin:0}
.fko-doc-sidebar-list a{display:block;padding:7px 10px;border-radius:7px;color:var(--fko-muted);font-size:13.5px;line-height:1.45}
.fko-doc-sidebar-list a:hover{color:var(--fko-text);background:var(--fko-soft)}
/* The current article is marked by WEIGHT AND A RULE, not colour alone --
   colour alone fails for a reader who cannot distinguish it. */
/* The orange RULE would merge into the orange PILL and read as one shape,
   losing the indent that marks this as a child of the category. The rule
   goes transparent here and the fill carries the state instead. */
.fko-doc-sidebar-list li.is-current{margin-left:-14px;padding-left:12px;border-left:2px solid transparent}
/* Filled pill, matching the current CATEGORY -- one step lighter so the
   hierarchy still reads (category is the parent of the article). */
/* Brand orange with WHITE text (user decision 2026-08-22, after seeing both).
   ⚠ Measured 3.13:1, under the 4.5:1 AA bar for text this size -- an accepted
   trade for the brand look, not an oversight. Weight 800 and the large hit
   area carry legibility; if this is ever revisited, navy text on the same
   orange is 5.46:1 and needs no colour change. */
.fko-doc-sidebar-list li.is-current>a{background:var(--fko-orange);color:#fff;font-weight:800;border-radius:7px}
.fko-doc-sidebar-list li.is-current>a:hover{background:var(--fko-orange2);color:#fff}

/* ---- Breadcrumb -------------------------------------------------------- */
.fko-doc-crumbs{margin:0 0 20px}
.fko-doc-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;font-size:13px}
.fko-doc-crumbs li{display:flex;align-items:center;gap:8px;color:var(--fko-muted)}
.fko-doc-crumbs li+li:before{content:"/";color:#a9b8cc}
.fko-doc-crumbs a{color:var(--fko-muted);font-weight:650}
.fko-doc-crumbs a:hover{color:var(--fko-orange)}
.fko-doc-crumbs [aria-current="page"]{color:var(--fko-text);font-weight:800}

/* ---- Share ------------------------------------------------------------- */
.fko-doc-share{margin-top:38px;padding-top:24px;border-top:1px solid var(--fko-line)}
.fko-doc-share-title{font-size:13px;text-transform:uppercase;letter-spacing:.11em;color:var(--fko-muted);margin:0 0 12px;font-weight:900}
.fko-doc-share-links{display:flex;flex-wrap:wrap;gap:10px}
.fko-doc-share-link{display:inline-flex;align-items:center;padding:8px 15px;border:1px solid var(--fko-line);border-radius:7px;font-size:13px;font-weight:750;color:var(--fko-text);background:#fff}
.fko-doc-share-link:hover{border-color:var(--fko-orange);color:var(--fko-orange)}
.fko-doc-share-link:focus-visible,.fko-doc-sidebar-cat:focus-visible,.fko-doc-sidebar-list a:focus-visible{outline:2px solid var(--fko-orange);outline-offset:2px}

@media(max-width:1180px){
  /* The sidebar is the first thing to go: the TOC is about the page you are
     ON, the sidebar about pages you are not. On a narrow screen the former wins. */
  .fko-doc-shell{grid-template-columns:minmax(0,1fr)}
  .fko-doc-sidebar{display:none}
}
@media(max-width:980px){
  .fko-doc-layout.has-toc{grid-template-columns:minmax(0,1fr)}
}

/* ---- Sections nested under the current article in the sidebar ----------- */
.fko-doc-sidebar-toc{list-style:none;margin:4px 0 8px;padding:0 0 0 14px;border-left:1px solid var(--fko-line)}
.fko-doc-sidebar-toc li{margin:0}
.fko-doc-sidebar-toc a{display:block;padding:7px 10px;border-radius:7px;color:var(--fko-muted);font-size:13.5px;line-height:1.45}
.fko-doc-sidebar-toc a:hover{color:var(--fko-orange);background:var(--fko-soft)}
.fko-doc-sidebar-toc a:focus-visible{outline:2px solid var(--fko-orange);outline-offset:2px}

/* ---- Inline TOC: the phone/tablet fallback ------------------------------
   Hidden while the sidebar carries the TOC. Below 1180px the sidebar is
   hidden, so WITHOUT this a narrow reader would have no section nav at all. */
.fko-doc-toc-inline{display:none}
@media(max-width:1180px){
  .fko-doc-toc-inline{display:block;margin:0 0 28px;padding:18px 20px;border:1px solid #d8e1ec;border-radius:12px;background:#fff;box-shadow:0 10px 32px rgba(3,26,55,.055)}
  .fko-doc-toc-inline .fko-doc-toc-title{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--fko-muted);font-weight:900;margin-bottom:10px}
  .fko-doc-toc-inline a{display:block;padding:6px 0;color:var(--fko-text);font-size:14px;font-weight:650;border-bottom:1px solid var(--fko-soft)}
  .fko-doc-toc-inline a:last-child{border-bottom:0}
  .fko-doc-toc-inline a:hover{color:var(--fko-orange)}
}

/* ---- position:sticky needs a scrollable ROOT ---------------------------
   🔴 THE BUG, found 2026-08-22: `overflow-x:hidden !important` is set on both
   html and body for .flowkeyops-landing (to kill horizontal scrollbars on the
   marketing pages). Any overflow other than `visible` makes that element a
   scroll container, which SILENTLY disables position:sticky in every
   descendant -- no error, no warning, the element simply scrolls away.
   The sidebar had every correct sticky property and still did not stick.

   ⚠ Scoped to the DOCS page class only. Lifting it globally would restore the
   horizontal scrollbars that rule exists to prevent on the landing pages.
   🔑 `overflow-x:clip` gives the same visual result WITHOUT creating a scroll
   container, so sticky keeps working -- that is the whole reason clip exists. */
html:has(body.flowkeyops-public-page),body.flowkeyops-public-page{overflow-x:clip!important}
/* Safari < 16 has no overflow-x:clip and would keep `hidden`, so sticky would
   stay broken there. `visible` also leaves sticky working; the docs shell is
   width-constrained by .fko-commerce-wrap, so it cannot overflow sideways. */
@supports not (overflow-x:clip){
  html:has(body.flowkeyops-public-page),body.flowkeyops-public-page{overflow-x:visible!important}
}
