/* Shared toggle styles (compare floating bar + hosting controls) */
.pricing-calculator__toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: transparent;
    border: none;
    border-radius: 5px;
    color: #FDE0C7;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.2s;
    position: relative;
  }
  
  .pricing-calculator__toggle-group {
    padding: 4px;
    background: #141823;
    border-color: #FDE0C799 !important;
  }
  
  .pricing-calculator__toggle-btn:hover {
    color: #FDE0C7;
  }
  
  .pricing-calculator__toggle-btn--active {
    background: #DE480E;
    color: #FDE0C7;
  }
  
  .pricing-calculator__toggle-btn:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 60%;
    background: rgba(255, 255, 255, 0.1);
  }
  
  /* Compare plan sticky bar: black default, orange on hover + active (scoped to floating bar only) */
  .compare-plan__floating-bar .pricing-calculator__toggle-group .pricing-calculator__toggle-btn {
    background: #000000;
    color: #FDE0C7;
  }
  
  .compare-plan__floating-bar .pricing-calculator__toggle-group .pricing-calculator__toggle-btn:hover,
  .compare-plan__floating-bar .pricing-calculator__toggle-group .pricing-calculator__toggle-btn--active,
  .compare-plan__floating-bar .pricing-calculator__toggle-group .compare-plan__toggle-btn--active {
    background: #DE480E;
    color: #FDE0C7;
  }
  
    /* Compare plan cards - Figma dark theme */
      #compare-pricing-plan .compare-plan-card .pricing-card-icon {
          display: block;
          width: 40px;
          height: 40px;
          flex-shrink: 0;
          object-fit: contain;
      }
    
      #compare-pricing-plan .compare-plan-card .pricing-card-icon svg {
          display: block;
          width: 100%;
          height: 100%;
      }

  /* =======================================================================
     PRICING PAGE: COMPARE PLAN SECTION (from pricing-page.php)
     ======================================================================= */
  
  /* Page & banner overrides */
  .page-template-pricing-page .solutions-banner-section {
      min-height: 70vh;
  }
  
  .pricing-table-section {
      background: #141823 url('https://www.cometbackup.com/wp-content/themes/comet-new/assets/images/Pricing-table-Stars.png') center/cover no-repeat;
  }
  
  /* Compare plan inner container */
  .compare-plan__inner {
      padding: 32px;
      background-color: var(--color-darker-blue);
      /* Gap between plan columns */
      --plan-col-gap: 30px;
      /* Feature column stays 34% */
      --feature-col-width: 34%;
      /* Cloud: 3 plan cols = (64% minus 2 gaps) / 3 */
      --plan-col-width: calc((64% - 2 * var(--plan-col-gap)) / 3);
      --compare-plan-cols: var(--feature-col-width) var(--plan-col-width) var(--plan-col-width) var(--plan-col-width);
  }

  /* Self-hosted: 4 plan cards + table columns (narrow feature col → wider cards) */
  .compare-plan__inner.compare-plan__inner--four-plans {
      --plan-col-gap: 14px;
      --feature-col-width: 22%;
      --plan-col-width: calc((78% - 3 * var(--plan-col-gap)) / 4);
      --compare-plan-cols: var(--feature-col-width) var(--plan-col-width) var(--plan-col-width) var(--plan-col-width) var(--plan-col-width);
  }
  
  .compare-plan__cards-grid {
      display: none;
      grid-template-columns: var(--feature-col-width) repeat(3, var(--plan-col-width));
      column-gap: var(--plan-col-gap);
      align-items: stretch;
  }

  .compare-plan__inner--four-plans .compare-plan__cards-grid {
      grid-template-columns: var(--feature-col-width) repeat(4, var(--plan-col-width));
  }
  
  .compare-plan__cards-spacer,
  .compare-plan__card-col {
      min-width: 0;
  }
  
  /* Compare plan cards - Figma dark theme */
  #compare-pricing-plan .pricing-card .pricing-card-price,
  #compare-pricing-plan .pricing-card .pricing-card-title {
      color: #FDE0C7 !important;
  }

  #compare-pricing-plan .pricing-card .pricing-card-price span {
      font-size: var(--fs-20);
  }
  
  #compare-pricing-plan .compare-plan-card__btn.btn-outline-light {
      color: #FDE0C7 !important;
      border-color: #FDE0C7 !important;
      background: #141823 !important;
  }
  
  #compare-pricing-plan .compare-plan-card__btn {
      font-size: 10px;
      padding: 10px !important;
  }
  
  #compare-pricing-plan .compare-plan-card__btn.btn-outline-light:hover {
      color: #fff !important;
      background: rgba(255, 255, 255, 0.1) !important;
      border-color: rgba(255, 255, 255, 0.6) !important;
      font-size: 10px;
      padding: 10px !important;
  }
  
  /* Compare plan table */
  .compare-plan__table-wrapper {
      -webkit-overflow-scrolling: touch;
      margin: 0 -16px;
  }
  
  .compare-plan__table {
      background: transparent;
      border-color: rgba(255, 255, 255, 0.1) !important;
      border-collapse: separate;
      border-spacing: 0 8px;
      table-layout: fixed;
      width: 100%;
  }
  
  .compare-plan__col--feature {
      width: 36%;
  }
  
  .compare-plan__col--plan {
      width: 21.3333%;
  }

  .compare-plan__inner--four-plans .compare-plan__col--plan {
      width: 19.5%;
  }

  .compare-plan__inner--four-plans .compare-plan__col--feature {
      width: 22%;
  }

  .compare-plan__cell-text {
      display: inline-block;
      max-width: 100%;
      line-height: 1.3;
      white-space: normal;
      word-break: break-word;
      overflow-wrap: break-word;
  }

  /* Override pricing-calculator min-width so feature col stays narrow */
  .compare-plan__inner--four-plans .compare-plan__feature-name {
      min-width: 0 !important;
      max-width: 100%;
      padding: 10px 8px 10px 12px !important;
      font-size: 12px;
      line-height: 1.35;
      white-space: normal;
      word-wrap: break-word;
      overflow-wrap: break-word;
      hyphens: auto;
  }

  .compare-plan__inner--four-plans .compare-plan__cell {
      min-width: 0 !important;
      padding: 10px 6px !important;
      text-align: center;
      vertical-align: middle;
  }

  .compare-plan__inner--four-plans .compare-plan__feature-row td {
      padding: 10px 6px !important;
  }

  .compare-plan__inner--four-plans .compare-plan__cell .compare-plan__cell-text {
      font-size: 12px;
  }

  /* Self-hosted cards: wider columns, wrapped copy, aligned CTAs */
  .compare-plan__inner--four-plans .compare-plan__card-col .compare-plan-card {
      min-width: 0;
      width: 100%;
  }

  .compare-plan__inner--four-plans .compare-plan-card .pricing-card-content,
  .compare-plan__inner--four-plans .compare-plan-card .pricing-card-desc,
  .compare-plan__inner--four-plans .compare-plan-card .pricing-card-desc p {
      white-space: normal;
      word-wrap: break-word;
      overflow-wrap: break-word;
  }

  .compare-plan__inner--four-plans .compare-plan-card .pricing-card-price,
  .compare-plan__inner--four-plans .compare-plan-card .pricing-card-title {
      line-height: 1.2;
  }

  .compare-plan__inner--four-plans .compare-plan-card__btn {
      white-space: normal;
      line-height: 1.25;
      min-height: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
  }
  .compare-plan-cards-swiper .swiper-pagination-bullet{
    background: #FFFFFF;
    opacity: 20%;       
  }
  .compare-plan-cards-swiper .swiper-pagination-bullet-active{
    background: #FFFFFF;
    opacity: 100%;       
  }

  @media (min-width: 768px) and (max-width: 1199px) {
      .compare-plan__inner--four-plans {
          --plan-col-gap: 10px;
          --feature-col-width: 24%;
          --plan-col-width: calc((76% - 3 * var(--plan-col-gap)) / 4);
      }

      .compare-plan__inner--four-plans .compare-plan__col--feature {
          width: 24%;
      }

      .compare-plan__inner--four-plans .compare-plan__col--plan {
          width: 19%;
      }

      .compare-plan__inner--four-plans .compare-plan__feature-name {
          font-size: 11px;
      }

      .compare-plan__inner--four-plans .compare-plan__cell .compare-plan__cell-text {
          font-size: 11px;
      }
  }
  
  .compare-plan__table th,
  .compare-plan__table td {
      border-color: transparent;
      vertical-align: middle;
      color: rgba(255, 255, 255, 0.9);
  }
  
  .compare-plan__feature-name,
  .compare-plan__cell {
      min-width: 0;
  }
  
  .compare-plan__cell {
      text-align: center;
  }
  
  /* Section header row */
  .compare-plan__section-row td{
      padding: 40px 0 0 0 !important;
      background: transparent !important;
  }
  
  .compare-plan__section-label{
      background: #141823 !important;
      padding: 10px !important;
      border: 1px solid #43464F !important;
      color: var(--color-cream) !important;
  }
  
  /* Hide spacer row (we use border-spacing for gaps) */
  .compare-plan__section-spacer {
      display: none !important;
  }
  
  /* Feature rows */
  .compare-plan__feature-row td {
      background: transparent !important;
      padding: 10px 6px !important;
      font-size: 14px;
  }
  
  .compare-plan__feature-row .compare-plan__feature-name {
      padding: 10px 12px 10px 16px !important;
  }
  
  /* Remove bottom border on last row inside each section */
  .compare-plan__feature-row--last td {
      border-bottom: none !important;
  }
  
  .compare-plan__cell .text-white {
      color: #fff !important;
  }
  
  .compare-plan__icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
  }
  
  .compare-plan__badge {
      display: inline-block;
      padding: 4px 8px;
      background: #FDE0C7;
      color: #141823;
      font-size: 11px;
      line-height: 1.2;
      white-space: nowrap;
      flex-shrink: 0;
      vertical-align: middle;
  }

  /* Feature label + badge: stack on narrow feature column */
  .compare-plan__feature-name--has-badge {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 6px 8px;
  }

  .compare-plan__feature-name--has-badge .compare-plan__feature-label {
      min-width: 0;
     
  }

  .compare-plan__feature-name--has-badge .compare-plan__badge {
      margin-left: 0 !important;
      flex: 0 0 auto;
  }
  
  .compare-plan__table-inner {
      border-radius: 10px;
      overflow: hidden;
  }
  
  .compare-plan__table {
      border-radius: 10px;
  }
  
  /* Floating bar inside compare section */
  #compare-pricing-plan {
      position: relative;
      overflow: visible;
  }
  
  .compare-plan-inner {
      background: #141823;
      padding: 32px;
      border: 1px solid #2B3660;
  }
  
  .compare-plan__floating-bar {
      position: sticky;
      top: 150px;
      left: 0;
      right: 0;
      z-index: 100;
      width: auto;
      margin: 24px auto 25px;
      display: none;
      justify-content: center;
      align-items: center;
      padding: 0;
      background: transparent;
  }
  
  .compare-plan__floating-bar.is-visible {
      display: flex;
  }
  
  .compare-plan__floating-bar .pricing-calculator__toggle-group {
      background: #282C37;
      padding: 4px;
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 8px;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  }
  
  .compare-plan__floating-bar .pricing-calculator__toggle-btn {
      font-size: 12px;
      padding: 10px 14px;
  }
  
  /* Mobile cards slider */
  .compare-plan-cards-swiper {
      padding-bottom: 0;
  }
  
  .compare-plan-cards-swiper .swiper-slide {
      height: auto;
  }
  
  /* Tablet + desktop: shared column grid for cards and table */
  @media (min-width: 768px) {
      .compare-plan__inner {
          overflow: hidden;
      }
  
      .compare-plan__cards-grid {
          display: grid;
      }
  
      .compare-plan__table-wrapper {
          margin: 0;
      }
  
      .compare-plan__table-inner {
          min-width: 0 !important;
      }
  
      .compare-plan__card-col .compare-plan-card {
          min-width: 0;
      }
  
      .compare-plan__floating-bar .pricing-calculator__toggle-btn {
          font-size: 13px;
          padding: 10px 20px;
      }
      .compare-plan__feature-row td {
      border-bottom: 1px solid #43464F;
       }
  }
  
  @media (min-width: 768px) and (max-width: 1199px) {
      .compare-plan__inner {
          padding: 20px 16px;
      }
  
      .compare-plan__card-col .compare-plan-card {
          padding: 12px !important;
      }
  
      #compare-pricing-plan .compare-plan-card .pricing-card-title {
          font-size: 1rem !important;
      }
  }
  
  /* Mobile — shared 2-col grid: feature labels | plan card + ticks */
  @media (max-width: 767px) {
      .compare-plan__inner {
          padding: 8px;
          --compare-m-feature: 38%;
          --compare-m-card-h: 296px;
      }

      /* Self-hosted: narrower feature labels → wider card column */
      .compare-plan__inner--four-plans {
          --compare-m-feature: 32%;
      }

      .compare-plan__inner--four-plans .compare-plan__feature-row .compare-plan__feature-name {
          font-size: 11px;
          line-height: 1.4;
          max-width: 100%;
      }

      .compare-plan-mobile-track {
          display: grid;
          grid-template-columns: var(--compare-m-feature) minmax(0, 1fr);
          width: 100%;
          align-items: start;
      }

      .compare-plan-mobile-spacer {
          min-width: 0;
      }

      .compare-plan-mobile-cards {
          min-width: 0;
          overflow: hidden;
      }

      .compare-plan-cards-swiper-wrapper {
          width: 100%;
          margin-bottom: 8px !important;
      }

      .compare-plan-cards-swiper {
          width: 100%;
          overflow: hidden;
      }

      .compare-plan-cards-swiper .swiper-slide {
          width: 100% !important;
          height: auto;
          box-sizing: border-box;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .compare-plan-card {
          width: 100%;
          height: var(--compare-m-card-h);
          min-height: var(--compare-m-card-h);
          padding: 12px !important;
          border-radius: 10px;
          border: 1px solid #43464f;
          background: radial-gradient(100% 100% at 50% 13%, #2b3660 0%, #181c2d 100%) !important;
          box-sizing: border-box;
          overflow: hidden;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-head {
          min-height: 0 !important;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-title {
          font-size: 0.8rem !important;
          line-height: 1.15;
          word-break: normal;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-desc,
      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-desc p {
          font-size: 11px !important;
          line-height: 1.35;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .compare-plan-card__btn {
          font-size: 9px !important;
          padding: 8px 6px !important;
          white-space: normal;
          line-height: 1.2;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-content,
      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-head {
          min-width: 0;
          width: 100%;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-icon {
          width: 28px !important;
          height: 28px !important;
          margin-bottom: 8px !important;
      }

      #compare-pricing-plan .compare-plan-cards-swiper .pricing-card-divider {
          margin: 8px 0 !important;
      }

      .compare-plan__table-inner {
          min-width: 0 !important;
          width: 100%;
      }

      .compare-plan__table {
          width: 100%;
      }

      .compare-plan__table colgroup {
          display: none;
      }

      .compare-plan__table tbody {
          display: block;
      }

      .compare-plan__feature-row {
          display: grid;
          grid-template-columns: var(--compare-m-feature) minmax(0, 1fr);
          width: 100%;
          align-items: center;
      }

      .compare-plan__feature-row .compare-plan__feature-name {
          grid-column: 1;
          grid-row: 1;
          min-width: 0;
          word-wrap: break-word;
          overflow-wrap: break-word;
          white-space: normal;
          line-height: 1.35;
          padding: 10px 8px 10px 12px !important;
          font-size: 12px;
      }

      .compare-plan__feature-row .compare-plan__feature-name--has-badge {
          flex-direction: column;
          align-items: flex-start;
          gap: 6px;
      }

      .compare-plan__feature-row .compare-plan__feature-name--has-badge .compare-plan__badge {
          font-size: 9px !important;
          padding: 3px 7px;
          letter-spacing: 0.03em;
          text-transform: uppercase;
      }

      .compare-plan__feature-row .compare-plan__cell {
          display: none !important;
          grid-column: 2;
          grid-row: 1;
          min-width: 0;
          padding: 10px 8px !important;
          text-align: center;
          align-items: center;
          justify-content: center;
      }

      .compare-plan__table--active-0 .compare-plan__feature-row .compare-plan__cell:nth-child(2),
      .compare-plan__table--active-1 .compare-plan__feature-row .compare-plan__cell:nth-child(3),
      .compare-plan__table--active-2 .compare-plan__feature-row .compare-plan__cell:nth-child(4),
      .compare-plan__table--active-3 .compare-plan__feature-row .compare-plan__cell:nth-child(5) {
          display: flex !important;
      }

      .compare-plan__cell .color-text-primary {
          font-size: 11px;
          line-height: 1.3;
          white-space: normal;
          word-break: normal;
          overflow-wrap: break-word;
      }

      .compare-plan__section-row {
          display: block;
          border:none;
      }

      .compare-plan__section-row td {
          display: block;
          width: 100%;
          padding-top: 10px !important;
          padding-bottom: 10px !important;
      }

      .compare-plan__section-label {
          font-size: 14px;
          white-space: normal;
          word-wrap: break-word;
      }

      .compare-plan__table-wrapper {
          margin: 0;
          overflow-x: visible;
      }

      .compare-plan__floating-bar .pricing-calculator__toggle-btn {
          font-size: 11px;
          padding: 8px 8px;
      }

      .compare-plan-inner {
          padding: 16px;
          border-radius: 8px !important;
      }

      .compare-plan__feature-row td {
          font-size: 12px;
      }

      .compare-plan__section-label {
          font-size: 16px;
      }
  }
  