* {
  --primary-color: #4169e1;
  --secondary-color: #7b98ee;
}

.fdbgp-try-cool-form {
  margin-left: 16px !important;
}

.notice p {
  margin-bottom: 0px !important;
}

.notice button {
  padding: 0px !important;
}


/* nav tab css */
.fdbgp-wrapper h2.nav-tab-wrapper,
.fdbgp-wrapper .tab-content {
  padding: 0 30px;
}

.fdbgp-wrapper .tab-content {
  margin: 25px auto;
}

.fdbgp-wrapper h2.nav-tab-wrapper .nav-tab {
  padding: 10px 15px;
}

.fdbgp-wrapper h2.nav-tab-wrapper .nav-tab-active {
  background-color: #fff;
  border-bottom-color: #fff;
}

/* Settings box header styles */
.fdbgp-settings-box .wrapper-body {
  padding: 10px 20px;
}

.fdbgp-settings-box .wrapper-header {
  padding: 1px 20px;
  background-color: #3f415e;
  border-radius: 5px 5px 0px 0px;
}

.fdbgp-settings-box .wrapper-header h2 {
  color: white;
}

.fdbgp-settings-box .wrapper-header .fdbgp-save-all {
  margin-bottom: 0px;
}

.fdbgp-wrapper {
  margin: 0 0 0 -20px;
  padding: 0;
  box-sizing: border-box;
}

.fdbgp-wrapper * {
  box-sizing: border-box;
  font-family: Inter, Roboto, Helvetica, Arial, sans-serif;
}

body.elementor_page_formsdb,
body.elementor_page_cfkef-entries {
  background-color: #fff;
}

.elementor_page_formsdb #wpbody #wpbody-content {
  margin-top: 80px !important;
  margin-block-start: 80px !important;
}

.elementor_page_formsdb .e-admin-top-bar--active,
.elementor_page_formsdb #e-admin-top-bar-root,
.elementor_page_formsdb #wpfooter {
  display: none !important;
}

.elementor_page_formsdb .notice {
  margin: 2px 20px 20px 0;
}

.fdbgp-wrapper .button {
  padding: 10px 14px;
  background-color: #3f415e;
  border: 1px solid #323348;
  box-shadow: 1px 2px 6px -4px rgba(56, 60, 96, 0.977);
  color: #ffffff;
  font-weight: 500;
  text-decoration: none;
  border-radius: 5px;
  font-size: 14px;
  line-height: 14px;
  align-self: center;
  text-shadow: 1px 1px 1px #323348;

}


.fdbgp-wrapper .button:focus {
  box-shadow: 0 0 2px 2px #323348;
  outline: none;
  border: 1px solid #323348;
  background: #0e1136;
  color: #fff;
  text-shadow: none;
}

.fdbgp-wrapper .button-secondary {
  background: #f9f9f9;
  border: 1px solid #ccc;
  color: #595959;
  box-shadow: 1px 3px 4px -5px rgb(55 55 55 / 42%);
  text-shadow: 1px 1px 1px #ffffff;
}

.fdbgp-wrapper .button:hover {
  box-shadow: 1px 2px 6px -4px rgb(30, 31, 48);
  border: 1px solid #323348;
  background: #0e1136;
  color: #fff;
  text-shadow: none;
}

.wrapper-header .fdbgp-save-all .fdbgp-save-controls .button {
  background-color: #fb5fab;
  border: 1px solid #fd79b9;
  text-shadow: 1px 1px 1px #fc63ad;
}

.wrapper-header .fdbgp-save-all .fdbgp-save-controls .button:hover,
.wrapper-header .fdbgp-save-all .fdbgp-save-controls .button:focus {
  background-color: #e8338a;
  border-color: #ff57a8;
  text-shadow: 1px 1px 1px #f0398d;
}

.wrapper-header .fdbgp-save-all .fdbgp-save-controls .button:focus {
  box-shadow: 0 0 4px 2px #f0cedf;
  outline: none;
}

.fdbgp-wrapper .button-secondary:hover {
  box-shadow: 1px 2px 6px -4px rgb(51, 50, 73);
  background: #f1f1f1;
  border-color: #ccc;
  color: #222;
}

.fdbgp-wrapper .button-secondary:focus svg path {
  fill: #fff !important;
}

/* Header Styles */
.fdbgp-header {
  position: absolute;
  top: 0px;
  left: 0px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #ffffff;
  padding: 10px 30px;
  border-bottom: 1px solid #ddd;
  height: 60px;
  width: calc(100% + 20px);
  margin: 0 0 0 -20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.03);
}

