/* free-shipping-widget.css */
:root {
    --fsw-main: #C8A177;
    --fsw-main-20: #EAD6C0;
    --fsw-text: #24282C;
    --fsw-text-10: #ECECEC;
    --fsw-bg: #ffffff;
  }
  
  #free-ship-widget {
    margin-top: 24px;
    margin-bottom: 48px;
  }
  
  .fsw-card {
    background: transparent;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
  
  #free-ship-widget.cr-card {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
  
  .fsw-msg {
    padding: 18px 20px;
    border-radius: 8px;
    font-size: 16px;
    line-height: 1.4;
    background: var(--fsw-main-20);
    color: var(--fsw-text);
  }
  
  @media (max-width: 640px) {
    .fsw-msg {
      padding: 12px;
      font-size: 14px;
    }
  }
  
  .fsw-track-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    margin-top: 24px;
  }
  
  .fsw-track {
    position: relative;
    width: 100%;
    height: 4px;
    background: var(--fsw-text-10);
    border-radius: 2px;
  }
  
  .fsw-fill {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0%;
    height: 100%;
    border-radius: 2px;
    background: var(--fsw-main);
    transition: width 0.35s ease;
  }
  
  .fsw-knob {
    position: absolute;
    top: -5px;
    left: -6px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--fsw-main);
    transition: left 0.35s ease;
  }
  
  #fsw-badge {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--fsw-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--fsw-main);
    border: none !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
  
  .fsw-th {
    margin-top: 3px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
  }
  
  .fsw-cap {
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    color: var(--fsw-main);
  }
  
  @media (max-width: 640px) {
    .fsw-th {
      font-size: 16px;
    }
  }
  