/* Opt-in plans and Account billing. Native visibility and gates stay local. */
/* Native legacy grid/flex rules override the browser's hidden default. */
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-shell * { box-sizing: border-box; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header h1 { max-width: none; color: #142b33; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-card { justify-content: flex-start; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-heading { display: grid; gap: 4px; min-height: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-feature-list { list-style: disc; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-feature-list li { display: list-item; position: static; padding: 0; margin: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-feature-list li::before { content: none; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-feature-list li::marker { color: #0b7a70; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-action { margin: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-card > .pricing-plan-action:not(.pricing-demo-action) { margin-top: auto; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-shell, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel) [hidden],
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel[hidden],
body[data-flowstack-interface][data-flowstack-plan-experience] .fs-plans-return[hidden] { display: none !important; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-shell {
  box-sizing: border-box; width: min(100%, 1240px); padding: 24px; margin: 0 auto;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px; line-height: 1.45; color: #142b33;
}
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0; padding: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav .auth-brand { display: flex; gap: 12px; align-items: center; text-decoration: none; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav .auth-brand img { width: 40px; height: 40px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav .auth-brand p { margin: 0; font-size: 20px; font-weight: 800; line-height: 1.2; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav .auth-brand span { font-size: 12px; line-height: 1.2; letter-spacing: .08em; font-weight: 800; text-transform: uppercase; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 12px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header { display: grid; gap: 10px; padding: 28px 0 20px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header h1 { margin: 0; font-size: 32px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header .page-lede { margin: 0; max-width: 80ch; font-size: 16px; line-height: 1.45; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr) minmax(0, .9fr); gap: 16px; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-plan-card, .pricing-safety-note, .fs-plans-return) { box-sizing: border-box; display: flex; flex-direction: column; gap: 12px; min-width: 0; margin: 0; padding: 20px; border: 1px solid #d7e2e7; border-radius: 12px; background: #fff; box-shadow: 0 2px 8px rgb(20 43 51 / 5%); }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-featured { border-top: 4px solid #0b7a70; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-plan-card, .pricing-safety-note, .fs-plans-return) :is(h2, h3, p) { margin: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-plan-card, .pricing-safety-note, .fs-plans-return) h2 { font-size: 20px; line-height: 1.25; font-weight: 800; }
body[data-flowstack-interface][data-flowstack-plan-experience] .eyebrow { margin: 0; color: #0b7a70; font-size: 12px; font-weight: 800; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; font-size: 28px; line-height: 1.25; font-weight: 800; color: #142b33; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-price span { font-size: 14px; font-weight: 500; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-note, .pricing-feature-list, .pricing-process-list, .pricing-terms-note) { font-size: 14px; line-height: 1.45; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-note { color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-feature-list { margin: 0; padding: 0 0 0 20px; display: grid; gap: 8px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-cadence-grid { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: auto; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-cadence-option { display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 14px; border: 1px solid #d7e2e7; border-radius: 8px; background: #f4f8f8; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-cadence-option h3 { font-size: 18px; font-weight: 800; line-height: 1.25; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-cadence-option p:not(.eyebrow) { font-size: 14px; line-height: 1.45; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-safety-note { margin-top: 20px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-process-list { display: grid; gap: 8px; margin: 0; padding-left: 22px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-terms-note { padding-top: 12px; border-top: 1px solid #d7e2e7; }
body[data-flowstack-interface][data-flowstack-plan-experience] .fs-plans-return { margin-bottom: 20px; border-left: 4px solid #0b7a70; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel { display: grid; gap: 12px; min-width: 0; padding: 20px; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body[data-flowstack-interface][data-flowstack-plan-experience] .fs-billing-heading { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
body[data-flowstack-interface][data-flowstack-plan-experience] .fs-billing-heading h2 { margin: 4px 0 0; font-size: 20px; font-weight: 800; line-height: 1.25; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel > p { margin: 0; font-size: 14px; line-height: 1.45; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel > :is(.billing-summary-grid, .plan-billing-rows) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel > :is(.billing-summary-grid, .plan-billing-rows) > :is(div, p) { display: grid; align-content: start; gap: 4px; margin: 0; padding: 12px 14px; min-width: 0; min-height: 86px; box-sizing: border-box; border: 1px solid #d7e2e7; border-radius: 8px; background: #fff; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(dt, .plan-billing-label) { margin: 0; font-size: 12px; line-height: 1.2; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(dd, .plan-billing-row strong) { margin: 0; font-size: 16px; line-height: 1.25; font-weight: 800; color: #142b33; overflow-wrap: anywhere; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(.billing-summary-grid p, .plan-billing-row span:not(.plan-billing-label)) { margin: 0; font-size: 14px; line-height: 1.45; color: #657782; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel > :is(.billing-actions, .plan-billing-actions) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-shell .primary-action, .pricing-shell .secondary-action, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel .billing-actions > *, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel .plan-billing-actions > *, .billing-addon-card button) { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 0; min-height: 44px; padding: 10px 14px; border: 1px solid #b8c9d0; border-radius: 8px; font: inherit; font-size: 14px; font-weight: 800; line-height: 1.25; text-align: center; text-decoration: none; white-space: normal; overflow-wrap: anywhere; background: #fff; color: #142b33; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-shell, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel) .primary-action { background: #14373f; border-color: #14373f; color: #fff; }
body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-plan-action { width: 100%; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(button:disabled, [aria-disabled="true"]) { opacity: .6; cursor: not-allowed; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-shell, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel) :is(a, button):focus-visible { outline: 3px solid #0b7a70; outline-offset: 3px; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(.billing-addon-list, .billing-addons-list) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .billing-addon-card { display: grid; align-content: start; gap: 8px; min-width: 0; padding: 14px; border: 1px solid #d7e2e7; border-radius: 8px; }
body[data-flowstack-interface][data-flowstack-plan-experience] .billing-addon-card :is(strong, h4) { font-size: 16px; line-height: 1.25; font-weight: 800; }
body[data-flowstack-interface][data-flowstack-plan-experience] .billing-addon-card p { margin: 0; font-size: 14px; line-height: 1.45; }
body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel [aria-live] { font-size: 14px; line-height: 1.45; }
@media (max-width: 980px) {
  body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-grid { grid-template-columns: 1fr; }
  body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav { flex-wrap: wrap; }
  body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-nav-actions { justify-content: flex-start; }
}
@media (max-width: 560px) {
  body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-shell { padding: 16px; }
  body[data-flowstack-interface][data-flowstack-plan-experience] .pricing-header h1 { font-size: 28px; }
  body[data-flowstack-interface][data-flowstack-plan-experience] :is(.pricing-plan-card, .pricing-safety-note, .fs-plans-return, :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel) { padding: 16px; }
  body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel > :is(.billing-actions, .plan-billing-actions, .billing-summary-grid, .plan-billing-rows),
  body[data-flowstack-interface][data-flowstack-plan-experience] :is(#planBillingCard, #planBillingPlaceholderCard).billing-panel :is(.billing-addon-list, .billing-addons-list) { grid-template-columns: 1fr; }
}