.fdbgp-header-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.fdbgp-header-logo span {
  padding: 1px 4px;
  background-color: #fceef5;
  border-radius: 2px;
  border: 1px solid #dcd0d6;
  align-self: flex-start;
}

.fdbgp-header-logo a[href="?page=formsdb"]:focus {
  box-shadow: unset;
  outline: none;
}

.fdbgp-header-logo img {
  max-height: 32px;
  display: block;
}

.fdbgp-header-logo .button {
  background-color: #fb5fab;
  border: 1px solid #fd79b9;
  text-shadow: 1px 1px 1px #fc63ad;
}

.fdbgp-header-buttons {
  display: flex;
  align-items: center;
  gap: 15px;
}

/* Save All Button Styles */
.fdbgp-save-all {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.fdbgp-title-desc {
  display: inline-block;
  vertical-align: middle;
}

.fdbgp-save-controls {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* Settings Page */
.fdbgp-settings-box {
  margin: 25px 0;
  background: #fff;
  font-family: Inter, Roboto, Helvetica, Arial, sans-serif;
}

td.cool-formkit-table-td.usage-share-data {
  display: flex;
  align-items: start;
  gap: 8px;
}

/* Dashboard tab styles For Entries Page*/
.fdbgp-dashboard-tabs {
  margin-top: 80px;
}

/* dashboard loader effect css */
#fdbgp-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fdbgp-loader-overlay,
.cfkef-loader-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
}

.fdbgp-loader-spinner,
.cfkef-loader-spinner {
  width: 40px;
  height: 40px;
  border: 4px solid #ccc;
  border-top: 4px solid #0073aa;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 10000;
}

p.description {
  display: flex;
}

.revoke-button {
  cursor: pointer;
  color: red;
  padding: 10px;
  border: 1px solid red !important;
  margin: 3px;
  border-radius: 5px;
  background-color: white !important;
}

.cool-formkit-setting-table-con {
  display: flex;
  column-gap: 24px;
}

.elementor_page_formsdb .cool-formkit-setting-table-con .widefat td {
  vertical-align: middle;
}

.cool-formkit-left-side-setting {
  width: 100%;
}

.cool-formkit-left-side-setting table {
  border-radius: 8px;
}


.form-table th {
  width: 40% !important;
}

.fdbgp-promo {
  display: flex;
  gap: 24px;
  box-sizing: border-box;
  font-family: Inter, Roboto, Helvetica, Arial, sans-serif;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.elementor_page_cfkef-entries #screen-meta {
  margin-top: 60px !important;
}

.elementor_page_cfkef-entries #screen-meta-links {
  margin-top: 60px;
}

.elementor_page_cfkef-entries #screen-meta[style="display: block;"]~#screen-meta-links {
  margin-top: 0px;
}

.elementor_page_formsdb #screen-meta-links {
  display: none !important;
}

.elementor_page_cfkef-entries #footer-left,
.elementor_page_cfkef-entries #footer-upgrade {
  display: none;
}

/* Updated CSS for Toggle Switch */
.cfkef-toggle-switch {
  position: relative;
  display: inline-block;
  width: 2.5em;
  height: 1.4em;
  font-size: 16px;
  vertical-align: middle;
  flex-shrink: 0;
}

.cfkef-toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.cfkef-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: #ccc;
  transition: background-color 0.3s;
  border-radius: 999px;
}

.cfkef-slider::before {
  content: "";
  position: absolute;
  height: 1em;
  width: 1em;
  left: 0.2em;
  top: 50%;
  transform: translateY(-50%);
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s;
}

input:checked+.cfkef-slider {
  background-color: #fb5fab;
}

input:checked+.cfkef-slider::before {
  transform: translate(1.1em, -50%);
}

input.cfkef-element-toggle:disabled+a:focus {
  box-shadow: none;
  border: unset;
}

input.cfkef-element-toggle:disabled+a .cfkef-slider {
  background-color: #403a3d1a;
}

input.cfkef-element-toggle:disabled+a .cfkef-slider::before {
  transform: translate(0em, -50%);
}

input.cfkef-element-toggle:disabled {
  opacity: 0;
}

.fdbgp-box .wrapper-header {
  padding: 1px 20px;
  background-color: #3f415e;
  border-radius: 5px 5px 0px 0px;
}

.wrapper-header h2 {
  font-size: 14px;
}

.fdbgp-box .wrapper-header h2,
.fdbgp-box .wrapper-header span {
  color: white;
}

.fdbgp-box .wrapper-header .cfkef-save-all {
  margin-bottom: 0px;
}

.cfkef-form-element-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
  flex-grow: 1;
  overflow: hidden;
}

.cfkef-form-element-info img {
  width: 24px;
  height: 24px;
  object-fit: contain;
  flex-shrink: 0;
}

