 @-webkit-keyframes loadingspin {
     100% {
         -webkit-transform: rotate(360deg);
         transform: rotate(360deg);
     }
 }

 @keyframes loadingspin {
     100% {
         -webkit-transform: rotate(360deg);
         transform: rotate(360deg);
     }
 }

 /* ============================================
          BASE WIDGET STYLES
          ============================================ */
 .vanta-widget__cart {
     /* CSS Variables */
     --border-grey: #D3D3D3;
     --text-default: #1B1B1B;
     --bg-grey: #3E3F3F;
     --accent-grey: #D9D9D9;
     --stroke-gray: #A7A7A7;
     --text-white: #fff;
     --bg-primary: #fff;
     --text-gray: #898989;
     --bg-secondary: #F6F6F6;
     --accent-pink: #FF5BD8;
     --logo-pink: #F968D3;

     /* Layout */
     box-sizing: border-box;
     display: flex;
     flex-flow: column nowrap;
     max-width: 452px;
     width: 100%;
     height: auto;
     padding: 16px;
     border-radius: 16px;
     background-color: var(--bg-primary);
 }

 .vanta-widget__cart * {
     box-sizing: border-box;
     font-family: Arial, Helvetica, sans-serif;
 }

 /* ============================================
          HEADER SECTION
          ============================================ */
 .vanta-widget__cart--header {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 16px;
 }

 /* ============================================
          TERMS SELECTOR
          ============================================ */
 .vanta-terms {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 2px;
     border-radius: 10px;
     background-color: var(--bg-secondary);
     margin-bottom: 20px;
     min-height: 40px;
 }

 .vanta-terms .vanta-terms__item {
     cursor: pointer;
     width: calc(100% / 4);
     max-width: 100%;
     flex-grow: 1;
     padding: 0;
     margin: 0;
 }

 .vanta-terms .vanta-terms__item span {
     width: 100%;
     display: flex;
     height: 36px;
     padding: 12px 8px;
     justify-content: center;
     align-items: center;
     color: var(--text-gray);
     font-size: 14px;
     font-style: normal;
     font-weight: 500;
     line-height: 12px;
     text-align: center;
     letter-spacing: -0.14px;
     transition: all .3s ease-in-out;
 }

 .vanta-terms .vanta-terms__item>input {
     display: none;
 }

 .vanta-terms .vanta-terms__item>input:checked+span {
     border-radius: 8px;
     background-color: var(--bg-primary);
     border: 1px solid var(--text-gray);
     color: var(--text-default);
 }

 /* ============================================
          PAYMENT INFO SECTION
          ============================================ */
 .vanta-parts>p {
     display: block;
     margin: 0 0 12px;
     color: var(--text-default);
     text-align: left;
     font-size: 16px;
     font-style: normal;
     font-weight: 400;
     line-height: 20px;
     letter-spacing: -0.16px;
 }

 .vanta-parts .vanta-parts__wr {
     display: flex;
     gap: 0 8px;
     align-items: center;
     justify-content: space-between;
 }

 .vanta-parts .vanta-parts__item {
     width: calc((100% - 24px) / 4);
     position: relative;
     text-align: left;
     padding-top: 6px;
 }

 .vanta-parts .vanta-parts__item.grow-part {
     flex-grow: 1;
 }

 .vanta-parts .vanta-parts__item::before {
     content: '';
     opacity: 0.3;
     display: block;
     width: 100%;
     height: 6px;
     border-radius: 100px;
     background-color: var(--accent-pink);
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
 }

 .vanta-parts .vanta-parts__item:first-of-type::before {
     opacity: 1;
 }

 .vanta-parts .vanta-parts__item>small {
     display: block;
     margin-top: 8px;
     font-size: 14px;
     font-style: normal;
     font-weight: 400;
     line-height: 16px;
     letter-spacing: -0.14px;
     color: var(--text-gray);
 }

 .vanta-parts .vanta-parts__item>span {
     display: block;
     margin-top: 3px;
     font-size: 14px;
     font-style: normal;
     font-weight: 500;
     line-height: 16px;
     letter-spacing: -0.14px;
     color: var(--text-default);
 }

 /* ============================================
          FOOTER & BUTTON
          ============================================ */
 .vanta-widget__cart--footer {
     margin-top: auto;
     padding-top: 20px;
 }

 .vanta-default__btn {
     cursor: pointer;
     height: 44px;
     max-width: 100%;
     width: 100%;
     padding: 12px 16px;
     border-radius: 10px;
     text-align: center;
     border: 1px solid var(--bg-secondary);
     background-color: var(--bg-secondary);
     color: var(--text-default);
     font-size: 16px;
     font-style: normal;
     font-weight: 500;
     line-height: 19px;
     letter-spacing: -0.16px;
     box-shadow: none;
     transition: all .3s ease-in-out;
 }

 .vanta-default__btn:hover,
 .vanta-default__btn:focus,
 .vanta-default__btn:active {
     border-color: var(--text-gray);
 }

 /* ============================================
          STANDALONE BUTTON MODE
          ============================================ */
 .vanta-widget__standalone {
     max-width: 383px;
     width: 100%;
 }

 .vanta-widget__standalone .vanta-btn {
     font-family: Arial, Helvetica, sans-serif;
     border-radius: 12px;
     border: none;
     box-shadow: none;
     text-decoration: none;
     background: #fff;
     border: 1px solid #D3D3D3;
     color: #1B1B1B;
     font-size: 15px;
     font-style: normal;
     font-weight: 600;
     line-height: 16px;
     letter-spacing: 0.6px;
     text-transform: uppercase;
     max-width: 100%;
     width: 100%;
     height: 56px;
     padding: 12px 16px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 6px;
     cursor: pointer;
     transition: opacity .2s ease;
 }

 .vanta-widget__standalone .vanta-btn:hover {
     opacity: 0.9;
 }

 .vanta-widget__standalone .vanta-btn[disabled] {
     cursor: not-allowed;
     opacity: 0.7;
 }

 .vanta-widget__standalone .vanta-btn__pink {
     background: linear-gradient(85deg, rgba(255, 140, 231, 0.30) -11.77%, rgba(217, 200, 255, 0.30) 64.01%, rgba(117, 222, 255, 0.30) 103.18%), #FFF;
 }

 .vanta-widget__standalone .vanta-btn__black {
     background: #1B1B1B;
     color: #fff;
 }

 .vanta-widget__standalone .vanta-btn svg {
    display: inline-block;
    height: 16px;
 }

 /* ============================================
          LOADING SPINNER
          ============================================ */
 .vanta-loadingspinner {
     pointer-events: none;
     display: inline-block;
     width: 15px;
     height: 15px;
     border: 2px solid transparent;
     border-color: var(--text-default);
     border-top-color: transparent;
     border-radius: 50%;
     -webkit-animation: loadingspin 0.8s ease infinite;
     animation: loadingspin 0.8s ease infinite;
 }

 /* ============================================
          THEME MODIFIERS
          ============================================ */

 /* Full Width Modifier */
 .vanta-widget__cart.w-full {
     max-width: 100%;
     width: 100%;
 }

 /* Light Mode */
 .vanta-widget__cart.light-mode {
     background-color: var(--bg-primary);
     border: 1px solid var(--border-grey);
 }

 .vanta-widget__cart.light-mode .vanta-widget__cart--logo>svg>path {
     fill: var(--logo-pink);
 }

 /* Gradient Mode */
 .vanta-widget__cart.gradient-mode {
     --bg-secondary: #FFF;
     background: var(--Clean-gradient, linear-gradient(85deg, rgba(255, 140, 231, 0.30) -11.77%, rgba(217, 200, 255, 0.30) 64.01%, rgba(117, 222, 255, 0.30) 103.18%), #FFF);
 }

 .vanta-widget__cart.gradient-mode .vanta-widget__cart--logo>svg>path {
     fill: var(--text-default);
 }

 /* Dark Mode */
 .vanta-widget__cart.dark-mode {
     background-color: var(--text-default);
     --border-grey: var(--bg-grey);
 }

 .vanta-widget__cart.dark-mode .vanta-widget__cart--logo>svg>path {
     fill: var(--logo-pink);
 }

 .vanta-widget__cart.dark-mode .vanta-terms {
     background-color: transparent;
     border: 1px solid var(--bg-grey);
     border-radius: 10px;
     min-height: 42px;
 }

 .vanta-widget__cart.dark-mode .vanta-terms .vanta-terms__item>input:checked+span {
     border-radius: 8px;
     background-color: var(--bg-grey);
     border: 1px solid var(--bg-grey);
     color: var(--text-white);
 }

 .vanta-widget__cart.dark-mode .vanta-parts>p {
     color: var(--text-white);
 }

 .vanta-widget__cart.dark-mode .vanta-parts .vanta-parts__item>span {
     color: var(--text-white);
 }

 .vanta-widget__cart.dark-mode .vanta-default__btn {
     border: 1px solid var(--bg-grey);
     background-color: var(--bg-grey);
     color: var(--text-white);
 }

 .vanta-widget__cart.dark-mode .vanta-default__btn:hover {
     border-color: var(--text-gray);
     background-color: var(--text-gray);
 }
