@layer utilities {
    /* checked: variant for checkboxes and radio buttons */
    .checked\:bg-primary:checked {
      background-color: var(--primary);
    }
    .checked\:text-primary-foreground:checked {
      color: var(--primary-foreground);
    }
    
    /* 로딩 스피너 스타일 */
    #marketplace-loading-overlay {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 9999;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    #marketplace-loading-overlay .animate-spin {
      width: 3rem;
      height: 3rem;
      border: 4px solid white;
      border-top-color: transparent;
      border-radius: 50%;
      animation: spin 1s linear infinite;
    }
    
    @keyframes spin {
      to {
        transform: rotate(360deg);
      }
    }

    .bg-white-95 {
      background-color: rgba(255, 255, 255, 0.95);
    }

    .bg-white-85 {
      background-color: rgba(255, 255, 255, 0.85);
    }

    .footer-certification-logos {
      display: flex !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      gap: 12px !important;
    }

    .footer-certification-logo {
      display: block !important;
      height: 74px !important;
      max-height: 74px !important;
      object-fit: contain !important;
    }

    .footer-certification-logo--cash {
      width: auto !important;
    }

    .footer-certification-button {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      height: 74px !important;
      max-height: 74px !important;
      border: 0 !important;
      padding: 0 !important;
      background: transparent !important;
      cursor: pointer !important;
      line-height: 0 !important;
    }

    .footer-certification-button:hover {
      opacity: 0.9;
    }

    .footer-certification-logo--escrow {
      width: 74px !important;
    }

    .wigma-payment-method-grid {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .wigma-payment-method-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      border-width: 1px;
      border-style: solid;
      border-radius: 6px;
      padding: 8px 16px;
      font-size: 14px;
      font-weight: 500;
      line-height: 1.25;
      white-space: nowrap;
      transition-property: color, background-color, border-color, opacity;
      transition-duration: 150ms;
    }

    .wigma-payment-method-button--full {
      width: 100%;
    }

    .wigma-payment-method-button--half {
      width: calc(50% - 4px);
    }

    .wigma-payment-method-button--with-logo {
      justify-content: space-between;
      gap: 10px;
    }

    .wigma-payment-method-label {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .wigma-payment-method-logo {
      display: block;
      max-width: 112px;
      max-height: 34px;
      width: auto;
      height: auto;
      object-fit: contain;
    }
  }