.cfkef-form-element-info h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  flex-grow: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cfkef-form-element-info>div {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}

.cfkef-form-element-info a:focus {
  box-shadow: unset;
}

.cfkef-form-element-card {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  width: calc(50% - 10px);
  box-shadow: 0px 2px 2px rgb(150 150 150 / 12%);
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  position: relative;
  gap: 10px;
}

.cfkef-form-element-card h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  white-space: initial;
}

.cfkef-form-element-card h4 span {
  font-size: 12px;
  font-style: italic;
  font-weight: normal;
}

.fdbgp-promo p {
  margin-top: 0;
}

.fdbgp-promo .fdbgp-left {
  width: calc(85% - 12px);
}

.fdbgp-promo .fdbgp-right {
  width: calc(33% - 12px);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

a.fdbgp-box.review {
  text-decoration: none;
  background-image: linear-gradient(45deg, #e4f9ff, transparent);
  color: #444;
  gap: 12px;
  font-size: 16px;
  line-height: 1.6em;
  font-style: italic;
  border-color: #cee5ec;
  position: relative;
  transition: 0.4s;
}

a.fdbgp-box.review:hover {
  color: #444;
  transform: scale(1.025);
  border-color: #80d1ea;
}

a.fdbgp-box.review span {
  font-size: 1.2em;
  color: #f16564;
}

a.fdbgp-box.review:before {
  content: '"';
  font-size: 112px;
  position: absolute;
  top: 15px;
  left: -10px;
}

.fdbgp-box .wrapper-body {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: column;
  background-color: white;
  padding: 20px;
  border-radius: 5px;
}

.fdbgp-box .wrapper-body .cfkef-form-element-box {
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

/* Popular Labels */
.cfkef-label-popular {
  font-size: 10px;
  text-transform: uppercase;
  color: #fff;
  background-color: #fb5fab;
  padding: 2px 6px;
  border-radius: 4px;
  position: absolute;
  top: -10px;
  left: 20px;
}

.cfkef-label-popular a {
  text-decoration: none;
  color: white;
}

.cfkef-label-popular:hover {
  background-color: rgb(232, 51, 138);
  text-shadow: rgb(240, 57, 141) 1px 1px 1px;
  border-color: rgb(255, 87, 168);
}

.wrapper-header .cfkef-save-all .cfkef-save-controls .button {
  background-color: #fb5fab;
  border: 1px solid #fd79b9;
  text-shadow: 1px 1px 1px #fc63ad;
}

.wrapper-header .cfkef-save-all .cfkef-save-controls .button:hover,
.wrapper-header .cfkef-save-all .cfkef-save-controls .button:focus {
  background-color: #e8338a;
  border-color: #ff57a8;
  text-shadow: 1px 1px 1px #f0398d;
}

.wrapper-header .cfkef-save-all .cfkef-save-controls .button:focus {
  box-shadow: 0 0 4px 2px #f0cedf;
  outline: none;
}

/* Save All Button Styles */
.cfkef-save-all {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.cfkef-title-desc {
  display: inline-block;
  vertical-align: middle;
}

.cfkef-save-controls {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* Review Request Styles */
.cfkef-review-request {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0px 2px 2px rgb(150 150 150 / 12%);
  margin-top: 20px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cfkef-review-left {
  flex: 1;
}

.cfkef-review-right {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cfkef-review-request h3 {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 600;
}

.cfkef-review-request .cfkef-review-left h3 {
  margin-bottom: 5px;
}

.cfkef-review-request p {
  margin: 0;
}

.cfkef-stars {
  display: flex;
  gap: 5px;
  font-size: 24px;
  color: #ffd700;
}

.fdbgp-box .wrapper-container {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0px 2px 2px rgb(150 150 150 / 12%);
  display: flex;
  flex-direction: column;
  height: fit-content;
  overflow: hidden;
}

.fdbgp-box h3 {
  margin: 0px 0px 18px 0px;
}

.fdbgp-left:first-child .wrapper-body {
  display: block;
}

.fdbgp-right:last-child .fdbgp-box {
  padding: 20px;
}

.fdbgp-content {
  display: flex;
  gap: 25px;
  margin: 25px auto;
  padding: 0px 30px;
  flex-direction: column;
}

/* dashboard loader effect css */
#cfkef-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cfkef-element-toggle {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}


.fdbgp-card .fdbgp-card-wrapper {
  max-width: 500px;
  background: #fff;
  border-radius: 12px;
  padding: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  height: fit-content;
  border: 1px solid #ddd;
}

.fdbgp-card-wrapper.cool-formkit-card {
  background: linear-gradient(130deg, #ffffff, #ffddfe);
  border-color: #bfaac7;
}

li .fdbgp-icon {
  margin-right: 5px;
}

.fdbgp-card a {
  color: inherit;
  text-decoration: none;
}

.fdbgp-card-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.3em;
  margin-bottom: 10px;
  margin-top: 0px;
}

.fdbgp-steps {
  position: relative;
  margin-left: 10px;
}

.fdbgp-step {
  display: flex;
  gap: 16px;
  margin-bottom: 24px;
  position: relative;
}

.fdbgp-step::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 36px;
  height: calc(100% - 36px);
  width: 2px;
  background: #e2e6f0;
}

.fdbgp-step:last-child::before {
  display: none;
}

.fdbgp-step-number {
  min-width: 32px;
  height: 32px;
  background: #e9f0ff;
  color: #2f6df6;
  font-weight: bold;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fdbgp-step-content h3 {
  margin: 0 0 6px;
  font-size: 1.1em
}

.fdbgp-step-content p {
  margin: 0;
  color: #666;
  font-size: 13px;
}

.fdbgp-step-content a {
  display: inline-block;
  margin-top: 6px;
  color: #2f6df6;
  font-size: 14px;
  text-decoration: none;
}

.fdbgp-step-content a:hover {
  text-decoration: underline;
}

.button-groups {
  display: flex;
  justify-content: space-between;
}

.button-groups a {
  text-align: center;
}

.fdbgp-help-box {
  border-radius: 10px;
}

.fdbgp-help-box h4 {
  text-align: center;
  margin: 20px 0px;
  font-size: 13px;
  color: #777;
}

.fdbgp-help-box ul {
  list-style: square;
  padding-left: 16px;
  margin: 0;
}

.fdbgp-help-box li {
  font-size: 14px;
  color: #333;
  cursor: pointer;
}

.fdbgp-help-box a {
  color: #2f6df6;
}


/* Pagination wrapper */
.formsdb-tablenav .tablenav-pages {
  margin: 1em 0;
  display: flex;
  gap: 6px;
  align-items: center;
  font-size: 13px;
}

.formsdb-tablenav .tablenav-pages .page-numbers:focus {
  box-shadow: 0 0 0 2px #3f415e;
}

/* Page numbers (links + span) */
.formsdb-tablenav .tablenav-pages .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border: 1px solid #ccd0d4;
  border-radius: 3px;
  background: #fff;
  color: #3f415e;
  text-decoration: none;
  line-height: 1;
  transition: all 0.2s ease-in-out;
}

/* Hover state */
.formsdb-tablenav .tablenav-pages a.page-numbers:hover {
  background: #f0f6fc;
  border-color: #3f415e;
  color: #3f415e;
}

/* Current page */
.formsdb-tablenav .tablenav-pages .page-numbers.current {
  background: #3f415e;
  border-color: #3f415e;
  color: #fff;
  cursor: default;
  font-weight: 600;
}

/* Next / Prev arrows */
.formsdb-tablenav .tablenav-pages .page-numbers.next,
.formsdb-tablenav .tablenav-pages .page-numbers.prev {
  font-size: 14px;
  padding: 0 10px;
}

/* Disabled links (if you add them later) */
.formsdb-tablenav .tablenav-pages .page-numbers.disabled {
  color: #a7aaad;
  background: #f6f7f7;
  border-color: #dcdcde;
  pointer-events: none;
}


/* End Dashboard tab styles */

@media screen and (max-width: 1500px) {

  .cfkef-form-element-card h4 {
    font-size: 10px;
  }

}

@media (max-width: 600px) {
  .cool-formkit-left-side-setting table {
    display: block;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
  }
}

@media screen and (max-width: 782px) {


  .fdbgp-card {
    width: 400px;
  }

  .cfkef-form-element-card h4 {
    font-size: 16px;
  }

  .cool-formkit-setting-table-con {
    flex-direction: column;
    gap: 24px;
  }

  .cool-formkit-left-side-setting {
    width: 100% !important;
  }

  .fdbgp-header {
    flex-wrap: wrap;
    height: auto;
  }

  .fdbgp-header .fdbgp-header-buttons {
    display: block;
  }

  .fdbgp-wrapper .nav-tab-wrapper {
    margin-top: 35px;
  }

  .elementor_page_cfkef-entries .fdbgp-wrapper .nav-tab-wrapper {
    margin-top: 110px;
  }

  .fdbgp-promo {
    flex-direction: column;
  }

  .fdbgp-promo .fdbgp-left {
    width: 100% !important;
  }

  .fdbgp-promo .fdbgp-right {
    width: 100% !important;
  }

  .elementor_page_formsdb .notice {
    margin: 2px 0px 0px 0;
  }
}